/* ===== HOME PAGE CSS ===== */

/* PUZZLE DO DIA */
.home-daily{border-bottom:1px solid var(--border);background:var(--bg2);}
.home-daily-inner{max-width:1240px;margin:0 auto;padding:56px 32px;display:grid;grid-template-columns:.95fr 1.05fr;gap:56px;align-items:center;}
.home-daily-board{position:relative;display:flex;justify-content:center;}
.home-daily-info{}
.home-daily-badge{display:inline-flex;align-items:center;gap:8px;padding:6px 13px;border:1px solid var(--border3);border-radius:100px;font-size:12.5px;color:var(--text4);letter-spacing:.04em;margin-bottom:22px;}
.home-daily-badge-dot{width:6px;height:6px;border-radius:50%;background:var(--accent);}
.home-daily-title{font-family:var(--font-head);font-weight:700;font-size:46px;line-height:1.05;letter-spacing:-.03em;margin:0 0 16px;}
.home-daily-desc{font-size:17.5px;line-height:1.6;color:var(--text3);max-width:440px;margin:0 0 24px;}
.home-daily-solved{display:flex;align-items:center;gap:12px;margin-bottom:8px;}
.home-daily-solved-txt{font-size:15px;font-weight:700;color:var(--accent);}
.home-daily-actions{display:flex;gap:12px;flex-wrap:wrap;}

/* HERO */
.home-hero{border-bottom:1px solid var(--border);}
.home-hero-inner{max-width:1240px;margin:0 auto;padding:80px 32px;display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center;}
.home-hero-left{animation:fadeUp .7s ease both;}
.home-hero-h1{font-family:var(--font-head);font-weight:700;font-size:62px;line-height:1.02;letter-spacing:-.035em;margin:0 0 22px;}
.home-hero-lead{font-size:18.5px;line-height:1.6;color:var(--text4);max-width:440px;margin:0 0 36px;}
.home-hero-btns{display:flex;gap:14px;flex-wrap:wrap;}
.home-hero-board{display:flex;flex-direction:column;align-items:center;gap:18px;}
.home-hero-caption{font-family:var(--font-head);font-size:15px;font-weight:600;color:var(--text4);letter-spacing:.02em;}
.home-hero-caption span{color:#fff;}

/* NÍVEIS */
.home-levels{max-width:1240px;margin:0 auto;padding:56px 32px 40px;}
.home-levels-label{font-size:13px;color:var(--text5);letter-spacing:.08em;text-transform:uppercase;margin-bottom:10px;}
.home-levels-title{font-family:var(--font-head);font-weight:700;font-size:34px;letter-spacing:-.03em;margin:0 0 26px;}
.home-levels-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:46px;}
.home-level-card{border:1px solid var(--border2);border-radius:16px;padding:30px;background:var(--bg3);cursor:pointer;transition:border-color .25s,transform .25s;}
.home-level-card:hover{transform:translateY(-4px);}
.home-level-card.active{border-color:var(--accent);}
.home-level-elo{font-family:var(--font-head);font-weight:700;font-size:60px;line-height:1;letter-spacing:-.04em;color:#fff;}
.home-level-card.active .home-level-elo{color:var(--accent);}
.home-level-name{font-size:12.5px;color:var(--text4);letter-spacing:.1em;text-transform:uppercase;margin:14px 0 12px;}
.home-level-desc{color:var(--text3);font-size:14.5px;line-height:1.55;margin:0;}

/* ARTIGOS */
.home-articles{max-width:1240px;margin:0 auto;padding:0 32px 100px;}
.home-articles-header{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:30px;gap:24px;}
.home-articles-label{font-size:13px;color:var(--text5);letter-spacing:.08em;text-transform:uppercase;margin-bottom:10px;}
.home-articles-title{font-family:var(--font-head);font-weight:700;font-size:34px;letter-spacing:-.03em;margin:0;}
.home-articles-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
.home-article-card{border:1px solid var(--border2);border-radius:16px;overflow:hidden;background:var(--bg3);cursor:pointer;transition:border-color .25s,transform .25s;text-decoration:none;display:block;color:#fff;}
.home-article-card:hover{border-color:#383838;transform:translateY(-4px);}
.home-article-thumb{aspect-ratio:16/10;background:repeating-linear-gradient(45deg,#131313,#131313 11px,#171717 11px,#171717 22px);display:flex;align-items:flex-end;padding:14px;}
.home-article-thumb span{font-family:monospace;font-size:11px;color:var(--text5);}
.home-article-body{padding:22px 22px 26px;}
.home-article-meta{display:flex;align-items:center;gap:10px;margin-bottom:12px;flex-wrap:wrap;}
.home-article-cat{font-size:11.5px;color:var(--accent);letter-spacing:.06em;text-transform:uppercase;font-weight:600;}
.home-article-level{font-size:11px;color:var(--text5);border:1px solid var(--border3);border-radius:100px;padding:2px 8px;}
.home-article-read{font-size:12px;color:var(--text5);}
.home-article-title{font-family:var(--font-head);font-weight:600;font-size:20px;line-height:1.25;letter-spacing:-.02em;margin:0;}

/* PROGRESS SECTION */
.home-progress{max-width:1240px;margin:0 auto;padding:0 32px 80px;}
.home-progress-inner{border:1px solid var(--border2);border-radius:16px;padding:32px;background:var(--bg3);}
.home-progress-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;}
.home-progress-title{font-family:var(--font-head);font-weight:700;font-size:22px;letter-spacing:-.02em;}
.home-progress-rating{text-align:right;}
.home-progress-rating-num{font-family:var(--font-head);font-weight:700;font-size:48px;letter-spacing:-.03em;color:var(--accent);line-height:1;}
.home-progress-rating-label{font-size:12px;color:var(--text5);letter-spacing:.06em;text-transform:uppercase;}
.home-progress-chart{height:120px;position:relative;}
.home-progress-empty{font-size:14px;color:var(--text5);text-align:center;padding:40px 0;}

/* TEST OVERLAY */
.xpt-test-overlay{position:fixed;inset:0;z-index:120;background:#080808;display:flex;flex-direction:column;overflow:auto;}
.xpt-test-header{padding:20px 32px;border-bottom:1px solid var(--border);}
.xpt-test-header-inner{max-width:1100px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:24px;}
.xpt-test-title{font-family:var(--font-head);font-weight:700;font-size:15px;letter-spacing:.18em;text-transform:uppercase;}
.xpt-test-score-label{font-size:11px;color:var(--text5);letter-spacing:.08em;text-transform:uppercase;}
.xpt-test-score-num{font-family:var(--font-head);font-weight:700;font-size:22px;color:var(--accent);}
.xpt-test-progress-bar{max-width:1100px;margin:16px auto 0;}
.xpt-test-progress-info{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;}
.xpt-test-progress-label{font-size:13px;color:#aaa;font-weight:600;}
.xpt-test-progress-band{font-size:12px;color:var(--text4);letter-spacing:.06em;text-transform:uppercase;}
.xpt-test-progress-track{height:6px;background:#1a1a1a;border-radius:100px;overflow:hidden;}
.xpt-test-progress-fill{height:100%;background:var(--accent);border-radius:100px;transition:width .4s ease;}
.xpt-test-body{flex:1;display:flex;align-items:center;justify-content:center;padding:32px;overflow:auto;}
.xpt-test-content{display:flex;flex-direction:column;align-items:center;gap:22px;}
.xpt-test-type{display:flex;align-items:center;gap:12px;}
.xpt-test-type-label{font-size:13px;color:var(--text5);letter-spacing:.08em;text-transform:uppercase;}
.xpt-test-type-name{font-family:var(--font-head);font-weight:600;font-size:16px;}
.xpt-test-board-wrap{position:relative;display:flex;align-items:flex-start;gap:24px;}
.xpt-timer{display:flex;flex-direction:column;align-items:center;gap:18px;padding-top:6px;}
.xpt-timer-hint{padding:10px 18px;background:transparent;color:#fff;border:1px solid var(--border4);border-radius:8px;font-weight:600;font-size:13.5px;cursor:pointer;white-space:nowrap;transition:border-color .2s;}
.xpt-timer-hint:hover{border-color:#4a4a4a;}
.xpt-timer-hint-text{max-width:150px;font-size:12.5px;line-height:1.5;color:var(--accent);text-align:center;}

/* TEST RESULT */
.xpt-test-result{position:fixed;inset:0;z-index:120;background:#080808;display:flex;align-items:center;justify-content:center;padding:32px;overflow:auto;}
.xpt-test-result-inner{max-width:640px;width:100%;}
.xpt-test-result-label{font-size:13px;color:var(--text5);letter-spacing:.1em;text-transform:uppercase;margin-bottom:18px;text-align:center;}
.xpt-test-result-rating{font-family:var(--font-head);font-weight:700;font-size:96px;line-height:1;letter-spacing:-.04em;color:var(--accent);text-align:center;}
.xpt-test-result-badge{display:inline-block;margin-top:18px;padding:8px 18px;border:1px solid var(--border4);border-radius:100px;font-size:14px;font-weight:600;color:#cfcfcf;}
.xpt-test-result-stats{font-size:14px;color:var(--text4);margin-top:14px;text-align:center;}
.xpt-test-breakdown{border:1px solid #1c1c1c;border-radius:16px;padding:28px;background:#0c0c0c;margin:24px 0;}
.xpt-test-breakdown-label{font-size:12px;color:var(--text5);letter-spacing:.08em;text-transform:uppercase;margin-bottom:20px;}
.xpt-test-breakdown-item{margin-bottom:20px;}
.xpt-test-breakdown-item:last-child{margin-bottom:0;}
.xpt-test-breakdown-item-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:9px;}
.xpt-test-breakdown-item-name{font-family:var(--font-head);font-weight:600;font-size:16px;}
.xpt-test-breakdown-item-stat{font-size:13px;color:var(--text4);}
.xpt-test-breakdown-track{height:8px;background:#1a1a1a;border-radius:100px;overflow:hidden;}
.xpt-test-breakdown-fill{height:100%;border-radius:100px;}
.xpt-test-result-msg{border-left:2px solid var(--accent);padding:4px 0 4px 22px;margin-bottom:32px;}
.xpt-test-result-msg p{font-size:17px;line-height:1.6;color:#cfcfcf;margin:0;}
.xpt-test-result-btns{display:flex;gap:13px;justify-content:center;flex-wrap:wrap;}

@media(max-width:900px){
  .home-daily-inner{grid-template-columns:1fr;gap:32px;}
  .home-hero-inner{grid-template-columns:1fr;}
  .home-hero-board{display:none;}
  .home-hero-h1{font-size:40px;}
  .home-levels-grid{grid-template-columns:1fr;}
  .home-articles-grid{grid-template-columns:1fr;}
}
