:root{
  --bg:#07111f; --surface:#0d1a2b; --surface2:#12243a; --text:#f5f5f2;
  --muted:#aeb9c9; --gold:#f4cf63; --violet:#b481ff; --blue:#7fa9ff;
  --green:#61e2b1; --pink:#ef86c2; --line:rgba(255,255,255,.11);
  --shadow:0 20px 70px rgba(0,0,0,.35);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
*{box-sizing:border-box}
html{background:#030812}
body{margin:0;min-height:100vh;color:var(--text);background:
radial-gradient(circle at 50% -10%,rgba(52,88,140,.23),transparent 40rem),
linear-gradient(180deg,#07111f 0%,#06101c 100%)}
button,input{font:inherit}
button{cursor:pointer}
.app-shell{width:min(100%,760px);min-height:100vh;margin:auto;padding-bottom:92px}
.app-header{display:flex;justify-content:space-between;align-items:center;padding:max(18px,env(safe-area-inset-top)) 20px 16px;position:sticky;top:0;z-index:20;background:rgba(7,17,31,.88);backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}
.brand{display:flex;gap:12px;align-items:center}
.brand-star{color:var(--gold);font-size:1.7rem}
.brand-name{letter-spacing:.28em;font-size:1.08rem}
.brand-tagline{color:var(--gold);font-size:.58rem;letter-spacing:.18em;margin-top:4px}
.icon-btn{width:40px;height:40px;border-radius:50%;border:1px solid var(--line);background:rgba(255,255,255,.04);color:var(--text)}
main{padding:16px}
.hero-card{min-height:430px;border-radius:28px;border:1px solid var(--line);overflow:hidden;position:relative;background:
radial-gradient(circle at 72% 38%,rgba(255,215,110,.28),transparent 8rem),
linear-gradient(160deg,#172c47 0%,#07111f 56%,#03070d 100%);box-shadow:var(--shadow)}
.hero-stars{position:absolute;inset:0;opacity:.45;background-image:radial-gradient(circle,#fff 0 1px,transparent 1.2px),radial-gradient(circle,rgba(255,255,255,.55) 0 1px,transparent 1.1px);background-size:51px 51px,79px 79px;background-position:0 0,24px 13px}
.hero-glow{position:absolute;inset:0;background:linear-gradient(180deg,transparent 10%,rgba(0,0,0,.08) 40%,rgba(0,0,0,.85) 100%)}
.hero-copy{position:absolute;z-index:3;left:24px;right:24px;bottom:24px;max-width:520px}
.kicker{font-size:.74rem;letter-spacing:.12em;color:var(--gold);font-weight:800;margin-bottom:10px}
.kicker.violet{color:var(--violet)}
h1{font-family:Georgia,serif;font-size:clamp(2rem,8vw,3.35rem);line-height:1.03;margin:0 0 14px;max-width:10ch}
h2{font-family:Georgia,serif;margin:0 0 6px}
h3{margin:0 0 8px;font-size:1rem}
p{color:var(--muted);line-height:1.55}
.primary{border:0;border-radius:14px;background:linear-gradient(180deg,#ffe48a,#f2c64b);color:#172033;font-weight:900;padding:13px 18px;margin-top:8px;box-shadow:0 8px 24px rgba(244,207,99,.23)}
.moon-art{position:absolute;width:180px;height:180px;border-radius:50%;right:18px;top:52px;background:
radial-gradient(circle at 35% 32%,#fff4c8 0 3%,transparent 4%),
radial-gradient(circle at 48% 58%,rgba(80,65,45,.25) 0 9%,transparent 10%),
radial-gradient(circle at 68% 38%,rgba(80,65,45,.18) 0 7%,transparent 8%),
radial-gradient(circle at 38% 30%,#f6dd9d,#b68b55 58%,#634a34 100%);box-shadow:-25px 18px 45px rgba(255,212,111,.17),inset -28px -18px 50px rgba(0,0,0,.4)}
.audio-card,.daily-brief-card,.quote-card,.content-card,.event-card,.step-card,.answer-card{border:1px solid var(--line);background:linear-gradient(145deg,rgba(17,31,52,.98),rgba(9,18,33,.98));border-radius:22px}
.audio-card{display:grid;grid-template-columns:58px 1fr 48px;gap:14px;align-items:center;padding:16px;margin-top:14px}
.avatar{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--violet);background:radial-gradient(circle at 40% 30%,#734a2b,#1a1828 62%);font-weight:900}
.audio-copy h2{font-size:1.2rem}.audio-copy p{margin:0;font-size:.9rem}
.play-btn{width:46px;height:46px;border-radius:50%;border:1px solid var(--violet);background:rgba(180,129,255,.16);color:var(--violet)}
.quick-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:14px}
.quick-card{min-height:132px;display:grid;grid-template-columns:44px 1fr;gap:12px;text-align:left;padding:16px;border-radius:20px;border:1px solid var(--line);color:var(--text);background:rgba(255,255,255,.03)}
.quick-card p{margin:0;font-size:.88rem}.quick-card.blue h3{color:var(--blue)}.quick-card.green h3{color:var(--green)}.quick-card.gold h3{color:var(--gold)}.quick-card.pink h3{color:var(--pink)}
.quick-icon{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;border:1px solid currentColor}
.blue{color:var(--blue)}.green{color:var(--green)}.gold{color:var(--gold)}.pink{color:var(--pink)}
.quote-card{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;padding:18px;margin-top:14px}
.quote-mark{font-family:Georgia,serif;color:var(--gold);font-size:3rem;line-height:1}.quote-card p{margin:0;color:var(--text)}.signature{color:var(--gold);font-family:cursive;font-size:1.35rem}
.bottom-nav{position:fixed;left:50%;bottom:0;transform:translateX(-50%);width:min(100%,760px);display:grid;grid-template-columns:repeat(5,1fr);padding:8px 8px max(8px,env(safe-area-inset-bottom));background:rgba(4,11,21,.96);backdrop-filter:blur(18px);border-top:1px solid var(--line);z-index:30}
.bottom-nav button{border:0;background:transparent;color:#8d98aa;display:grid;place-items:center;gap:3px;padding:5px 2px}.bottom-nav button span{font-size:1.35rem}.bottom-nav button small{font-size:.62rem}.bottom-nav button.active{color:var(--gold)}
.page-head{padding:8px 2px 18px}.page-head h1{max-width:none;font-size:2.25rem}.page-head p{margin-bottom:0}
.search-input{width:100%;padding:15px 16px;border-radius:16px;border:1px solid var(--line);background:#0b1828;color:var(--text);font-size:1rem;margin-bottom:14px}
.stack{display:grid;gap:12px}
.answer-card,.step-card,.event-card,.content-card{padding:17px}
.answer-card button,.save-btn,.event-link{border:0;background:transparent;color:var(--gold);padding:0;font-weight:800}
.answer-card p,.step-card p,.event-card p{margin-bottom:10px}
.step-number{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:rgba(127,169,255,.13);color:var(--blue);border:1px solid rgba(127,169,255,.35);font-weight:900;margin-bottom:12px}
.event-meta{display:flex;gap:10px;flex-wrap:wrap;color:var(--muted);font-size:.86rem;margin:8px 0 14px}
.empty{padding:24px;text-align:center;color:var(--muted)}
.toast{position:fixed;left:50%;bottom:100px;transform:translateX(-50%);background:#17263a;color:#fff;border:1px solid var(--line);padding:11px 16px;border-radius:999px;box-shadow:var(--shadow);z-index:40}
@media(min-width:700px){.hero-card{min-height:500px}.quick-grid{grid-template-columns:repeat(4,1fr)}.quick-card{grid-template-columns:1fr;min-height:170px}}


/* v0.1.1 — dati astronomici automatici */
.sky-summary{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  margin-bottom:14px;
}
.sky-stat{
  min-height:104px;
  padding:15px;
  border-radius:18px;
  border:1px solid var(--line);
  background:linear-gradient(145deg,rgba(18,36,58,.98),rgba(8,18,33,.98));
  display:flex;
  flex-direction:column;
  justify-content:space-between;
}
.sky-stat span{
  color:var(--muted);
  font-size:.67rem;
  letter-spacing:.1em;
  font-weight:800;
}
.sky-stat strong{
  color:var(--gold);
  font-size:1.45rem;
  font-weight:850;
}
.sky-card h2{
  font-size:1.35rem;
  line-height:1.25;
}
.precision-note{
  font-size:.78rem;
  border-top:1px solid var(--line);
  padding-top:12px;
  margin-top:14px;
}
@media(min-width:700px){
  .sky-summary{grid-template-columns:repeat(4,minmax(0,1fr))}
}


/* v0.1.2 — Home completamente reale */
.daily-brief-card{
  display:grid;
  grid-template-columns:58px 1fr 44px;
  gap:14px;
  align-items:center;
  padding:16px;
  margin-top:14px;
  border:1px solid var(--line);
  background:linear-gradient(145deg,rgba(17,31,52,.98),rgba(9,18,33,.98));
  border-radius:22px;
}
.daily-brief-icon{
  width:58px;
  height:58px;
  border-radius:50%;
  display:grid;
  place-items:center;
  font-size:1.8rem;
  color:var(--gold);
  border:1px solid rgba(244,207,99,.45);
  background:radial-gradient(circle at 35% 30%,rgba(244,207,99,.22),rgba(18,26,43,.92) 70%);
}
.daily-brief-copy h2{
  font-size:1.16rem;
  margin-bottom:5px;
}
.daily-brief-copy p{
  margin:0;
  font-size:.88rem;
}
.brief-arrow{
  width:42px;
  height:42px;
  border-radius:50%;
  border:1px solid var(--violet);
  background:rgba(180,129,255,.12);
  color:var(--violet);
  font-size:1.25rem;
}

.tonight-card{display:grid;grid-template-columns:34px 52px 1fr;gap:12px;align-items:start;padding:17px;border:1px solid var(--line);background:linear-gradient(145deg,rgba(18,36,58,.98),rgba(7,17,31,.98));border-radius:22px}
.tonight-rank{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:rgba(244,207,99,.12);border:1px solid rgba(244,207,99,.35);color:var(--gold);font-weight:900}
.tonight-symbol{width:50px;height:50px;border-radius:50%;display:grid;place-items:center;font-size:1.65rem;color:var(--gold);background:rgba(244,207,99,.08);border:1px solid var(--line)}
.tonight-copy h2{font-size:1.2rem;line-height:1.25;margin-bottom:8px}.tonight-copy p{margin:8px 0}
.tonight-meta{display:flex;gap:8px;flex-wrap:wrap;color:var(--muted);font-size:.79rem}.tonight-meta span{padding:5px 8px;border-radius:999px;background:rgba(255,255,255,.045);border:1px solid var(--line)}
.visibility-note,.engine-note{font-size:.76rem;color:#8794a7}.engine-note{text-align:center;padding-top:10px}
@media(max-width:430px){.tonight-card{grid-template-columns:30px 1fr}.tonight-symbol{grid-column:1;grid-row:2}.tonight-copy{grid-column:2;grid-row:1/span 2}}


/* v0.1.5 — geolocalizzazione facoltativa */
.location-panel{
  display:grid;
  grid-template-columns:44px 1fr auto;
  gap:12px;
  align-items:center;
  margin-bottom:14px;
  padding:14px;
  border:1px solid rgba(127,169,255,.28);
  border-radius:18px;
  background:linear-gradient(145deg,rgba(17,34,56,.98),rgba(8,18,32,.98));
}
.location-icon{
  width:42px;height:42px;border-radius:50%;
  display:grid;place-items:center;
  color:var(--blue);
  border:1px solid rgba(127,169,255,.4);
  background:rgba(127,169,255,.09);
  font-size:1.25rem;
}
.location-copy{display:flex;flex-direction:column;gap:3px}
.location-copy strong{font-size:.92rem}
.location-copy span{font-size:.76rem;color:var(--muted)}
.location-actions{display:flex;flex-direction:column;align-items:flex-end;gap:6px}
.location-actions button{
  border:0;background:transparent;color:var(--blue);
  font-size:.69rem;font-weight:900;letter-spacing:.04em;
  padding:5px 0;
}
.location-actions .location-reset{color:var(--muted);font-size:.62rem}
@media(max-width:520px){
  .location-panel{grid-template-columns:42px 1fr}
  .location-actions{grid-column:1 / -1;display:grid;grid-template-columns:1fr 1fr;width:100%}
  .location-actions button{
    border:1px solid var(--line);border-radius:12px;
    padding:9px;background:rgba(255,255,255,.025)
  }
}


/* v0.1.6 — Il consiglio di Vito */
.advice-card{
  display:grid;
  grid-template-columns:58px 1fr;
  gap:14px;
  align-items:start;
  padding:17px;
  margin-top:14px;
  border-radius:22px;
  border:1px solid rgba(180,129,255,.28);
  background:
    radial-gradient(circle at 0% 0%,rgba(180,129,255,.12),transparent 13rem),
    linear-gradient(145deg,rgba(19,30,50,.98),rgba(8,17,31,.98));
}
.advice-avatar{
  width:58px;height:58px;border-radius:50%;
  display:grid;place-items:center;
  color:#fff;font-weight:900;
  border:1px solid rgba(180,129,255,.55);
  background:radial-gradient(circle at 35% 30%,#765035,#201a2c 68%);
}
.advice-content h2{font-size:1.2rem;line-height:1.25;margin-bottom:7px}
.advice-content p{margin:0 0 7px;font-size:.9rem}
.text-action{
  border:0;background:transparent;color:var(--violet);
  font-size:.72rem;font-weight:900;padding:6px 0 0;
}
.advice-detail{
  position:relative;
  overflow:hidden;
  padding:26px 22px;
  border-radius:24px;
  border:1px solid rgba(180,129,255,.28);
  background:
    radial-gradient(circle at 100% 0%,rgba(180,129,255,.13),transparent 15rem),
    linear-gradient(145deg,rgba(18,31,52,.98),rgba(8,17,31,.98));
}
.advice-detail-mark{
  position:absolute;right:18px;top:-12px;
  font-family:Georgia,serif;font-size:7rem;
  color:rgba(244,207,99,.10);
}
.advice-detail>p:first-of-type{
  position:relative;
  color:var(--text);
  font-family:Georgia,serif;
  font-size:1.35rem;
  line-height:1.55;
}
.advice-signature{
  color:var(--gold);
  font-family:cursive;
  font-size:1.35rem;
  margin-top:18px;
}
.advice-reason{
  border-top:1px solid var(--line);
  padding-top:14px;
  margin-top:18px;
  font-size:.76rem;
}
.secondary-action{
  width:100%;margin-top:14px;padding:13px;
  border:1px solid var(--line);border-radius:14px;
  background:rgba(255,255,255,.025);color:var(--text);
  font-weight:800;
}


/* v0.1.7 — consiglio stabile e alternativa volontaria */
.advice-actions{
  display:grid;
  grid-template-columns:1fr;
  gap:10px;
  margin-top:14px;
}
.advice-actions .secondary-action{
  margin-top:0;
}


/* v0.1.9 — Timeline eventi astronomici */
.events-preview-card{
  margin-top:14px;
  padding:17px;
  border-radius:22px;
  border:1px solid rgba(97,226,177,.22);
  background:
    radial-gradient(circle at 100% 0%,rgba(97,226,177,.08),transparent 13rem),
    linear-gradient(145deg,rgba(17,32,52,.98),rgba(8,17,31,.98));
}
.events-preview-head{
  display:flex;justify-content:space-between;gap:12px;align-items:start;
  margin-bottom:8px;
}
.events-preview-head h2{font-size:1.22rem}
.events-preview-list{display:grid}
.event-preview-row{
  display:grid;grid-template-columns:38px 1fr auto;gap:11px;align-items:center;
  width:100%;padding:11px 0;border:0;border-top:1px solid var(--line);
  background:transparent;color:var(--text);text-align:left;
}
.event-preview-row:first-child{border-top:0}
.event-preview-icon{font-size:1.35rem}
.event-preview-copy{display:flex;flex-direction:column;gap:3px}
.event-preview-copy strong{font-size:.9rem}
.event-preview-copy small{color:var(--muted);font-size:.72rem}
.event-preview-when{color:var(--gold);font-size:.7rem;white-space:nowrap}
.timeline-filter{
  display:grid;grid-template-columns:repeat(4,1fr);gap:7px;
  margin-bottom:14px;
}
.timeline-filter button{
  border:1px solid var(--line);border-radius:999px;
  background:rgba(255,255,255,.025);color:var(--muted);
  padding:9px 5px;font-size:.67rem;font-weight:850;
}
.timeline-filter button.active{
  color:#172033;background:var(--gold);border-color:var(--gold);
}
.astro-timeline{display:grid;gap:13px}
.astro-event-card{
  display:grid;grid-template-columns:64px 1fr;gap:14px;
  border:1px solid var(--line);border-radius:22px;padding:16px;
  background:linear-gradient(145deg,rgba(18,35,57,.98),rgba(7,17,31,.98));
}
.astro-event-card.important{
  border-color:rgba(244,207,99,.34);
  box-shadow:inset 3px 0 0 rgba(244,207,99,.65);
}
.astro-event-date{
  width:58px;min-height:76px;border-radius:17px;
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  background:rgba(255,255,255,.045);border:1px solid var(--line);
}
.astro-event-date span{font-size:1.35rem}
.astro-event-date strong{font-size:1.2rem;color:var(--gold)}
.astro-event-date small{text-transform:uppercase;color:var(--muted)}
.astro-event-topline{
  display:flex;justify-content:space-between;gap:10px;
  color:var(--green);font-size:.69rem;font-weight:800;text-transform:uppercase;
}
.astro-event-topline em{color:var(--gold);font-style:normal;text-transform:none}
.astro-event-content h2{font-size:1.2rem;margin-top:6px}
.astro-event-content p{margin:7px 0}
.astro-event-label{color:var(--text)!important;font-weight:750;font-size:.85rem}
.event-scope{
  display:inline-block;margin-top:5px;padding:6px 9px;border-radius:999px;
  border:1px solid var(--line);color:var(--muted);font-size:.72rem;
}
.event-vito{
  margin-top:12px;padding:11px;border-radius:14px;
  background:rgba(180,129,255,.07);border:1px solid rgba(180,129,255,.18);
  color:var(--muted);font-size:.82rem;line-height:1.5;
}
.event-vito strong{color:var(--violet)}
.event-source{display:block;margin-top:9px;color:#778497}
@media(max-width:430px){
  .timeline-filter{grid-template-columns:repeat(2,1fr)}
  .timeline-filter button:last-child:nth-child(odd){grid-column:1/-1}
  .astro-event-card{grid-template-columns:52px 1fr;padding:13px;gap:11px}
  .astro-event-date{width:50px}
}


/* v0.2.0 — Lo sapevi? */
.curiosity-card{
  position:relative;
  overflow:hidden;
  display:grid;
  grid-template-columns:48px 1fr;
  gap:14px;
  align-items:start;
  margin-top:14px;
  padding:18px;
  border-radius:22px;
  border:1px solid rgba(97,226,177,.24);
  background:
    radial-gradient(circle at 0% 0%,rgba(97,226,177,.11),transparent 13rem),
    linear-gradient(145deg,rgba(16,34,51,.98),rgba(7,18,30,.98));
}
.curiosity-orbit{
  width:48px;height:48px;border-radius:50%;
  display:grid;place-items:center;
  color:var(--green);font-size:1.4rem;
  border:1px solid rgba(97,226,177,.42);
  background:rgba(97,226,177,.07);
}
.green-text{color:var(--green)}
.curiosity-copy h2{font-size:1.2rem;line-height:1.25;margin-bottom:7px}
.curiosity-copy p{margin:0 0 10px;font-size:.9rem}
.curiosity-footer{
  display:flex;justify-content:space-between;gap:10px;align-items:center;
}
.curiosity-footer span{color:var(--muted);font-size:.7rem}
.green-action{color:var(--green)}
.curiosity-detail{
  position:relative;
  overflow:hidden;
  padding:26px 22px;
  border-radius:24px;
  border:1px solid rgba(97,226,177,.25);
  background:
    radial-gradient(circle at 100% 0%,rgba(97,226,177,.11),transparent 15rem),
    linear-gradient(145deg,rgba(17,34,52,.98),rgba(7,17,30,.98));
}
.curiosity-detail-star{
  position:absolute;right:20px;top:12px;
  color:rgba(97,226,177,.12);
  font-size:5rem;
}
.curiosity-detail>p{
  position:relative;
  font-family:Georgia,serif;
  font-size:1.35rem;
  line-height:1.58;
  color:var(--text);
}
.curiosity-detail-footer{
  display:flex;justify-content:space-between;align-items:center;gap:12px;
  border-top:1px solid var(--line);
  margin-top:20px;padding-top:15px;
}
.curiosity-detail-footer span{color:var(--green);font-size:.76rem;font-weight:800}
@media(max-width:430px){
  .curiosity-detail-footer{align-items:flex-start;flex-direction:column}
}

/* v0.2.1 — Sidereus Knowledge Engine: infrastruttura interna, nessuna modifica visibile */


/* v0.2.2 — Ricerca globale */
.global-search-panel{
  padding:15px;
  border:1px solid var(--line);
  border-radius:20px;
  background:linear-gradient(145deg,rgba(16,31,51,.98),rgba(8,17,31,.98));
  margin-bottom:12px;
}
.global-search-box{
  display:grid;
  grid-template-columns:28px 1fr 34px;
  gap:8px;
  align-items:center;
  border:1px solid rgba(127,169,255,.32);
  border-radius:16px;
  background:#0a1727;
  padding:0 10px;
}
.global-search-box>span{
  color:var(--blue);
  font-size:1.2rem;
}
.global-search-box input{
  width:100%;
  border:0;
  outline:0;
  background:transparent;
  color:var(--text);
  padding:14px 0;
  font-size:1rem;
}
.global-search-box button{
  border:0;
  background:transparent;
  color:var(--muted);
  font-size:1.25rem;
}
.search-suggestions{
  display:flex;
  gap:7px;
  flex-wrap:wrap;
  margin-top:11px;
}
.search-suggestions button{
  border:1px solid var(--line);
  border-radius:999px;
  background:rgba(255,255,255,.025);
  color:var(--muted);
  padding:7px 10px;
  font-size:.72rem;
}
.search-summary{
  color:var(--muted);
  font-size:.8rem;
  padding:4px 2px 10px;
}
.global-search-results{
  display:grid;
  gap:12px;
}
.global-result-card{
  display:grid;
  grid-template-columns:46px 1fr;
  gap:13px;
  padding:16px;
  border:1px solid var(--line);
  border-radius:20px;
  background:linear-gradient(145deg,rgba(17,32,52,.98),rgba(7,17,31,.98));
}
.global-result-icon{
  width:44px;height:44px;border-radius:50%;
  display:grid;place-items:center;
  color:var(--gold);
  border:1px solid var(--line);
  background:rgba(255,255,255,.035);
  font-size:1.2rem;
}
.global-result-topline{
  display:flex;
  justify-content:space-between;
  gap:10px;
  color:var(--green);
  font-size:.68rem;
  font-weight:850;
  text-transform:uppercase;
}
.global-result-topline em{
  color:var(--muted);
  font-style:normal;
  text-transform:none;
}
.global-result-copy h2{
  font-size:1.12rem;
  margin:6px 0;
}
.global-result-copy p{
  margin:0 0 8px;
  font-size:.88rem;
}
.result-tags{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin-bottom:4px;
}
.result-tags span{
  border:1px solid var(--line);
  border-radius:999px;
  padding:4px 7px;
  color:var(--muted);
  font-size:.64rem;
}
.search-highlight{
  animation:searchPulse 2.2s ease;
}
@keyframes searchPulse{
  0%,100%{box-shadow:none}
  30%,70%{box-shadow:0 0 0 3px rgba(244,207,99,.22),0 0 30px rgba(244,207,99,.18)}
}
@media(max-width:430px){
  .global-result-card{grid-template-columns:38px 1fr;padding:13px}
  .global-result-icon{width:36px;height:36px}
}


/* v0.2.4 — Catalogo Sidereus */
.catalog-hero-card,.catalog-section{
  border:1px solid var(--line);
  border-radius:22px;
  background:linear-gradient(145deg,rgba(17,33,53,.98),rgba(7,17,31,.98));
}
.catalog-hero-card{
  padding:22px;
  margin-bottom:13px;
  background:
    radial-gradient(circle at 100% 0%,rgba(127,169,255,.12),transparent 14rem),
    linear-gradient(145deg,rgba(18,36,58,.98),rgba(7,17,31,.98));
}
.catalog-hero-card p{
  margin:0;
  color:var(--text);
  font-family:Georgia,serif;
  font-size:1.22rem;
  line-height:1.55;
}
.catalog-section{
  padding:18px;
  margin-bottom:13px;
}
.catalog-highlights{
  margin:0;
  padding-left:1.2rem;
}
.catalog-highlights li{
  color:var(--muted);
  line-height:1.55;
  margin:8px 0;
}
.observation-section{
  border-color:rgba(244,207,99,.28);
}
.observation-section>p{
  color:var(--text);
  font-size:1.02rem;
}
.catalog-general-tip{
  border-top:1px solid var(--line);
  margin-top:13px;
  padding-top:13px;
  color:var(--muted)!important;
  font-size:.85rem!important;
}
.catalog-linked-card{
  display:grid;
  grid-template-columns:38px 1fr;
  gap:11px;
  align-items:start;
  padding:13px;
  border-radius:15px;
  border:1px solid var(--line);
  background:rgba(255,255,255,.025);
}
.catalog-linked-card>span{
  width:36px;height:36px;border-radius:50%;
  display:grid;place-items:center;
  color:var(--gold);
  border:1px solid var(--line);
}
.catalog-linked-card strong{
  color:var(--text);
}
.catalog-linked-card p{
  margin:5px 0 0;
  font-size:.82rem;
}
.catalog-tags{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
}
.catalog-tags span{
  padding:6px 9px;
  border-radius:999px;
  border:1px solid var(--line);
  color:var(--muted);
  font-size:.72rem;
}


/* v0.2.5 — Accesso diretto al Catalogo */
.catalog-home-card{
  display:grid;
  grid-template-columns:54px 1fr;
  gap:14px;
  align-items:start;
  margin-top:14px;
  padding:18px;
  border-radius:22px;
  border:1px solid rgba(127,169,255,.25);
  background:
    radial-gradient(circle at 0% 0%,rgba(127,169,255,.11),transparent 13rem),
    linear-gradient(145deg,rgba(16,32,52,.98),rgba(7,17,31,.98));
}
.catalog-home-icon{
  width:54px;height:54px;border-radius:50%;
  display:grid;place-items:center;
  font-size:1.45rem;
  color:var(--blue);
  border:1px solid rgba(127,169,255,.42);
  background:rgba(127,169,255,.07);
}
.catalog-home-copy h2{
  font-size:1.2rem;
  line-height:1.25;
  margin-bottom:7px;
}
.catalog-home-copy p{
  margin:0 0 8px;
  font-size:.9rem;
}
.blue-text{color:var(--blue)}
.blue-action{color:var(--blue)}

.catalog-list-section{
  margin-bottom:18px;
}
.catalog-list-heading{
  display:flex;
  justify-content:space-between;
  align-items:end;
  gap:10px;
  margin:0 2px 9px;
}
.catalog-list-heading .kicker{
  margin-bottom:0;
}
.catalog-list-heading span{
  color:var(--muted);
  font-size:.7rem;
}
.catalog-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:10px;
}
.catalog-grid-card{
  width:100%;
  display:grid;
  grid-template-columns:48px 1fr 28px;
  gap:12px;
  align-items:center;
  text-align:left;
  color:var(--text);
  padding:14px;
  border-radius:18px;
  border:1px solid var(--line);
  background:linear-gradient(145deg,rgba(17,33,53,.98),rgba(7,17,31,.98));
}
.catalog-grid-icon{
  width:46px;height:46px;border-radius:50%;
  display:grid;place-items:center;
  font-size:1.35rem;
  border:1px solid var(--line);
  background:rgba(255,255,255,.035);
}
.catalog-grid-copy{
  display:flex;
  flex-direction:column;
  gap:4px;
  min-width:0;
}
.catalog-grid-copy strong{
  font-size:1rem;
}
.catalog-grid-copy small{
  color:var(--muted);
  font-size:.77rem;
  line-height:1.4;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.catalog-grid-arrow{
  color:var(--blue);
  font-size:1.2rem;
}
@media(min-width:700px){
  .catalog-grid{grid-template-columns:repeat(2,1fr)}
}


/* v0.3.0 — Guida personale Sidereus */
.personal-guide-copy{
  max-width:590px;
}
.guide-topline{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  margin-bottom:10px;
}
.guide-topline .kicker{
  margin-bottom:0;
}
.guide-topline>span{
  padding:5px 9px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:999px;
  background:rgba(4,10,19,.28);
  color:#d6deea;
  font-size:.68rem;
  white-space:nowrap;
}
.personal-guide-copy h1{
  max-width:13ch;
}
.personal-guide-copy>p{
  color:#d0d8e5;
  max-width:48rem;
  font-size:1rem;
}
.guide-footer{
  display:flex;
  align-items:center;
  gap:13px;
  flex-wrap:wrap;
  margin-top:10px;
}
.guide-footer .primary{
  margin-top:0;
}
.guide-footer small{
  color:#b8c3d2;
  font-size:.7rem;
  line-height:1.35;
  max-width:17rem;
}
@media(max-width:430px){
  .guide-topline{
    align-items:flex-start;
    flex-direction:column;
    gap:6px;
  }
  .personal-guide-copy h1{
    font-size:2rem;
    max-width:12ch;
  }
  .personal-guide-copy>p{
    font-size:.92rem;
  }
  .guide-footer{
    align-items:flex-start;
    flex-direction:column;
  }
}


/* v0.3.1 — Missione della serata */
.hero-card{
  min-height:680px;
}
.mission-copy{
  max-width:650px;
}
.mission-copy h1{
  max-width:14ch;
}
.mission-copy>p{
  color:#d8dfeb;
  max-width:52rem;
  font-size:1rem;
}
.mission-brief{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:8px;
  margin:16px 0 13px;
}
.mission-item{
  min-height:74px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:7px;
  padding:10px;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.13);
  background:rgba(3,9,17,.48);
  backdrop-filter:blur(8px);
}
.mission-item span,.mission-tools-title,.mission-avoid>span{
  color:#b9c5d5;
  font-size:.58rem;
  letter-spacing:.09em;
  font-weight:850;
}
.mission-item strong{
  color:#fff;
  font-size:.78rem;
  line-height:1.3;
}
.mission-tools{
  padding:12px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:15px;
  background:rgba(3,9,17,.42);
  margin-bottom:10px;
}
.mission-tools-list{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:8px;
  margin-top:8px;
}
.mission-tool{
  display:flex;
  flex-direction:column;
  gap:3px;
  min-width:0;
}
.mission-tool strong{
  color:#fff;
  font-size:.75rem;
}
.mission-tool span{
  color:#b9c5d5;
  font-size:.65rem;
}
.mission-avoid{
  padding:11px 12px;
  border-radius:14px;
  border:1px solid rgba(239,134,194,.22);
  background:rgba(85,18,52,.20);
}
.mission-avoid p{
  margin:5px 0 0;
  color:#f0d9e7;
  font-size:.77rem;
  line-height:1.4;
}
@media(max-width:620px){
  .hero-card{min-height:760px}
  .mission-brief{grid-template-columns:repeat(2,minmax(0,1fr))}
  .mission-item:last-child{grid-column:1 / -1}
}
@media(max-width:430px){
  .hero-card{min-height:850px}
  .mission-copy h1{font-size:2rem}
  .mission-tools-list{grid-template-columns:1fr}
}


/* v0.3.2 — Perché proprio oggi? / Oggi imparerai */
.hero-card{
  min-height:790px;
}
.mission-core{
  display:grid;
  grid-template-columns:1.15fr .85fr;
  gap:10px;
  margin:14px 0;
}
.mission-reason-box,
.mission-learning-box{
  padding:14px;
  border-radius:16px;
  backdrop-filter:blur(8px);
}
.mission-reason-box{
  border:1px solid rgba(244,207,99,.32);
  background:rgba(70,52,10,.27);
}
.mission-learning-box{
  border:1px solid rgba(97,226,177,.30);
  background:rgba(9,66,51,.24);
}
.mission-reason-box>span,
.mission-learning-box>span{
  display:block;
  margin-bottom:7px;
  font-size:.61rem;
  letter-spacing:.09em;
  font-weight:900;
}
.mission-reason-box>span{
  color:var(--gold);
}
.mission-learning-box>span{
  color:var(--green);
}
.mission-reason-box p,
.mission-learning-box p{
  margin:0;
  color:#f1f4f8;
  font-size:.84rem;
  line-height:1.5;
}
@media(max-width:620px){
  .hero-card{min-height:910px}
  .mission-core{grid-template-columns:1fr}
}
@media(max-width:430px){
  .hero-card{min-height:1010px}
  .mission-reason-box p,
  .mission-learning-box p{
    font-size:.8rem;
  }
}


/* v0.3.3 — Bussola e puntatore */
.mission-actions .pointer-action{
  border:1px solid rgba(97,226,177,.45);
  border-radius:999px;
  padding:12px 15px;
  background:rgba(9,66,51,.34);
  color:#d9fff0;
  font-weight:900;
  font-size:.72rem;
}
.mission-actions .pointer-action[hidden]{display:none}

.pointer-panel{
  padding:18px;
  border:1px solid var(--line);
  border-radius:24px;
  background:linear-gradient(145deg,rgba(17,34,54,.98),rgba(7,17,31,.98));
  transition:border-color .25s,box-shadow .25s;
}
.pointer-panel.azimuth-ready{
  border-color:rgba(244,207,99,.55);
}
.pointer-panel.aligned{
  border-color:rgba(97,226,177,.75);
  box-shadow:0 0 0 3px rgba(97,226,177,.13),0 0 32px rgba(97,226,177,.14);
}
.pointer-target-line{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:8px;
}
.pointer-target-line>div,
.pointer-readouts>div{
  padding:10px;
  border:1px solid var(--line);
  border-radius:13px;
  background:rgba(255,255,255,.026);
}
.pointer-target-line span,
.pointer-readouts span{
  display:block;
  color:var(--muted);
  font-size:.57rem;
  font-weight:900;
  letter-spacing:.08em;
  margin-bottom:5px;
}
.pointer-target-line strong,
.pointer-readouts strong{
  color:var(--text);
  font-size:.75rem;
  line-height:1.3;
}
.compass-stage{
  position:relative;
  width:290px;
  height:335px;
  margin:20px auto 10px;
  display:flex;
  align-items:center;
  justify-content:center;
}
.compass-ring{
  position:absolute;
  top:12px;
  width:270px;
  height:270px;
  border-radius:50%;
  border:2px solid rgba(127,169,255,.36);
  background:
    radial-gradient(circle,rgba(127,169,255,.05) 0 4%,transparent 4%),
    repeating-conic-gradient(from 0deg,rgba(255,255,255,.16) 0 1deg,transparent 1deg 10deg),
    radial-gradient(circle,rgba(15,30,49,.96),rgba(4,12,22,.98));
  transition:transform .12s linear;
}
.compass-ring:after{
  content:"";
  position:absolute;
  inset:22px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.08);
}
.compass-ring>span{
  position:absolute;
  z-index:2;
  color:#cbd6e5;
  font-size:.76rem;
  font-weight:900;
}
.compass-ring .north{top:8px;left:50%;transform:translateX(-50%);color:var(--gold)}
.compass-ring .south{bottom:8px;left:50%;transform:translateX(-50%)}
.compass-ring .east{right:9px;top:50%;transform:translateY(-50%)}
.compass-ring .west{left:9px;top:50%;transform:translateY(-50%)}
.target-bearing{
  position:absolute;
  z-index:5;
  left:50%;
  top:50%;
  width:44px;
  height:44px;
  transform-origin:50% 50%;
  display:grid;
  place-items:center;
  border-radius:50%;
  border:1px solid rgba(244,207,99,.55);
  background:rgba(84,66,18,.85);
  box-shadow:0 0 18px rgba(244,207,99,.18);
}
.target-bearing span{font-size:1.3rem}
.phone-arrow{
  position:absolute;
  z-index:8;
  top:112px;
  left:50%;
  transform:translateX(-50%);
  color:var(--blue);
  font-size:2.7rem;
  text-shadow:0 0 18px rgba(127,169,255,.5);
}
.aligned .phone-arrow{
  color:var(--green);
  text-shadow:0 0 22px rgba(97,226,177,.75);
}
.alignment-state{
  position:absolute;
  bottom:4px;
  left:50%;
  transform:translateX(-50%);
  width:90%;
  text-align:center;
  color:var(--muted);
  font-weight:850;
  font-size:.82rem;
}
.aligned .alignment-state{color:var(--green)}
.azimuth-ready .alignment-state{color:var(--gold)}
.pointer-readouts{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:8px;
  margin:8px 0 14px;
}
.pointer-start{
  width:100%;
}
.pointer-start:disabled{
  opacity:.65;
}
.pointer-help{
  margin:11px 0 0;
  text-align:center;
  font-size:.76rem;
}
.pointer-warning{
  margin-top:13px;
  padding:14px;
  border-radius:17px;
  border:1px solid rgba(244,207,99,.24);
  background:rgba(75,55,10,.13);
}
.pointer-warning strong{color:var(--gold)}
.pointer-warning p{margin:6px 0 0;font-size:.78rem}
@media(max-width:430px){
  .pointer-target-line,
  .pointer-readouts{grid-template-columns:1fr}
  .compass-stage{width:270px}
  .compass-ring{width:250px;height:250px}
}


/* v0.3.4 — Puntatore conservativo e modalità numerica */
.pointer-panel.calibrating{
  border-color:rgba(127,169,255,.5);
}
.pointer-panel.calibrating .compass-ring{
  opacity:.55;
  animation:none;
}
.pointer-panel.calibrating .phone-arrow{
  color:var(--blue);
  animation:pointerBreathe 1.4s ease-in-out infinite;
}
.pointer-panel.fallback-mode{
  border-color:rgba(239,134,194,.42);
}
.pointer-panel.fallback-mode .compass-stage{
  opacity:.42;
}
.pointer-panel.fallback-mode .compass-ring,
.pointer-panel.fallback-mode .target-bearing{
  transform:none!important;
}
.pointer-fallback{
  margin-top:13px;
  padding:13px;
  border-radius:15px;
  border:1px solid rgba(239,134,194,.28);
  background:rgba(82,18,52,.2);
}
.pointer-fallback strong{
  color:#f0bfdc;
}
.pointer-fallback p{
  margin:6px 0 0;
  color:#e0cbd8;
  font-size:.78rem;
  line-height:1.45;
}
@keyframes pointerBreathe{
  0%,100%{opacity:.45;transform:translateX(-50%) scale(.94)}
  50%{opacity:1;transform:translateX(-50%) scale(1.05)}
}


/* v0.3.5 — Guida statica per trovare gli astri */
.static-finder{
  display:grid;
  gap:14px;
}
.finder-main{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:10px;
}
.finder-main>div{
  min-height:118px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:6px;
  padding:15px;
  border-radius:18px;
  border:1px solid var(--line);
  background:linear-gradient(145deg,rgba(17,34,54,.98),rgba(7,17,31,.98));
}
.finder-label{
  color:var(--muted);
  font-size:.62rem;
  font-weight:900;
  letter-spacing:.09em;
}
.finder-main strong{
  color:var(--gold);
  font-size:1.35rem;
}
.finder-main small{
  color:var(--muted);
  line-height:1.4;
}
.sky-height-guide{
  padding:18px;
  border-radius:22px;
  border:1px solid rgba(127,169,255,.25);
  background:linear-gradient(180deg,rgba(13,31,52,.98),rgba(4,13,24,.98));
}
.sky-dome{
  position:relative;
  height:330px;
  overflow:hidden;
  border-bottom:3px solid rgba(244,207,99,.45);
  border-radius:50% 50% 0 0 / 100% 100% 0 0;
  background:
    radial-gradient(circle at 30% 20%,rgba(255,255,255,.75) 0 1px,transparent 1.5px),
    radial-gradient(circle at 70% 28%,rgba(255,255,255,.6) 0 1px,transparent 1.5px),
    radial-gradient(circle at 56% 52%,rgba(255,255,255,.55) 0 1px,transparent 1.5px),
    linear-gradient(180deg,#07182d,#0d2943 70%,#1a3346);
}
.sky-dome:before,
.sky-dome:after{
  content:"";
  position:absolute;
  left:0;right:0;
  border-top:1px dashed rgba(255,255,255,.16);
}
.sky-dome:before{top:50%}
.sky-dome:after{top:25%}
.zenith-label,.mid-label,.horizon-label{
  position:absolute;
  left:12px;
  color:#b8c4d3;
  font-size:.64rem;
  font-weight:800;
}
.zenith-label{top:9px}
.mid-label{top:50%;transform:translateY(-50%)}
.horizon-label{bottom:8px}
.object-height-marker{
  position:absolute;
  right:19%;
  transform:translateY(50%);
  display:flex;
  align-items:center;
  gap:7px;
  padding:7px 10px;
  border-radius:999px;
  border:1px solid rgba(244,207,99,.5);
  background:rgba(78,60,13,.86);
  box-shadow:0 0 22px rgba(244,207,99,.17);
}
.object-height-marker span{font-size:1.25rem}
.object-height-marker strong{color:var(--gold)}
.hand-guide,.finder-steps{
  padding:18px;
  border-radius:20px;
  border:1px solid var(--line);
  background:linear-gradient(145deg,rgba(17,33,53,.98),rgba(7,17,31,.98));
}
.hand-guide>p{
  margin-top:5px;
}
.hand-guide-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:9px;
  margin-top:12px;
}
.hand-guide-grid>div{
  display:flex;
  flex-direction:column;
  gap:4px;
  padding:12px;
  border:1px solid var(--line);
  border-radius:14px;
  background:rgba(255,255,255,.025);
}
.hand-guide-grid strong{color:var(--text);font-size:.82rem}
.hand-guide-grid span{color:var(--muted);font-size:.72rem}
.finder-steps ol{
  margin:8px 0 0;
  padding-left:1.25rem;
}
.finder-steps li{
  color:var(--muted);
  line-height:1.55;
  margin:8px 0;
}
.finder-steps strong{color:var(--text)}
@media(max-width:620px){
  .finder-main{grid-template-columns:1fr}
  .hand-guide-grid{grid-template-columns:1fr}
  .sky-dome{height:285px}
}

.vito-sky-card{margin-top:14px;padding:19px;border-radius:22px;border:1px solid rgba(180,129,255,.28);background:radial-gradient(circle at 100% 0%,rgba(180,129,255,.12),transparent 15rem),linear-gradient(145deg,rgba(20,31,52,.98),rgba(8,17,31,.98))}
.vito-sky-head{display:grid;grid-template-columns:52px 1fr;gap:13px;align-items:center}
.vito-sky-avatar{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;color:#fff;font-weight:900;border:1px solid rgba(180,129,255,.5);background:radial-gradient(circle at 35% 30%,#765035,#201a2c 68%)}
.vito-sky-card h2{font-size:1.18rem;line-height:1.3}
.vito-sky-card>p{margin:13px 0 0;color:#d7dfea;font-family:Georgia,serif;font-size:1rem;line-height:1.58}
.vito-sky-closing{margin-top:13px;padding-top:13px;border-top:1px solid var(--line);color:var(--gold);font-size:.84rem;line-height:1.5}


/* v0.4.1 — Home coordinata dal Brain */
.vito-sky-card{
  box-shadow:inset 3px 0 0 rgba(180,129,255,.55);
}


/* v0.4.2 — Brain modulare */
.vito-sky-card{
  position:relative;
}
.vito-sky-card:after{
  content:"Brain v0.4.2";
  position:absolute;
  right:14px;
  bottom:10px;
  color:rgba(255,255,255,.24);
  font-size:.56rem;
  letter-spacing:.08em;
}


/* v0.4.3 — validazione astronomica */
[hidden]{display:none!important}


/* v0.4.4 — obiettivo didattico e strategia */
.vito-sky-card:after{
  content:"Brain v0.4.4";
}
.brain-goal,
.brain-strategy{
  margin-top:13px;
  padding:12px 13px;
  border-radius:15px;
  border:1px solid var(--line);
  background:rgba(255,255,255,.025);
}
.brain-goal{
  border-color:rgba(97,226,177,.26);
  background:rgba(9,66,51,.16);
}
.brain-goal>span,
.brain-strategy>span{
  display:block;
  margin-bottom:6px;
  color:var(--muted);
  font-size:.58rem;
  font-weight:900;
  letter-spacing:.09em;
}
.brain-goal strong{
  color:var(--green);
  font-size:.86rem;
  line-height:1.4;
}
.brain-strategy ol{
  margin:0;
  padding-left:1.15rem;
}
.brain-strategy li{
  margin:5px 0;
  color:#d8dfeb;
  font-size:.78rem;
  line-height:1.4;
}


/* v0.4.5 — Human Observer */
.vito-sky-card:after{content:""}
.bonus-mission-card{
  margin-top:14px;
  padding:16px;
  border-radius:20px;
  border:1px solid rgba(244,207,99,.24);
  background:linear-gradient(145deg,rgba(52,42,13,.42),rgba(8,17,31,.98));
}
.bonus-mission-head{
  display:grid;
  grid-template-columns:48px 1fr;
  gap:12px;
  align-items:center;
}
.bonus-mission-head>span{
  width:46px;height:46px;border-radius:50%;
  display:grid;place-items:center;
  font-size:1.35rem;
  border:1px solid rgba(244,207,99,.35);
  background:rgba(244,207,99,.07);
}
.bonus-mission-card h2{
  font-size:1rem;
  margin:0 0 4px;
}
.bonus-mission-card p{
  margin:0;
  font-size:.8rem;
  line-height:1.45;
}


/* v0.4.6 — finestra rigida di prima serata */
.bonus-mission-card p{
  color:#d8dfeb;
}


/* v0.4.8 — Home non tagliata e missioni realmente guidabili */
main,
#appView,
.view,
.home-view{
  scroll-padding-top:112px;
}

.home-view,
#homeView{
  padding-top:20px;
}

.mission-card{
  margin-top:12px;
}

.mission-card .kicker,
.mission-card > .kicker{
  position:relative;
  z-index:2;
  padding-top:4px;
}

@media(max-width:620px){
  .home-view,
  #homeView{
    padding-top:28px;
  }
  .mission-card{
    margin-top:18px;
  }
}


/* v0.4.11 — stabilizzazione Home */
.mission-card{
  position:relative;
  margin-top:30px !important;
  padding-top:58px !important;
  overflow:hidden;
}

.mission-kicker-fixed{
  position:absolute;
  top:16px;
  left:46px;
  right:24px;
  z-index:8;
  color:var(--gold);
  font-size:.75rem;
  font-weight:900;
  letter-spacing:.11em;
  line-height:1.2;
  text-transform:uppercase;
  white-space:normal;
}

@media(max-width:620px){
  .mission-card{
    margin-top:34px !important;
    padding-top:62px !important;
  }
  .mission-kicker-fixed{
    top:17px;
    left:45px;
    font-size:.72rem;
  }
}


/* v0.4.13 — correzione della vera hero-card */
.hero-card{
  min-height:0 !important;
  overflow:hidden !important;
  display:block !important;
  padding:22px !important;
  background:
    radial-gradient(circle at 14% 14%,rgba(255,255,255,.08) 0 1px,transparent 1.5px),
    radial-gradient(circle at 82% 20%,rgba(255,255,255,.06) 0 1px,transparent 1.5px),
    linear-gradient(160deg,#172c47 0%,#07111f 56%,#03070d 100%) !important;
}

.hero-card .hero-stars{
  position:absolute;
  inset:0;
  opacity:.34;
  pointer-events:none;
}

.hero-card .hero-glow{
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(0,0,0,.04),rgba(0,0,0,.38)) !important;
  pointer-events:none;
}

.hero-card .hero-copy,
.hero-card .mission-copy{
  position:relative !important;
  left:auto !important;
  right:auto !important;
  bottom:auto !important;
  top:auto !important;
  z-index:3 !important;
  max-width:none !important;
  width:100% !important;
}

.hero-card .guide-topline{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:12px !important;
  margin:0 0 14px !important;
  position:relative !important;
  z-index:5 !important;
}

#missionEyebrow{
  display:block !important;
  position:static !important;
  visibility:visible !important;
  opacity:1 !important;
  margin:0 !important;
  padding:0 !important;
  color:var(--gold) !important;
  font-size:.74rem !important;
  line-height:1.25 !important;
  font-weight:900 !important;
  letter-spacing:.11em !important;
  text-transform:uppercase !important;
}

#missionLocation{
  position:static !important;
  flex:0 0 auto;
}

.hero-card .mission-copy h1,
#missionTitle{
  max-width:none !important;
  padding-right:0 !important;
  position:relative !important;
  z-index:4 !important;
}

.mission-kicker-fixed,
.mission-label{
  display:none !important;
}

@media(max-width:620px){
  .hero-card{padding:18px !important}
  .hero-card .guide-topline{align-items:flex-start !important}
  #missionEyebrow{font-size:.69rem !important}
}


/* v0.4.14 — rimozione definitiva disco giallo e orari nella timeline */
.moon-art{
  display:none !important;
  visibility:hidden !important;
  opacity:0 !important;
  width:0 !important;
  height:0 !important;
  background:none !important;
  box-shadow:none !important;
}

.tonight-time{
  min-width:56px;
  height:34px;
  padding:0 8px;
  border-radius:11px;
  display:grid;
  place-items:center;
  background:rgba(244,207,99,.12);
  border:1px solid rgba(244,207,99,.35);
  color:var(--gold);
  font-weight:900;
  font-size:.78rem;
  letter-spacing:.02em;
  font-variant-numeric:tabular-nums;
}

.tonight-rank{
  display:none !important;
}

@media(max-width:620px){
  .tonight-time{
    min-width:54px;
    font-size:.76rem;
  }
}


/* v0.4.17 — correzione minima, base v0.4.14 */
.tonight-time{
  transform:translateY(-4px);
  margin-bottom:10px !important;
}

.tonight-copy{
  padding-top:14px !important;
}

.tonight-copy .kicker{
  margin-bottom:8px !important;
}

@media(max-width:620px){
  .tonight-time{
    transform:translateY(-3px);
    margin-bottom:8px !important;
  }

  .tonight-copy{
    padding-top:13px !important;
  }
}


/* v0.4.17 */
.tonight-copy,
.guide-card__content,
.object-card__content,
.tonight-content{
  margin-top:16px !important;
  padding-top:16px !important;
}

/* v0.5.0 — guida operativa della missione */
.mission-live-card{
  padding:18px;
  border:1px solid rgba(180,129,255,.35);
  border-radius:26px;
  background:
    radial-gradient(circle at 100% 0%,rgba(180,129,255,.12),transparent 18rem),
    linear-gradient(160deg,rgba(19,34,56,.98),rgba(8,17,31,.99));
  box-shadow:var(--shadow);
}
.mission-live-summary{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  margin-bottom:14px;
}
.mission-live-summary>div{
  min-width:0;
  padding:13px;
  border:1px solid var(--line);
  border-radius:17px;
  background:rgba(4,12,23,.55);
}
.mission-live-summary span,
.mission-live-purpose span,
.mission-live-result span{
  display:block;
  margin-bottom:7px;
  color:var(--muted);
  font-size:.65rem;
  font-weight:850;
  letter-spacing:.1em;
}
.mission-live-summary strong{
  display:block;
  overflow-wrap:anywhere;
  color:var(--text);
  font-size:.9rem;
  line-height:1.35;
}
.mission-live-purpose,
.mission-live-result{
  padding:15px;
  border:1px solid rgba(97,226,177,.28);
  border-radius:18px;
  background:rgba(4,41,42,.32);
}
.mission-live-purpose p{
  margin:0;
  color:var(--text);
}
.mission-live-steps{
  display:grid;
  gap:11px;
  margin:14px 0;
}
.mission-live-step{
  display:grid;
  grid-template-columns:42px minmax(0,1fr);
  gap:12px;
  align-items:start;
  padding:14px;
  border:1px solid var(--line);
  border-radius:18px;
  background:rgba(255,255,255,.025);
}
.mission-live-step.is-done{
  border-color:rgba(97,226,177,.4);
  background:rgba(97,226,177,.06);
}
.mission-live-number{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border:1px solid rgba(127,169,255,.45);
  border-radius:50%;
  color:var(--blue);
  font-weight:900;
  background:rgba(127,169,255,.08);
}
.mission-live-step.is-done .mission-live-number{
  border-color:rgba(97,226,177,.55);
  color:var(--green);
  background:rgba(97,226,177,.1);
}
.mission-live-step-copy p{
  margin:0 0 10px;
  color:var(--text);
  line-height:1.55;
}
.mission-live-actions{display:grid;gap:10px;margin-top:14px}
.mission-live-actions .secondary-action{margin-top:0}
@media(max-width:520px){
  .mission-live-summary{grid-template-columns:1fr}
}

/* v0.5.0 — WOW layer */
.wow-card{
  position:relative;
  overflow:hidden;
  margin:18px 0 16px;
  padding:24px 22px 20px;
  border:1px solid rgba(244,207,99,.34);
  border-radius:28px;
  background:
    radial-gradient(circle at 86% 18%,rgba(255,215,94,.18),transparent 30%),
    radial-gradient(circle at 15% 82%,rgba(127,169,255,.16),transparent 34%),
    linear-gradient(145deg,rgba(15,37,61,.99),rgba(7,17,31,.99));
  box-shadow:0 18px 54px rgba(0,0,0,.34), inset 0 0 0 1px rgba(255,255,255,.02);
}
.wow-card::after{
  content:"";position:absolute;inset:auto -40px -70px auto;width:190px;height:190px;border:1px solid rgba(244,207,99,.18);border-radius:50%;box-shadow:0 0 45px rgba(244,207,99,.05);pointer-events:none;
}
.wow-stars{position:absolute;inset:0;opacity:.34;background-image:radial-gradient(circle,rgba(255,255,255,.9) 1px,transparent 1.7px);background-size:58px 58px;background-position:8px 12px;pointer-events:none}
.wow-topline{position:relative;display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:20px;z-index:1}
.wow-kicker{color:var(--gold);font-size:.78rem;font-weight:950;letter-spacing:.13em}
.wow-live{padding:7px 10px;border:1px solid rgba(97,226,177,.38);border-radius:999px;color:var(--green);background:rgba(97,226,177,.08);font-size:.62rem;font-weight:900;letter-spacing:.08em;white-space:nowrap}
.wow-icon{position:relative;z-index:1;width:58px;height:58px;display:grid;place-items:center;border-radius:50%;border:1px solid rgba(244,207,99,.32);background:rgba(244,207,99,.08);font-size:1.75rem;margin-bottom:13px}
.wow-card h1{position:relative;z-index:1;margin:0;max-width:95%;font-family:Georgia,"Times New Roman",serif;font-size:clamp(2rem,8vw,3.3rem);line-height:1.01;letter-spacing:-.025em;color:#f7f3ea}
.wow-lead{position:relative;z-index:1;margin:17px 0 15px;color:#c4cbd7;font-size:1.03rem;line-height:1.55;max-width:95%}
.wow-meta{position:relative;z-index:1;display:flex;flex-wrap:wrap;gap:8px;margin:0 0 17px}
.wow-meta span{padding:8px 11px;border:1px solid rgba(255,255,255,.13);border-radius:999px;background:rgba(3,10,20,.36);color:#eef0f4;font-size:.78rem;font-weight:780}
.wow-action{position:relative;z-index:1;width:100%;padding:15px 17px;border:0;border-radius:17px;background:linear-gradient(180deg,#ffe38a,#f3c84e);color:#172033;font-weight:950;font-size:.9rem;box-shadow:0 10px 28px rgba(244,207,99,.19)}
.wow-upcoming{position:relative;z-index:1;display:grid;grid-template-columns:40px 1fr;gap:11px;align-items:center;margin-top:16px;padding:12px 13px;border:1px solid rgba(184,115,255,.3);border-radius:17px;background:rgba(65,33,100,.18)}
.wow-upcoming>span{font-size:1.35rem}.wow-upcoming div{display:grid;gap:2px}.wow-upcoming small{color:var(--violet);font-size:.6rem;font-weight:900;letter-spacing:.1em}.wow-upcoming strong{color:#f3f0f7;font-size:.9rem}.wow-upcoming em{color:var(--gold);font-style:normal;font-size:.75rem;font-weight:800}
.wow-source{position:relative;z-index:1;margin-top:12px;color:#7d8798;font-size:.68rem}
.wow-loading .wow-action{opacity:.45;pointer-events:none}.wow-loading .wow-icon{animation:wowPulse 1.3s ease-in-out infinite}@keyframes wowPulse{50%{transform:scale(1.08);box-shadow:0 0 30px rgba(244,207,99,.18)}}
.wow-type-satellite{border-color:rgba(97,226,177,.42);background:radial-gradient(circle at 83% 16%,rgba(97,226,177,.17),transparent 31%),linear-gradient(145deg,rgba(12,46,55,.98),rgba(7,17,31,.99))}.wow-type-satellite .wow-icon{border-color:rgba(97,226,177,.42);background:rgba(97,226,177,.1)}
.wow-type-event{border-color:rgba(184,115,255,.46);background:radial-gradient(circle at 82% 15%,rgba(184,115,255,.21),transparent 33%),linear-gradient(145deg,rgba(36,29,72,.99),rgba(7,17,31,.99))}.wow-type-event .wow-live{border-color:rgba(184,115,255,.45);color:#cf9bff;background:rgba(184,115,255,.1)}
.daily-brief-card{order:initial}
.hero-card{margin-top:18px}
.wow-detail-hero{display:grid;grid-template-columns:68px 1fr;gap:16px;align-items:center;margin:0 0 16px;padding:18px;border:1px solid rgba(244,207,99,.24);border-radius:22px;background:linear-gradient(145deg,rgba(18,38,60,.98),rgba(8,18,31,.98))}
.wow-detail-icon{width:66px;height:66px;display:grid;place-items:center;border:1px solid rgba(244,207,99,.35);border-radius:50%;font-size:2rem;background:rgba(244,207,99,.07)}
.wow-detail-hero p{margin:0;color:#d7dbe3;line-height:1.55}
.wow-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:14px 0}
.wow-detail-grid>div{padding:14px;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.025)}
.wow-detail-grid span,.wow-detail-note strong{display:block;margin-bottom:7px;color:var(--muted);font-size:.65rem;font-weight:900;letter-spacing:.1em}
.wow-detail-grid strong{display:block;color:var(--text);font-size:.92rem;line-height:1.4}
.wow-detail-note{margin:12px 0;padding:16px;border:1px solid rgba(97,226,177,.25);border-radius:19px;background:rgba(5,43,43,.25)}
.wow-detail-note p{margin:0;color:#d9dde5;line-height:1.58}.wow-detail-note.gold-note{border-color:rgba(244,207,99,.28);background:rgba(62,48,12,.18)}
@media(max-width:520px){.wow-card{padding:21px 18px 18px}.wow-topline{align-items:flex-start}.wow-card h1{max-width:100%}.wow-detail-grid{grid-template-columns:1fr}}

/* v0.10.3 — mappa dei passaggi ISS e Tiangong */
.satellite-map-card{margin:16px 0;padding:18px;border:1px solid rgba(97,226,177,.28);border-radius:22px;background:linear-gradient(160deg,rgba(7,42,48,.54),rgba(6,16,29,.96));overflow:hidden}
.satellite-map-card h2{margin:5px 0 7px;color:#f1f5f3;font-family:Georgia,"Times New Roman",serif;font-size:1.45rem}
.satellite-map-intro{margin:0 0 14px;color:#b7c6cd;font-size:.86rem;line-height:1.5}
.satellite-map-wrap{max-width:520px;margin:0 auto;padding:4px;border-radius:50%;background:rgba(3,10,19,.5)}
.satellite-map{display:block;width:100%;height:auto;overflow:visible}
.satellite-map-sky{stroke:rgba(97,226,177,.42);stroke-width:3}
.satellite-map-altitude,.satellite-map-axis{fill:none;stroke:rgba(206,229,235,.13);stroke-width:1.5;stroke-dasharray:5 8}
.satellite-map-cardinal{fill:#f4cf63;font:900 25px system-ui,sans-serif}
.satellite-map-alt-label{fill:#7f929e;font:700 13px system-ui,sans-serif}
.satellite-map-zenith{fill:#7ca69d;font:800 12px system-ui,sans-serif;letter-spacing:.08em}
.satellite-map-track-shadow{fill:none;stroke:rgba(0,0,0,.55);stroke-width:13;stroke-linecap:round;stroke-linejoin:round}
.satellite-map-track{fill:none;stroke:#61e2b1;stroke-width:7;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 8px rgba(97,226,177,.55))}
.satellite-map-track[marker-end]{marker-end:url(#satelliteArrow)}
.satellite-map marker path{fill:#61e2b1}
.satellite-map-point circle{stroke:#07111f;stroke-width:3}.satellite-map-point text{fill:#07111f;font:950 12px system-ui,sans-serif;pointer-events:none}
.satellite-map-point.start circle{fill:#f4cf63}.satellite-map-point.peak circle{fill:#fff2bd}.satellite-map-point.end circle{fill:#7fa9ff}
.satellite-map-point.peak text{font-size:14px}
.satellite-map-legend{display:grid;gap:8px;margin-top:12px}
.satellite-map-legend>div{display:grid;grid-template-columns:minmax(105px,.8fr) minmax(0,1.2fr);gap:10px;align-items:center;padding:10px 12px;border:1px solid rgba(255,255,255,.08);border-radius:14px;background:rgba(255,255,255,.025)}
.satellite-map-legend span{color:#91a4ad;font-size:.62rem;font-weight:900;letter-spacing:.08em}
.satellite-map-legend strong{color:#edf7f4;font-size:.8rem;line-height:1.35}
.satellite-map-tip{margin:12px 0 0;padding-top:12px;border-top:1px solid rgba(97,226,177,.15);color:#b9c8ce;font-size:.82rem;line-height:1.5}
.satellite-map-tip strong{color:#61e2b1}
@media(max-width:420px){.satellite-map-card{padding:15px}.satellite-map-cardinal{font-size:23px}.satellite-map-legend>div{grid-template-columns:1fr;gap:3px}.satellite-map-legend strong{font-size:.78rem}}


/* ============================================================
   Sidereus v0.6.6 — Home ADESSO
   ============================================================ */

.wow-card{
  margin-top:14px !important;
  padding:26px 22px 22px !important;
  border:1px solid rgba(255,218,110,.52) !important;
  box-shadow:
    0 22px 70px rgba(0,0,0,.46),
    0 0 0 1px rgba(255,220,120,.05) inset,
    0 0 52px rgba(244,207,99,.07) !important;
}

.wow-card h1{
  font-size:clamp(2.2rem,9vw,3.65rem) !important;
  max-width:100% !important;
}

.wow-live{
  font-size:.66rem !important;
  padding:7px 11px !important;
}

.wow-actions-row{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:9px;
  align-items:stretch;
}

.wow-reminder{
  border:1px solid rgba(244,207,99,.4);
  border-radius:17px;
  padding:0 14px;
  background:rgba(244,207,99,.08);
  color:var(--gold);
  font-size:.72rem;
  font-weight:950;
  letter-spacing:.04em;
  white-space:nowrap;
}

.wow-reminder[hidden]{
  display:none !important;
}

.wow-source{
  color:#8e98a7 !important;
  font-size:.67rem !important;
}

.wow-next-strip{
  display:grid;
  grid-template-columns:42px minmax(0,1fr);
  gap:12px;
  align-items:center;
  margin:-2px 0 14px;
  padding:13px 15px;
  border:1px solid rgba(184,115,255,.28);
  border-radius:18px;
  background:linear-gradient(135deg,rgba(74,39,110,.23),rgba(14,26,43,.94));
}

.wow-next-strip[hidden]{display:none !important}
.wow-next-icon{font-size:1.45rem}
.wow-next-strip div{display:grid;gap:2px}
.wow-next-strip small{color:var(--violet);font-size:.61rem;font-weight:900;letter-spacing:.1em}
.wow-next-strip strong{color:#f2eff7;font-size:.94rem}
.wow-next-strip em{color:var(--gold);font-style:normal;font-size:.76rem;font-weight:850}

.daily-brief-compact{
  margin:12px 0 !important;
  min-height:auto !important;
  padding:14px 15px !important;
}

.daily-brief-compact .daily-brief-icon{
  width:44px !important;
  height:44px !important;
  font-size:1.3rem !important;
}

.daily-brief-compact h2{
  font-size:1.1rem !important;
  margin-bottom:2px !important;
}

.daily-brief-compact p{
  font-size:.78rem !important;
  margin:0 !important;
  line-height:1.4 !important;
}

.mission-preview-card{
  margin-top:14px;
  padding:19px;
  border:1px solid rgba(244,207,99,.24);
  border-radius:23px;
  background:linear-gradient(145deg,rgba(18,34,55,.98),rgba(7,17,31,.98));
  box-shadow:0 12px 34px rgba(0,0,0,.25);
}

.mission-preview-card .guide-topline{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  margin-bottom:9px;
}

.mission-preview-card #missionLocation{
  color:#8792a3;
  font-size:.72rem;
}

.mission-preview-card h2{
  margin:0 0 8px;
  font-size:1.55rem;
  line-height:1.12;
}

.mission-preview-card>p{
  margin:0 0 14px;
  font-size:.9rem;
}

.mission-preview-meta{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
  margin-bottom:12px;
}

.mission-preview-meta>div{
  min-width:0;
  padding:10px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:14px;
  background:rgba(255,255,255,.025);
}

.mission-preview-meta span{
  display:block;
  margin-bottom:4px;
  color:#7f8a9b;
  font-size:.56rem;
  font-weight:900;
  letter-spacing:.09em;
}

.mission-preview-meta strong{
  display:block;
  color:#f1f2f5;
  font-size:.78rem;
  line-height:1.25;
  overflow-wrap:anywhere;
}

.mission-preview-actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}

.mission-preview-actions .primary,
.mission-preview-actions .pointer-action{
  margin:0 !important;
}

.mission-preview-card>small{
  display:block;
  margin-top:10px;
  color:#7f8a9b;
  line-height:1.4;
}

.vito-sky-card{
  margin-top:14px !important;
}

.catalog-home-compact{
  padding:15px !important;
  min-height:0 !important;
}

.catalog-home-compact p{
  display:none !important;
}

.anonymous-analytics-note{
  margin:18px 10px 4px;
  color:#718095;
  font-size:12px;
  line-height:1.45;
  text-align:center;
}

/* vecchi elementi della Home non sono più nel template */
.quick-grid,
.quote-card{
  display:none;
}

@media(max-width:520px){
  .wow-actions-row{
    grid-template-columns:1fr;
  }

  .wow-reminder{
    min-height:44px;
  }

  .mission-preview-meta{
    grid-template-columns:1fr 1fr 1fr;
  }

  .mission-preview-card h2{
    font-size:1.42rem;
  }
}


.wow-source-row{
  position:relative;
  z-index:2;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-top:11px;
}

.wow-source-row .wow-source{
  margin-top:0 !important;
}

.wow-location-action{
  flex:0 0 auto;
  border:0;
  background:transparent;
  color:var(--gold);
  font-size:.64rem;
  font-weight:900;
  letter-spacing:.03em;
  padding:5px 0;
}

.wow-location-action.location-active{
  color:#9ca6b5;
}

@media(max-width:520px){
  .wow-source-row{
    align-items:flex-start;
    flex-direction:column;
    gap:4px;
  }
}


/* v0.6.3 — guida evento operativa */
.event-prep-grid > div{align-content:start}
.solar-safety-note{
  border-color:rgba(255,211,96,.48)!important;
  background:linear-gradient(145deg,rgba(76,47,9,.35),rgba(30,20,8,.58))!important;
}
.solar-safety-note strong{color:var(--gold)!important}


/* v0.6.6 — puntatore coerente nella missione compatta */
.mission-preview-actions .pointer-action{
  border:1px solid rgba(97,226,177,.38);
  border-radius:16px;
  padding:12px 15px;
  background:rgba(9,66,51,.24);
  color:#d9fff0;
  font-weight:900;
  font-size:.72rem;
  letter-spacing:.02em;
}
.mission-preview-actions .pointer-action[hidden]{display:none !important;}


/* =========================================================
   v0.7.2 — Sidereus Finder integrato
   ========================================================= */
.finder-live-launch{margin:0 0 16px;padding:18px;border:1px solid rgba(244,207,99,.34);border-radius:22px;background:linear-gradient(145deg,rgba(31,45,61,.98),rgba(9,18,33,.98));box-shadow:var(--shadow)}
.finder-live-launch h2{font-size:1.5rem;margin:5px 0 8px}.finder-live-launch p{margin:0 0 14px}.finder-live-badge{font-size:.68rem;letter-spacing:.12em;font-weight:900;color:var(--green)}
.finder-live-wait{border-color:var(--line)}.finder-live-wait .finder-live-badge{color:var(--muted)}
.finder-launch-button,.mission-finder-button{width:100%;border:0;border-radius:14px;background:linear-gradient(180deg,#ffe48a,#f2c64b);color:#172033;font-weight:900;padding:15px 18px;letter-spacing:.03em}
.finder-live-launch>small{display:block;margin-top:10px;color:var(--muted);text-align:center}.finder-location-warning{display:grid;gap:5px;margin:12px 0;padding:12px;border-radius:14px;border:1px solid rgba(239,134,194,.27);background:rgba(239,134,194,.07)}
.finder-location-warning span{font-size:.82rem;color:var(--muted);line-height:1.45}.finder-location-warning button{justify-self:start;border:0;background:transparent;color:var(--gold);font-weight:900;padding:5px 0}.finder-location-ok{margin:10px 0 14px;color:var(--green);font-size:.83rem;font-weight:800}.mission-finder-button{margin:0 0 14px}

body.finder-open{overflow:hidden;--accent:#F0A020;--good:#4FD1A5;--bad:#D2503A;--ink-dim:#8B93A0}
.sidereus-finder-overlay{position:fixed;inset:0;z-index:1000;background:#05070A;color:#E6DFD2;font-family:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;overscroll-behavior:none}
.sidereus-finder-overlay[hidden]{display:none!important}.sidereus-finder-overlay *{box-sizing:border-box}.sidereus-finder-overlay main{padding:0}
.finder-screen{min-height:100dvh;padding:max(14px,env(safe-area-inset-top)) 14px max(14px,env(safe-area-inset-bottom)) 14px;display:flex;flex-direction:column;gap:16px;background:#05070A}
.finder-screen[hidden]{display:none!important}.finder-prep{overflow:auto}.finder-prep-top{display:flex;justify-content:flex-end}.finder-round-btn{background:transparent;border:1px solid #1B2530;color:#8B93A0;width:42px;height:42px;border-radius:50%;font-size:18px}
.finder-prep-copy{margin:auto 0}.finder-prep-kicker{font-size:.68rem;letter-spacing:.19em;font-weight:800;color:#F0A020}.finder-prep-copy h1{font-family:inherit;font-size:clamp(2rem,10vw,3.6rem);max-width:12ch;margin:10px 0 12px;color:#E6DFD2}.finder-prep-copy p{color:#AAB0B9;max-width:34rem}.finder-prep-instruction{display:grid;gap:12px;margin:22px 0}.finder-prep-instruction>div{display:grid;grid-template-columns:38px 1fr;gap:10px;align-items:start;padding:13px;border:1px solid #1B2530;border-radius:14px;background:#0C1118}.finder-prep-instruction b{font-size:1.25rem}.finder-prep-instruction span{color:#C8CDD5;line-height:1.5}.finder-location-chip{padding:11px 13px;border-radius:12px;background:#0C1118;border:1px solid #1B2530;color:#8B93A0;font-size:.82rem}.finder-prep-actions{display:grid;gap:10px;margin-top:auto}.finder-primary{border:0;border-radius:12px;padding:19px 16px;background:#F0A020;color:#0A0600;font-size:1rem;font-weight:900;letter-spacing:.05em}.finder-ghost{border:1px solid #1B2530;border-radius:12px;padding:15px 14px;background:transparent;color:#AAB0B9;font-weight:700}.finder-hidden-controls{display:none!important}
.sidereus-finder-overlay .msg{margin:0;padding:14px;border-radius:10px;background:rgba(210,80,58,.12);border:1px solid #D2503A;color:#E6DFD2;font-size:14px;line-height:1.5}
.finder-aim{padding-top:max(8px,env(safe-area-inset-top));gap:8px}.finder-topbar{display:grid;grid-template-columns:42px 1fr 42px;align-items:center;gap:8px}.finder-top-target{text-align:center;min-width:0}.finder-top-target strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.95rem}.finder-source{display:flex;justify-content:center;align-items:center;gap:7px;margin-top:4px;font:500 9px/1 ui-monospace,"SF Mono",Menlo,monospace;color:#8B93A0;letter-spacing:.06em}.finder-dot{width:9px;height:9px;border-radius:50%;background:#D2503A}.finder-dot.ok{background:#4FD1A5}
.finder-reticle-wrap{position:relative;display:grid;place-items:center;flex:1 1 auto;min-height:0}.finder-reticle-wrap canvas{width:min(88vw,46dvh);height:min(88vw,46dvh);display:block}.finder-scale-label{position:absolute;bottom:0;right:4px;font:500 10px/1 ui-monospace,"SF Mono",Menlo,monospace;color:#8B93A0;letter-spacing:.08em}
.finder-guide{text-align:center;display:grid;gap:6px}.finder-guide svg{width:62px;height:62px;margin:0 auto;fill:#F0A020}.finder-guide svg.hidden{opacity:0}.sidereus-finder-overlay .instruction{font-size:clamp(28px,9vw,44px);font-weight:800;line-height:1.05;min-height:1.05em}.sidereus-finder-overlay .instruction.lock{color:#4FD1A5}.sidereus-finder-overlay .instruction.init{color:#8B93A0;font-weight:600;font-size:clamp(18px,5.2vw,24px)}.sidereus-finder-overlay .instruction.blocked{color:#D2503A;font-size:clamp(19px,5.6vw,26px)}.finder-detail{font:500 11px/1.3 ui-monospace,"SF Mono",Menlo,monospace;color:#8B93A0;letter-spacing:.02em}.finder-lock-hint{color:#AEB7C1;font-size:.86rem;line-height:1.45}.sidereus-finder-overlay .warning{background:rgba(210,80,58,.14);border:1px solid #D2503A;border-radius:10px;padding:10px 12px;font-size:12.5px;line-height:1.45}.sidereus-finder-overlay .warning.neutral{background:rgba(139,147,160,.10);border-color:#1B2530;color:#8B93A0}
.finder-bottom{display:grid;grid-template-columns:1fr 1fr;gap:10px}.finder-bottom button{padding:15px 10px}.finder-live-target{text-align:center;font:500 10px/1.3 ui-monospace,"SF Mono",Menlo,monospace;color:#6F7782}
.sidereus-finder-overlay .diag{position:fixed;inset:0;z-index:1020;overflow:auto;background:rgba(3,5,8,.98);padding:max(14px,env(safe-area-inset-top)) 14px 24px;font:500 12px/1.5 ui-monospace,"SF Mono",Menlo,monospace}.sidereus-finder-overlay .diag-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.sidereus-finder-overlay .diag-head strong{letter-spacing:.2em;color:#F0A020}.sidereus-finder-overlay #diag-table{width:100%;border-collapse:collapse}.sidereus-finder-overlay #diag-table td{padding:5px 0;border-bottom:1px solid #1B2530;vertical-align:top}.sidereus-finder-overlay #diag-table td:first-child{color:#8B93A0;width:46%;padding-right:10px}.sidereus-finder-overlay #diag-table td:last-child{text-align:right;word-break:break-word}.sidereus-finder-overlay .diag-actions{display:grid;gap:8px;margin-top:16px}.sidereus-finder-overlay #selftest-out{margin-top:14px;white-space:pre-wrap;font-size:11px;color:#8B93A0;border-top:1px solid #1B2530;padding-top:12px}
.sidereus-finder-overlay .sheet{position:fixed;inset:0;z-index:1030;overflow:auto;background:#05070A;padding:max(20px,env(safe-area-inset-top)) 18px 24px;display:flex;flex-direction:column;gap:14px}.sidereus-finder-overlay .sheet h2{font-family:inherit;margin:0;font-size:22px}.sidereus-finder-overlay .sheet p,.sidereus-finder-overlay .sheet li{font-size:14px;line-height:1.6;color:#8B93A0}.sidereus-finder-overlay .sheet ol{margin:0;padding-left:20px;display:grid;gap:10px}.sidereus-finder-overlay .sheet .note{font-size:12px}.sidereus-finder-overlay .calib-live{font:600 14px/1.5 ui-monospace,"SF Mono",Menlo,monospace;background:#0C1118;border-radius:10px;padding:14px;color:#E6DFD2;white-space:pre-wrap}.sidereus-finder-overlay .field-row{display:flex;gap:12px}.sidereus-finder-overlay .field{flex:1;display:flex;flex-direction:column;gap:6px}.sidereus-finder-overlay .field span{font-size:13px;color:#8B93A0}.sidereus-finder-overlay input{width:100%;background:#000;color:#E6DFD2;border:1px solid #1B2530;border-radius:10px;padding:14px 12px;font:600 20px/1 ui-monospace,"SF Mono",Menlo,monospace}.sidereus-finder-overlay .actions{display:flex;gap:10px;margin-top:auto}
@media(max-height:650px){.finder-prep-copy{margin:0}.finder-prep-instruction{margin:10px 0}.finder-prep-instruction>div{padding:9px}.finder-guide svg{width:48px;height:48px}.sidereus-finder-overlay .instruction{font-size:clamp(24px,7vw,34px)}}

/* v0.7.2 — il percorso pubblico non espone i numeri da laboratorio.
   Gli elementi restano nel DOM perché il controller e la diagnostica continuino
   a funzionare senza modificare la logica Finder. */
.sidereus-finder-overlay #src-label,
.sidereus-finder-overlay .finder-detail,
.sidereus-finder-overlay .finder-live-target,
.sidereus-finder-overlay .finder-scale-label{display:none!important}
.finder-source{min-height:9px}

/* v0.7.2 — Finder didattico: distingue presenza geometrica e visibilità. */
.finder-live-present{border-color:rgba(240,160,32,.34)}
.finder-live-present .finder-live-badge{color:var(--gold)}
.finder-solar-block{border-color:rgba(210,80,58,.62);background:linear-gradient(145deg,rgba(53,22,20,.98),rgba(12,13,18,.98))}
.finder-solar-block .finder-live-badge{color:#ff9b84}
.finder-solar-safety{margin:12px 0;padding:12px 13px;border-radius:13px;background:rgba(210,80,58,.15);border:1px solid rgba(210,80,58,.48);line-height:1.45}
.finder-sky-status{display:grid;gap:4px;padding:12px 13px;border-radius:13px;border:1px solid #1B2530;background:#0C1118;color:#AAB0B9;font-size:.82rem;line-height:1.4}
.finder-sky-status[hidden]{display:none!important}
.finder-sky-status strong{font-size:.71rem;letter-spacing:.11em;color:#F0A020}
.finder-sky-status span{display:block}
.finder-sky-status.is-visible{border-color:rgba(79,209,165,.35);background:rgba(79,209,165,.07)}
.finder-sky-status.is-visible strong{color:#4FD1A5}
.finder-sky-status.is-present{border-color:rgba(240,160,32,.32);background:rgba(240,160,32,.06)}
.finder-sky-status.is-solar{border-color:rgba(210,80,58,.55);background:rgba(210,80,58,.12)}
.finder-sky-status.is-solar strong{color:#ff9b84}
.finder-sky-status.is-below{opacity:.78}
.finder-sky-status-compact{margin:0 4px;padding:8px 10px;text-align:center}
.finder-sky-status-compact span{font-size:.74rem}
.finder-primary:disabled{opacity:.45;cursor:not-allowed;filter:grayscale(.35)}

/* v0.8.0 — Qualcosa di diverso */
.kicker.mint{color:var(--green)}
.different-card{
  margin-top:14px;
  padding:19px;
  border:1px solid rgba(97,226,177,.24);
  border-radius:23px;
  background:
    radial-gradient(circle at 100% 0%,rgba(97,226,177,.10),transparent 15rem),
    linear-gradient(145deg,rgba(15,35,48,.98),rgba(7,17,31,.98));
  box-shadow:0 12px 34px rgba(0,0,0,.22);
}
.different-topline{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:12px;
  margin-bottom:8px;
}
.different-topline .kicker{margin-bottom:0}
.different-topline>span{
  color:#8fbfae;
  font-size:.62rem;
  font-weight:800;
  letter-spacing:.07em;
  text-align:right;
}
.different-card h2{
  margin:0 0 8px;
  font-size:1.42rem;
  line-height:1.16;
}
.different-card>p{
  margin:0 0 13px;
  color:#c6d2d8;
  font-size:.9rem;
}
.different-action{
  display:flex;
  align-items:flex-start;
  gap:10px;
  padding:11px 12px;
  border:1px solid rgba(97,226,177,.14);
  border-radius:14px;
  background:rgba(97,226,177,.055);
}
.different-action>span{
  color:var(--green);
  line-height:1.35;
}
.different-action strong{
  color:#eff8f5;
  font-size:.84rem;
  line-height:1.4;
}
@media(max-width:520px){
  .different-card{padding:17px}
  .different-topline{align-items:flex-start}
  .different-card h2{font-size:1.32rem}
}


/* v0.8.1 prototype — Altair: map + existing Finder */
.different-locate-button{
  width:100%;margin-top:12px;padding:13px 16px;border:1px solid rgba(97,226,177,.35);border-radius:15px;
  background:rgba(97,226,177,.10);color:#dffbf0;font-weight:900;letter-spacing:.035em;text-align:center;
}
.different-locate-button:active{transform:translateY(1px)}
.different-detail-card{display:grid;gap:18px;margin-bottom:16px;padding:20px;border:1px solid rgba(97,226,177,.22);border-radius:24px;background:linear-gradient(145deg,rgba(13,32,45,.98),rgba(6,16,29,.98));box-shadow:var(--shadow)}
.different-detail-where{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.different-detail-where>div{padding:15px;border:1px solid rgba(97,226,177,.15);border-radius:17px;background:rgba(255,255,255,.025)}
.different-detail-where span{display:block;color:#8fbfae;font-size:.62rem;font-weight:900;letter-spacing:.08em}
.different-detail-where strong{display:block;margin:4px 0 1px;color:#f6fbf9;font:700 1.5rem/1.05 Georgia,serif}
.different-detail-where small{color:var(--muted);font-size:.72rem}
.different-location-note{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 13px;border-radius:14px;border:1px solid rgba(97,226,177,.14);background:rgba(97,226,177,.05);color:#b9cbc5;font-size:.72rem}
.different-location-note button{border:0;background:transparent;color:var(--green);font-weight:900;font-size:.68rem}
.different-location-note.ok{justify-content:flex-start}
.different-map-heading h2,.different-finder-section h2{margin:4px 0 5px;font-size:1.35rem}
.different-map-heading p{margin:0;color:#bac7cf;font-size:.86rem}
.altair-map-wrap{overflow:hidden;border-radius:20px}.altair-map-orientation{padding:10px 12px 8px;border:1px solid rgba(97,226,177,.20);border-bottom:0;border-radius:16px 16px 0 0;background:rgba(97,226,177,.075);color:#75dfb8;text-align:center;font-size:.67rem;font-weight:950;letter-spacing:.09em}
.altair-map-zoom{padding:8px 12px 2px;color:#7e919c;text-align:center;font-size:.58rem;font-weight:850;letter-spacing:.10em;background:rgba(7,17,31,.72)}
.altair-map{display:block;width:100%;height:auto;min-height:210px}
.altair-map-grid{stroke:rgba(189,215,227,.08);stroke-width:1;stroke-dasharray:4 8}.altair-map-guide{fill:none;stroke:rgba(97,226,177,.28);stroke-width:2;stroke-dasharray:5 8}
.altair-map-star circle{fill:#dbe8ef;filter:drop-shadow(0 0 4px rgba(219,232,239,.5))}
.altair-map-star text{fill:#aebdc6;font:700 15px system-ui,sans-serif}
.altair-map-star.altair-map-target circle{fill:#61e2b1;filter:drop-shadow(0 0 10px rgba(97,226,177,.8))}
.altair-map-star.altair-map-target text{fill:#e8fff7;font-size:18px}
.altair-map-caption{display:grid;gap:2px;padding:11px 13px;border:1px solid rgba(97,226,177,.16);border-top:0;border-radius:0 0 16px 16px;background:rgba(97,226,177,.055)}
.altair-map-caption strong{color:#edf9f5;font-size:.79rem}.altair-map-caption span{color:#9eb1ba;font-size:.72rem;line-height:1.4}
.different-detail-tip{display:flex;gap:10px;padding:13px;border-left:3px solid var(--green);background:rgba(97,226,177,.055);border-radius:0 14px 14px 0}
.different-detail-tip>span{color:var(--green)}.different-detail-tip p{margin:0;color:#c6d4da;font-size:.82rem;line-height:1.5}
.different-finder-section{padding-top:4px}
.different-finder-button{width:100%;margin-top:10px;padding:16px;border:0;border-radius:17px;background:linear-gradient(180deg,#78ebc2,#4fd1a5);color:#07151c;font-weight:950;font-size:.95rem;letter-spacing:.02em;box-shadow:0 9px 26px rgba(79,209,165,.18)}
.different-finder-help{display:block;margin-top:8px;color:var(--muted);text-align:center;font-size:.72rem}
.different-finder-state{display:grid;gap:4px;margin-top:10px;padding:13px;border:1px solid var(--line);border-radius:15px;background:rgba(255,255,255,.025)}
.different-finder-state strong{color:#eef4f7}.different-finder-state span{color:var(--muted);font-size:.76rem;line-height:1.45}
.different-finder-state.warning{border-color:rgba(255,155,132,.35);background:rgba(255,155,132,.06)}
@media(max-width:520px){.different-detail-card{padding:16px}.different-detail-where strong{font-size:1.3rem}.altair-map-star text{font-size:13px}.altair-map-star.altair-map-target text{font-size:16px}}

/* v0.8.4 — mappe didattiche a due livelli: contesto + eventuale zoom */
.different-map-step{display:grid;gap:10px}
.different-map-step+.different-map-step{margin-top:4px;padding-top:16px;border-top:1px solid rgba(97,226,177,.12)}
.different-map-wrap{overflow:hidden;border-radius:20px}
.different-map-orientation{padding:10px 12px 8px;border:1px solid rgba(97,226,177,.20);border-bottom:0;border-radius:16px 16px 0 0;background:rgba(97,226,177,.075);color:#75dfb8;text-align:center;font-size:.67rem;font-weight:950;letter-spacing:.09em}
.different-map-label{padding:8px 12px 5px;color:#7e919c;text-align:center;font-size:.58rem;font-weight:850;letter-spacing:.10em;background:rgba(7,17,31,.72)}
.different-map{display:block;width:100%;height:auto;min-height:220px}
.different-map-context .different-map{min-height:245px}
.different-map-guide{fill:none;stroke:rgba(97,226,177,.30);stroke-width:2;stroke-dasharray:5 8}
.different-map-star circle{fill:#dbe8ef;filter:drop-shadow(0 0 4px rgba(219,232,239,.5))}
.different-map-star text{fill:#aebdc6;font:700 14px system-ui,sans-serif}
.different-map-star.different-map-target circle{fill:#61e2b1;filter:drop-shadow(0 0 10px rgba(97,226,177,.8))}
.different-map-star.different-map-target text{fill:#e8fff7;font-size:17px}
.different-finder-caveat{margin-top:10px;padding:10px 12px;border:1px solid rgba(240,160,32,.20);border-radius:13px;background:rgba(240,160,32,.055);color:#aeb8be;font-size:.70rem;line-height:1.45}
@media(max-width:520px){
  .different-map-star text{font-size:12px}
  .different-map-star.different-map-target text{font-size:15px}
  .different-map-context .different-map{min-height:230px}
}

/* v0.8.7 — distinzione esplicita tra posizione attuale e posizione futura */
.finder-sky-status.is-future{border-color:rgba(109,221,184,.38);background:rgba(109,221,184,.07)}
.finder-sky-status.is-future strong{color:var(--green)}
.future-sky-caption{margin:0 0 10px;text-align:center;color:var(--gold);font-size:.68rem;font-weight:900;letter-spacing:.11em}


/* v0.9.1 — pagina Eventi: unica fonte ufficiale */
.official-events-card{
  padding:22px 20px;
  background:
    radial-gradient(circle at 100% 0%,rgba(244,207,99,.09),transparent 16rem),
    linear-gradient(145deg,rgba(17,31,52,.98),rgba(9,18,33,.98));
}
.official-events-card h2{font-size:1.65rem;line-height:1.08;margin-bottom:14px}
.official-events-card>p{font-size:1rem;line-height:1.65}
.official-events-button{width:100%;margin-top:12px;font-size:1rem}
.official-events-note{margin:14px 2px 0!important;color:var(--muted);font-size:.78rem!important;line-height:1.45!important}

/* v0.9.2 — INIZIA: microlezioni visuali */
.start-course-intro{margin-bottom:14px;padding:16px 17px;border-radius:18px;border:1px solid rgba(127,169,255,.20);background:rgba(127,169,255,.055)}
.start-course-intro strong{display:block;color:var(--text);font-size:.96rem;margin-bottom:4px}.start-course-intro p{margin:0;font-size:.86rem}
.start-course-list{display:grid;gap:12px}.start-course-card{position:relative;display:grid;grid-template-columns:38px 1fr;gap:14px;padding:18px;border:1px solid var(--line);border-radius:22px;background:linear-gradient(145deg,rgba(17,31,52,.98),rgba(9,18,33,.98));overflow:hidden}
.start-course-card:after{content:"";position:absolute;inset:auto -35px -55px auto;width:120px;height:120px;border-radius:50%;background:radial-gradient(circle,rgba(127,169,255,.11),transparent 68%);pointer-events:none}.start-course-number{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:rgba(127,169,255,.12);border:1px solid rgba(127,169,255,.32);color:var(--blue);font-weight:900}.start-course-icon{display:none}.start-course-copy h2{font-size:1.34rem;line-height:1.17}.start-course-copy p{margin:7px 0 12px;font-size:.88rem}.start-course-copy .kicker{margin-bottom:5px}.start-open{padding:0;border:0;background:transparent;color:var(--gold);font-weight:900;letter-spacing:.02em}
.start-lesson-lead{padding:18px;border:1px solid rgba(244,207,99,.22);border-radius:20px;background:linear-gradient(145deg,rgba(244,207,99,.07),rgba(17,31,52,.70));margin-bottom:14px}.start-lesson-lead p{margin:0;color:#d7dce3;font-size:.98rem;line-height:1.64}.start-lesson-flow{display:grid;gap:12px}.start-lesson-block{padding:18px;border-radius:22px;border:1px solid var(--line);background:linear-gradient(145deg,rgba(17,31,52,.98),rgba(9,18,33,.98))}.start-lesson-block h2{font-size:1.33rem;line-height:1.2;margin-bottom:9px}.start-lesson-block p{font-size:.91rem;line-height:1.62;margin:8px 0}.start-lesson-block p:last-of-type{margin-bottom:0}
.start-graphic{margin:16px 0 2px;padding:14px;border-radius:18px;border:1px solid rgba(127,169,255,.18);background:radial-gradient(circle at 50% 15%,rgba(127,169,255,.08),transparent 55%),rgba(3,10,19,.56);overflow:hidden}.start-graphic figcaption{color:var(--blue);font-size:.65rem;letter-spacing:.14em;font-weight:900;text-align:center;margin-bottom:8px}.start-graphic>p{margin:8px 0 0!important;text-align:center;font-size:.78rem!important;color:#9faeba!important}.start-graphic svg{display:block;width:100%;max-height:230px;margin:auto}.start-graphic svg text{fill:#9fb0bf;font-size:11px;text-anchor:middle;font-weight:700;letter-spacing:.03em}.start-graphic svg .sg-major{fill:#e8edf2;font-weight:900}.start-graphic svg circle:not(.sg-target-ring){fill:#dfe9ef}.start-graphic svg .target{fill:var(--green)}.sg-ring{fill:none!important;stroke:rgba(127,169,255,.25);stroke-width:1.4}.sg-axis,.sg-horizon{stroke:rgba(255,255,255,.15);stroke-width:1.2}.sg-north{fill:var(--gold)}.sg-center{fill:var(--gold)!important}.sg-arc{fill:none;stroke:rgba(127,169,255,.44);stroke-width:2}.sg-dot{fill:#dfe9ef!important}.sg-dot.target{fill:var(--green)!important}.sg-line{fill:none;stroke:rgba(223,233,239,.54);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.sg-target-ring{fill:none;stroke:var(--green);stroke-width:1.6;stroke-dasharray:3 4}.sg-telescope rect{fill:rgba(127,169,255,.16);stroke:rgba(127,169,255,.7);stroke-width:2}.sg-telescope circle{fill:rgba(244,207,99,.18)!important;stroke:var(--gold);stroke-width:2}.sg-telescope line{stroke:#9fb0bf;stroke-width:4;stroke-linecap:round}
.start-hand-grid,.binocular-explain,.start-target-grid,.start-choice-grid{display:grid;gap:9px}.start-hand-grid{grid-template-columns:repeat(3,1fr)}.start-hand-grid>div,.binocular-explain>div,.start-target-grid>div,.start-choice-grid>div{min-width:0;padding:11px 8px;border-radius:14px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.025);text-align:center}.hand-symbol{display:block;min-height:36px;font-size:1.65rem;line-height:1.1}.start-hand-grid strong{display:block;color:var(--text);font-size:.92rem;margin:4px 0}.start-hand-grid small{color:var(--muted);font-size:.68rem}.start-map-sequence{display:grid;grid-template-columns:1fr 22px 1fr;gap:7px;align-items:center}.mini-sky{position:relative;min-height:118px;padding:22px 6px 6px;border-radius:14px;border:1px solid rgba(255,255,255,.08);background:rgba(3,10,19,.75);text-align:center}.mini-sky svg{height:76px}.mini-sky b{color:var(--green);font-size:.72rem}.mini-label{position:absolute;top:7px;left:0;right:0;color:#91a2b4;font-size:.59rem;font-weight:900;letter-spacing:.09em}.start-seq-arrow{text-align:center;color:var(--gold);font-size:1.35rem;font-weight:900}.start-shapes-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.start-shapes-grid>div{padding:8px;border-radius:13px;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.07);text-align:center}.start-shapes-grid svg{height:52px}.start-shapes-grid small{color:var(--muted);font-size:.62rem;font-weight:900;letter-spacing:.1em}.binocular-formula{display:flex;align-items:center;justify-content:center;gap:13px;padding:13px 0 16px}.binocular-formula strong{font-size:2.7rem;color:var(--text);font-family:Georgia,serif}.binocular-formula span{font-size:1.8rem;color:var(--gold)}.binocular-explain{grid-template-columns:1fr 1fr}.binocular-explain b{display:block;color:var(--gold);font-size:1rem}.binocular-explain span{display:block;color:var(--muted);font-size:.72rem;margin-top:3px}.start-target-grid{grid-template-columns:1fr 1fr}.start-target-grid b{display:block;color:var(--gold);font-size:1.6rem}.start-target-grid span{font-size:.73rem;color:#c8d1d9}.start-equation>div{display:flex;gap:14px;justify-content:center;align-items:center;padding:13px 0}.start-equation strong{font:700 2.5rem Georgia,serif;color:#e5e9ee}.start-equation span{font-size:2rem;color:#d7dde4}.start-equation b{color:var(--green);font-size:1.05rem;letter-spacing:.06em}.start-choice-grid{grid-template-columns:repeat(3,1fr)}.start-choice-grid b{display:block;color:var(--gold);font-size:1.45rem;margin-bottom:5px}.start-choice-grid strong{display:block;color:#e4e9ee;font-size:.75rem}.start-choice-grid span{display:block;color:var(--muted);font-size:.65rem;line-height:1.35;margin-top:4px}
.start-mission-card{margin-top:14px;padding:18px;border-radius:22px;border:1px solid rgba(97,226,177,.26);background:linear-gradient(145deg,rgba(97,226,177,.075),rgba(9,18,33,.96))}.start-mission-card h2{font-size:1.35rem}.start-mission-card p{margin:7px 0 0;font-size:.91rem}.kicker.mint{color:var(--green)}.start-remember-card{display:grid;grid-template-columns:34px 1fr;gap:10px;margin-top:12px;padding:16px;border-radius:18px;border-left:3px solid var(--gold);background:rgba(244,207,99,.055)}.start-remember-card>span{color:var(--gold);font-size:1.25rem}.start-remember-card .kicker{margin:1px 0 4px}.start-remember-card p{margin:0;color:#d2d8df;font-size:.87rem;line-height:1.55}.start-video-card{margin-top:12px;padding:18px;border:1px solid rgba(180,129,255,.24);border-radius:22px;background:rgba(180,129,255,.055)}.start-video-card p{font-size:.88rem}.start-back{margin-top:14px;width:100%}
@media(min-width:620px){.start-course-card{grid-template-columns:42px 54px 1fr;align-items:start}.start-course-icon{display:grid;width:54px;height:54px;border-radius:16px;place-items:center;font-size:1.55rem;color:var(--gold);background:rgba(244,207,99,.07);border:1px solid rgba(244,207,99,.16)}}
@media(max-width:390px){.start-hand-grid{grid-template-columns:1fr}.start-choice-grid{grid-template-columns:1fr}.start-map-sequence{grid-template-columns:1fr}.start-seq-arrow{transform:rotate(90deg)}.binocular-formula strong{font-size:2.25rem}}

/* v0.9.3 — rifiniture percorso INIZIA */
.three-fingers{display:inline-flex;align-items:flex-end;justify-content:center;gap:3px;height:36px}
.three-fingers i{display:block;width:7px;height:29px;border:2px solid #e4e9ee;border-radius:7px 7px 4px 4px;background:rgba(255,255,255,.035)}
.three-fingers i:nth-child(2){height:34px}.three-fingers i:nth-child(3){height:31px}
.start-warning-card{display:grid;grid-template-columns:34px 1fr;gap:11px;margin-top:14px;padding:17px;border-radius:20px;border:1px solid rgba(244,207,99,.28);border-left:3px solid var(--gold);background:linear-gradient(145deg,rgba(244,207,99,.08),rgba(9,18,33,.97))}
.start-warning-card>span{color:var(--gold);font-size:1.35rem;line-height:1.2;margin-top:2px}.start-warning-card .kicker{margin:0 0 4px;color:var(--gold)}.start-warning-card h2{font-size:1.2rem;line-height:1.2;margin:0 0 7px}.start-warning-card p{margin:0;color:#d2d8df;font-size:.87rem;line-height:1.58}

/* v0.9.7 — missioni stellari: prima la mappa, poi il bersaglio */
.mission-target-prep{
  margin:0 0 14px;
  padding:17px;
  border:1px solid rgba(97,226,177,.3);
  border-radius:20px;
  background:linear-gradient(155deg,rgba(8,47,51,.42),rgba(6,23,35,.72));
}
.mission-target-prep h2{
  margin:3px 0 8px;
  color:var(--text);
  font-size:1.32rem;
  line-height:1.12;
}
.mission-target-prep>p{
  margin:0 0 14px;
  color:var(--muted);
  line-height:1.55;
}
.mission-target-prep>p strong{color:var(--text)}
.mission-target-grid{display:grid;gap:10px}
.mission-target-card{
  display:grid;
  grid-template-columns:42px minmax(0,1fr);
  gap:11px;
  align-items:center;
  padding:13px;
  border:1px solid rgba(255,255,255,.1);
  border-radius:17px;
  background:rgba(3,13,24,.56);
}
.mission-target-icon{
  width:42px;height:42px;display:grid;place-items:center;
  border-radius:50%;
  border:1px solid rgba(97,226,177,.36);
  color:var(--green);
  background:rgba(97,226,177,.07);
  font-size:1.1rem;
}
.mission-target-copy{min-width:0;display:grid;gap:3px}
.mission-target-copy strong{font-size:1rem;color:var(--text)}
.mission-target-copy span{font-size:.82rem;color:var(--green);font-weight:800}
.mission-target-copy small{font-size:.76rem;color:var(--muted);line-height:1.4}
.mission-target-guide-button{
  grid-column:1/-1;
  width:100%;
  margin-top:2px;
  padding:11px 13px;
  border:1px solid rgba(97,226,177,.42);
  border-radius:13px;
  background:rgba(97,226,177,.08);
  color:#dffdf3;
  font:inherit;
  font-size:.78rem;
  font-weight:900;
  letter-spacing:.035em;
}
.mission-target-unavailable{
  grid-column:1/-1;
  color:var(--muted);
  font-size:.76rem;
}

/* v0.9.8 — missioni guidate scalabili: acquisizione bersaglio per tutte le missioni */


/* v0.10.0 — ingresso installazione PWA */
.install-gate{
  position:fixed;
  inset:0;
  z-index:100000;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:max(22px, env(safe-area-inset-top)) 22px max(22px, env(safe-area-inset-bottom));
  overflow:auto;
  background:
    radial-gradient(circle at 18% 17%, rgba(99,224,187,.12), transparent 30%),
    radial-gradient(circle at 82% 80%, rgba(163,107,255,.12), transparent 34%),
    #07111f;
}
.install-gate[hidden]{display:none!important}
.install-gate-stars{
  position:fixed;
  inset:0;
  pointer-events:none;
  opacity:.34;
  background-image:
    radial-gradient(circle, rgba(255,255,255,.8) 0 1px, transparent 1.5px),
    radial-gradient(circle, rgba(255,216,95,.65) 0 1px, transparent 1.5px);
  background-size:83px 83px, 137px 137px;
  background-position:11px 19px, 47px 67px;
}
.install-gate-card{
  position:relative;
  width:min(100%, 620px);
  padding:34px 30px 28px;
  border:1px solid rgba(255,216,95,.38);
  border-radius:34px;
  background:linear-gradient(180deg, rgba(15,31,50,.97), rgba(8,20,33,.98));
  box-shadow:0 26px 70px rgba(0,0,0,.38), inset 0 1px 0 rgba(255,255,255,.025);
}
.install-gate-brand{
  display:flex;
  align-items:center;
  gap:15px;
  margin-bottom:42px;
}
.install-gate-star{
  font-size:44px;
  line-height:1;
  color:#ffd85f;
  filter:drop-shadow(0 0 18px rgba(255,216,95,.18));
}
.install-gate-brand-name{
  font-size:25px;
  letter-spacing:.27em;
  color:#f7f4ed;
}
.install-gate-brand-tagline{
  margin-top:5px;
  font-size:11px;
  letter-spacing:.19em;
  color:#e9c860;
}
.install-gate-kicker{
  margin-bottom:12px;
  color:#ffd85f;
  font-weight:800;
  letter-spacing:.13em;
  font-size:13px;
}
.install-gate-card h1{
  margin:0;
  color:#f7f4ed;
  font-family:Georgia, 'Times New Roman', serif;
  font-size:clamp(46px, 9vw, 68px);
  line-height:.98;
  letter-spacing:-.025em;
}
.install-gate-card>p#installGateText{
  margin:22px 0 24px;
  color:#b6becb;
  font-size:19px;
  line-height:1.55;
}
.install-gate-benefits{
  display:grid;
  gap:10px;
  margin:0 0 26px;
}
.install-gate-benefits>div{
  display:flex;
  align-items:center;
  gap:12px;
  min-height:54px;
  padding:12px 15px;
  border:1px solid rgba(105,224,189,.16);
  border-radius:18px;
  background:rgba(42,91,87,.12);
  color:#dbe4e8;
}
.install-gate-benefits span{
  flex:0 0 auto;
  display:grid;
  place-items:center;
  width:30px;
  height:30px;
  color:#63e0bb;
  font-size:21px;
}
.install-gate-benefits strong{font-size:15px}
.install-gate-primary,
.install-gate-secondary{
  width:100%;
  border:0;
  border-radius:21px;
  font:inherit;
  font-weight:900;
  letter-spacing:.015em;
  cursor:pointer;
}
.install-gate-primary{
  min-height:70px;
  padding:17px 20px;
  color:#101a28;
  background:linear-gradient(180deg,#ffe57e,#f6cd4e);
  box-shadow:0 12px 32px rgba(246,205,78,.16);
  font-size:19px;
}
.install-gate-primary:active{transform:translateY(1px)}
.install-gate-secondary{
  min-height:56px;
  margin-top:12px;
  padding:13px 18px;
  color:#c3cad4;
  background:transparent;
  border:1px solid rgba(169,181,198,.22);
  font-size:14px;
}
.install-gate-help{
  margin:14px 0 0;
  padding:14px 16px;
  border:1px solid rgba(99,224,187,.25);
  border-radius:16px;
  color:#c8d5d8;
  background:rgba(21,60,62,.18);
  font-size:14px;
  line-height:1.45;
}
.install-gate-note{
  margin:13px 4px 0!important;
  color:#7f8998!important;
  font-size:12px!important;
  line-height:1.45!important;
  text-align:center;
}
body.install-gate-open{overflow:hidden}
html[data-sidereus-display="standalone"] .install-gate{display:none!important}

/* v0.9.11 — comunicazioni remote */
.remote-messages{margin:15px 0}
.remote-messages-heading{display:flex;align-items:end;justify-content:space-between;gap:12px;margin:0 3px 10px}
.remote-messages-heading h2{margin:2px 0 0;font-size:1.35rem}
.remote-messages-status{color:var(--muted);font-size:.61rem;font-weight:800;letter-spacing:.08em}
.remote-messages-list{display:grid;gap:10px}
.remote-message{display:grid;grid-template-columns:48px 1fr;gap:13px;padding:16px;border:1px solid rgba(244,207,99,.25);border-radius:21px;background:linear-gradient(145deg,rgba(30,35,48,.98),rgba(8,17,31,.98))}
.remote-message-symbol{width:46px;height:46px;display:grid;place-items:center;border-radius:50%;color:var(--gold);font-weight:900;font-size:1.15rem;border:1px solid rgba(244,207,99,.36);background:rgba(244,207,99,.09)}
.remote-message-copy h3{margin:2px 0 7px;font-size:1.15rem;line-height:1.25}
.remote-message-copy p{margin:0;color:var(--muted);font-size:.88rem;line-height:1.48}
.remote-message-action{margin-top:11px;padding:0;border:0;background:transparent;color:var(--gold);font:inherit;font-size:.72rem;font-weight:900;letter-spacing:.03em;text-align:left}
.remote-message-badge{display:inline-flex;align-items:center;width:max-content;margin:0 0 8px;padding:5px 9px;border:1px solid rgba(99,224,187,.38);border-radius:999px;background:rgba(99,224,187,.09);color:#7be8c7;font-size:.58rem;font-weight:900;line-height:1;letter-spacing:.11em;text-transform:uppercase}
.remote-message-new{box-shadow:0 0 34px rgba(99,224,187,.055)}
.remote-message-important{border-color:rgba(244,207,99,.62);background:linear-gradient(145deg,rgba(67,49,17,.58),rgba(11,18,30,.98));box-shadow:inset 3px 0 0 rgba(244,207,99,.72),0 0 38px rgba(244,207,99,.07)}
.remote-message-important .remote-message-symbol{color:var(--gold);border-color:rgba(244,207,99,.58);background:rgba(244,207,99,.14)}
.remote-message-important .remote-message-badge{border-color:rgba(244,207,99,.55);background:rgba(244,207,99,.13);color:var(--gold)}
.remote-message-advice{border-color:rgba(180,129,255,.34)}
.remote-message-advice .remote-message-symbol{color:var(--violet);border-color:rgba(180,129,255,.42);background:rgba(180,129,255,.1);font-size:.78rem}
.remote-message-video{border-color:rgba(99,224,187,.31)}
.remote-message-video .remote-message-symbol{color:#63e0bb;border-color:rgba(99,224,187,.4);background:rgba(99,224,187,.09)}

@media (max-width:420px){
  .install-gate{padding:14px 14px max(14px, env(safe-area-inset-bottom))}
  .install-gate-card{padding:27px 22px 22px;border-radius:28px}
  .install-gate-brand{margin-bottom:30px}
  .install-gate-brand-name{font-size:21px}
  .install-gate-brand-tagline{font-size:9px}
  .install-gate-card>p#installGateText{font-size:17px}
  .install-gate-primary{min-height:66px;font-size:18px}
  .remote-message-badge{font-size:.55rem;padding:5px 8px}
}

/* v0.9.20 — consenso statistiche, privacy e assistenza */
.app-support-card{margin:14px 0 4px;padding:18px;border:1px solid var(--line);border-radius:22px;background:linear-gradient(145deg,rgba(17,31,52,.94),rgba(9,18,33,.94))}
.app-support-card h2{font-size:1.25rem}.app-support-card p{margin:6px 0 15px;font-size:.84rem}
.app-support-actions{display:flex;flex-wrap:wrap;gap:8px}
.app-support-actions button{min-height:42px;padding:9px 12px;border:1px solid rgba(255,255,255,.15);border-radius:12px;background:rgba(255,255,255,.035);color:#dce3ed;font-size:.66rem;font-weight:850}
@media(max-width:480px){.app-support-actions{display:grid;grid-template-columns:1fr 1fr}}

/* v0.10.0 — AstroNews e notifiche */
.astro-news-home{position:relative;overflow:hidden;margin:4px 0 15px;padding:20px;border:1px solid rgba(244,207,99,.32);border-radius:25px;background:linear-gradient(145deg,rgba(26,32,48,.99),rgba(10,18,32,.99));box-shadow:0 18px 55px rgba(0,0,0,.2)}
.astro-news-home-glow{position:absolute;width:230px;height:230px;right:-90px;top:-130px;border-radius:50%;background:rgba(244,207,99,.13);filter:blur(18px);pointer-events:none}
.astro-news-home-head{position:relative;display:flex;align-items:start;justify-content:space-between;gap:12px;margin-bottom:15px}
.astro-news-home-head h1{margin:5px 0 0;font:700 clamp(1.45rem,5.5vw,2rem)/1.12 Georgia,serif}
.astro-news-all{flex:0 0 auto;padding:7px 0;border:0;background:transparent;color:var(--gold);font-size:.7rem;font-weight:900;letter-spacing:.05em}
.astro-news-home-content{position:relative}
.astro-news-lead{display:grid;grid-template-columns:112px 1fr;gap:15px;width:100%;padding:0;border:0;background:transparent;color:var(--text);text-align:left}
.astro-news-image,.astro-news-row-image{display:grid;place-items:center;width:100%;height:112px;object-fit:cover;border-radius:17px;border:1px solid rgba(255,255,255,.1);background:radial-gradient(circle at 35% 30%,#28456b,#0b1628);color:var(--gold);font-size:2.2rem}
.astro-news-lead-copy,.astro-news-row>span{display:flex;min-width:0;flex-direction:column;align-items:flex-start}
.astro-news-lead-copy small,.astro-news-row small{color:var(--gold);font-size:.65rem;font-weight:850;text-transform:uppercase;letter-spacing:.06em}
.astro-news-lead-copy strong{margin-top:5px;font:700 1.12rem/1.25 Georgia,serif}
.astro-news-lead-copy em,.astro-news-row em{display:-webkit-box;overflow:hidden;margin-top:5px;color:var(--muted);font-size:.78rem;font-style:normal;line-height:1.45;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.astro-news-lead-copy b,.astro-news-row b{margin-top:9px;color:var(--gold);font-size:.67rem;letter-spacing:.06em}
.astro-news-loading{padding:18px;border:1px dashed var(--line);border-radius:16px;color:var(--muted);font-size:.82rem}
.astro-news-empty{padding:15px;border:1px solid rgba(255,255,255,.08);border-radius:17px;background:rgba(255,255,255,.025)}
.astro-news-empty strong{font:700 1.05rem Georgia,serif}.astro-news-empty p{margin:6px 0 12px;color:var(--muted);font-size:.8rem}.astro-news-empty button{padding:0;border:0;background:transparent;color:var(--gold);font-size:.68rem;font-weight:900}
.push-invite{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:13px;margin:0 0 15px;padding:15px;border:1px solid rgba(79,198,231,.25);border-radius:20px;background:linear-gradient(145deg,rgba(14,35,52,.96),rgba(8,20,34,.96))}
.push-invite[hidden]{display:none}.push-invite-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:rgba(79,198,231,.11);color:var(--cyan);font-size:1.15rem}.push-invite-copy h2{margin:2px 0;font-size:1rem}.push-invite-copy p{margin:0;color:var(--muted);font-size:.72rem;line-height:1.4}.push-invite button{min-height:38px;padding:8px 11px;border:1px solid rgba(244,207,99,.35);border-radius:11px;background:rgba(244,207,99,.08);color:var(--gold);font-size:.64rem;font-weight:900}
.astro-news-archive{display:grid;gap:11px;margin-top:15px}.astro-news-row{display:grid;grid-template-columns:98px 1fr;gap:14px;width:100%;padding:13px;border:1px solid var(--line);border-radius:20px;background:linear-gradient(145deg,rgba(17,31,52,.98),rgba(9,18,33,.98));color:var(--text);text-align:left}.astro-news-row-image{height:98px}.astro-news-row strong{margin-top:4px;font:700 1.02rem/1.25 Georgia,serif}.astro-news-row b{margin-top:8px}.astro-news-empty-page{padding:22px}
.astro-news-detail{overflow:hidden;border:1px solid rgba(244,207,99,.24);border-radius:24px;background:linear-gradient(145deg,rgba(17,31,52,.98),rgba(9,18,33,.98))}.astro-news-detail-image{display:grid;place-items:center;width:100%;height:min(54vw,330px);object-fit:cover;border:0;border-radius:0;background:radial-gradient(circle at 40% 30%,#28456b,#0b1628);color:var(--gold);font-size:4rem}.astro-news-detail-lead{margin:0;padding:22px 22px 0;color:var(--text);font:700 1.13rem/1.5 Georgia,serif}.astro-news-detail-body{padding:18px 22px;color:#c9d2dd;line-height:1.68}.astro-news-detail-signature{margin:0 22px;padding:16px 0;border-top:1px solid var(--line);color:var(--muted);font-size:.76rem}.astro-news-detail-signature strong{color:var(--gold)}.astro-news-detail-actions{display:flex;flex-wrap:wrap;gap:8px;padding:0 22px 22px}.astro-news-detail-actions button{padding:11px 13px;border:1px solid rgba(244,207,99,.3);border-radius:12px;background:rgba(244,207,99,.07);color:var(--gold);font-size:.68rem;font-weight:900}
@media(max-width:520px){.astro-news-lead{grid-template-columns:90px 1fr}.astro-news-image{height:90px}.push-invite{grid-template-columns:auto 1fr}.push-invite button{grid-column:1/-1;width:100%}.bottom-nav button small{font-size:.56rem}.bottom-nav button span{font-size:1.2rem}}

/* v0.10.1 — Home alleggerita */
.astro-news-home{margin-bottom:13px;padding:16px 17px;border-radius:22px}
.astro-news-home-glow{width:170px;height:170px;right:-75px;top:-105px}
.astro-news-home-head{align-items:center;margin-bottom:11px}
.astro-news-home-head .kicker{font-size:.64rem}
.astro-news-all{padding:4px 0}
.astro-news-lead{grid-template-columns:82px 1fr;gap:13px;align-items:center}
.astro-news-image{height:82px;border-radius:14px;font-size:1.8rem}
.astro-news-lead-copy strong{margin-top:3px;font-size:1.08rem;line-height:1.2}
.astro-news-lead-copy em{margin-top:3px;font-size:.74rem;line-height:1.35;-webkit-line-clamp:2}
.astro-news-lead-copy b{margin-top:6px}
.app-support-actions #pushSettingsButton{border-color:rgba(79,198,231,.24);color:#a9ddec}
@media(max-width:480px){.app-support-actions #pushSettingsButton{grid-column:1/-1}}
