#stars-page { max-width:900px; margin:12px auto 48px; }
.stars-heading>a,.stars-heading>p,.stars-heading>span { display:none; }
.stars-heading h1 { margin:0 0 10px; font-size:32px; letter-spacing:-.03em; line-height:1.2; }
.stars-tabs { display:flex; gap:8px; margin:16px 0 12px; border-bottom:1px solid #51462f; padding-bottom:8px; }
.stars-tabs button { min-height:44px; font-size:14px; }
#stars-page [aria-pressed=true] { background:#e6c675; color:#211906; border-color:#e6c675; }
.stars-layout { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(210px,1fr); gap:30px; align-items:start; }
.stars-play,.stars-history,.stars-sidebar { min-width:0; }
.stars-filters { display:flex; gap:6px; margin-bottom:16px; }
.stars-filters button { min-height:44px; flex:1; padding:6px; font-size:12px; }
#stars-deck { position:relative; isolation:isolate; }
#star-card { position:relative; border:1px solid #8e7846; border-radius:16px; background:#25231c; color:#f3ecd9;
  padding:16px; user-select:none; touch-action:pan-y; cursor:grab; box-shadow:0 8px 0 -3px #302a1e,0 9px 0 -3px #78643b; }
#star-card:focus-visible { outline:3px solid #f4d684; outline-offset:4px; }
.star-fixture { display:flex; flex-wrap:wrap; justify-content:space-between; gap:2px 10px; font-size:11px; color:#dcc586; }
.star-fixture time { max-width:100%; font-size:12px; line-height:1.4; }
.star-match { font-size:13px; margin:12px 0 0; font-weight:600; text-align:center; }
.star-match span { color:#b1a38b; font-weight:400; padding:0 4px; }
.star-portrait { position:relative; height:180px; display:grid; place-items:center; overflow:hidden; margin:12px 0; border-radius:12px; background:#ece8dd; }
.star-portrait::before { content:''; position:absolute; width:210px; height:210px; border:1px solid #bdad87; border-radius:50%; }
.star-portrait img { width:180px; height:180px; object-fit:contain; position:relative; }
.star-person { display:grid; grid-template-columns:140px minmax(0,1fr); align-items:center; gap:20px; }
.star-person .star-portrait,.star-person img { height:128px; }
.star-person img { width:140px; }
.star-initials { position:absolute; font-size:64px; font-weight:700; color:#77653f; }
.star-intent { position:absolute; top:18px; right:14px; font-size:22px; font-weight:700; color:#211906; background:#f2d485; border-radius:8px; padding:6px 12px; transform:rotate(8deg); }
.star-intent:empty { display:none; }
.star-name { text-align:left; }
.star-name small { font-size:12px; color:#dcc586; }
.star-name h2 { font-size:25px; margin:5px 0 14px; line-height:1.2; }
.star-stats { display:grid; grid-template-columns:repeat(3,1fr); margin:0; padding:12px 0; border-block:1px solid #534933; text-align:center; }
.star-stats>div+div { border-left:1px solid #534933; }
.star-stats dd { font-size:24px; font-weight:700; margin:0 0 2px; font-variant-numeric:tabular-nums; }
.star-stats dt { font-size:11px; color:#d4ccba; }
.star-source,.star-lineup { font-size:10px; text-align:center; line-height:1.6; margin:8px 0 0; color:#c2bbaa; }
.star-lineup { color:#e3cc97; }
.stars-actions { display:grid; grid-template-columns:1fr 64px 1fr; gap:10px; margin-top:16px; }
.stars-actions button { min-height:62px; padding:8px 6px; border-radius:12px; }
.stars-actions b,.stars-actions small { display:block; }
.stars-actions b { font-size:17px; }
.stars-actions small { font-size:10px; margin-top:4px; }
[data-star-answer=no] { border-color:#a88068; color:#f3c6ac; }
[data-star-answer=yes] { background:#e6c675; color:#211906; border-color:#e6c675; }
[data-star-answer=yes] small { color:#3b2a0c; }
.stars-gesture { text-align:center; font-size:11px; color:#bfb5a1; line-height:1.6; }
.stars-score { border-block:1px solid #51462f; padding:20px 0; }
.stars-score>strong { display:flex; gap:10px; align-items:baseline; font-size:36px; color:#e6c675; }
.stars-score>strong small { font-size:14px; font-weight:400; }
.stars-score dl { margin:12px 0 0; }
.stars-score dl>div { display:flex; justify-content:space-between; gap:12px; margin-top:10px; font-size:12px; }
.stars-score dd { margin:0; font-variant-numeric:tabular-nums; }
.stars-rules { margin-top:16px; }
.stars-rules summary,.star-receipt summary { cursor:pointer; padding:12px 0; min-height:44px; font-size:13px; color:#e6c675; }
.stars-rules p,.stars-rules small { font-size:12px; line-height:1.8; color:#d4ccba; }
.stars-feedback { background:#332b1a; color:#f2dcac; border-radius:10px; padding:12px 16px; font-size:13px; line-height:1.6; }
.stars-feedback:empty,.stars-error:empty { display:none; }
.stars-error { color:#f3c6ac; font-size:13px; }
.stars-empty { padding:35px 16px; border:1px dashed #78643b; border-radius:16px; text-align:center; color:#c2bbaa; }
.stars-empty>span { font-size:40px; color:#dcc586; }
.stars-empty h2 { font-size:19px; line-height:1.5; color:#f3ecd9; }
.stars-empty p { font-size:13px; line-height:1.8; }
.stars-empty button { min-height:44px; }
.stars-history-note { font-size:11px; color:#c2bbaa; }
.star-receipt { padding:18px 0; border-bottom:1px solid #51462f; }
.star-receipt>div { display:flex; justify-content:space-between; gap:10px; align-items:baseline; }
.star-receipt h2 { font-size:16px; margin:0; }
.star-receipt strong { font-size:12px; color:#dcc586; }
.star-receipt p,.star-receipt small { font-size:11px; line-height:1.7; color:#c2bbaa; }
.star-receipt>b { font-size:13px; }
.star-receipt[data-result=CORRECT] strong { color:#8bdfac; }
.star-receipt[data-result=WRONG] strong { color:#f3b3a4; }
@media(max-width:650px) {
  #stars-page { margin:8px 0 30px; }
  .stars-heading>a { display:none; }
  .stars-heading { padding-top:8px; }
  .stars-heading h1 { font-size:26px; }
  .stars-heading>p { font-size:12px; }
  .stars-heading>p { display:none; }
  .stars-heading h1 { margin-top:4px; margin-bottom:6px; }
  .stars-tabs { margin:16px 0 12px; }
  .stars-tabs button { flex:1; padding:8px 6px; font-size:12px; }
  .stars-layout { grid-template-columns:minmax(0,1fr); gap:18px; }
  .stars-filters { margin-bottom:12px; }
  #star-card { padding:12px; }
  .star-fixture time { flex-basis:100%; }
  .star-person .star-portrait,.star-person img { height:112px; }
  .star-person img { width:120px; }
  .star-person { display:grid; grid-template-columns:120px minmax(0,1fr); align-items:center; gap:14px; }
  .star-name { text-align:left; }
  .star-initials { font-size:44px; }
  .star-intent { font-size:16px; top:8px; right:4px; }
  .stars-actions { margin-top:16px; }
  .star-name h2 { font-size:23px; margin-bottom:10px; }
  .star-stats { padding:10px 0; }
  .star-stats dd { font-size:22px; }
  .stars-score { display:flex; align-items:center; gap:25px; padding:12px 0; }
  .stars-score dl { flex:1; margin:0; }
  .stars-score dl>div { margin:5px 0; }
  .stars-rules { margin-top:4px; }
}
@media(prefers-reduced-motion:reduce) { #star-card { transition:none; } }
