@import "https://fonts.googleapis.com/css2?family=Montserrat:wght@400;600;700;800&display=swap";:root{color:#111827;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#2c3340;font-family:Montserrat,Segoe UI,Tahoma,Geneva,Verdana,sans-serif;font-weight:400;line-height:1.5}*{box-sizing:border-box}body{background:linear-gradient(120deg,#4b5563 0%,#374151 52%,#2f3846 100%);min-height:100vh;margin:0}h1,h2,p{margin:0}.container{flex-direction:column;gap:1rem;width:min(900px,100% - 2rem);margin:0 auto;padding:3rem 0;display:flex}.brand-row{align-items:center;gap:.75rem;display:flex}.brand-logo{object-fit:contain;width:48px;height:48px}.brand-wordmark{letter-spacing:-.02em;margin:0;font-size:clamp(2rem,5vw,3.6rem);font-weight:800;line-height:1}.brand-wordmark .leet{color:#ff6a00}.brand-wordmark .lens{background:linear-gradient(#17a4e2 0%,#0f75c8 45%,#0048a8 100%);color:#0000;-webkit-background-clip:text;background-clip:text}.subtitle{color:#cbd5e1;margin-top:0}.card{background:#fff;border:1px solid #e5e7eb;border-radius:.75rem;padding:1.25rem;box-shadow:0 10px 24px #0f172a0f}.analyze-card{background:linear-gradient(120deg,#262d3b 0%,#1f2634 52%,#171e2b 100%);border-color:#384356;box-shadow:0 14px 26px #02061759}.coach-card{background:linear-gradient(120deg,#283243 0%,#202a39 52%,#192332 100%);border-color:#3b4b60;box-shadow:0 14px 26px #02061759}.analyze-card h2,.coach-card h2{color:#f8fafc}.coach-card .topics-note{color:#cbd5e1}.coach-card .saved-note{color:#5eead4}.card h2{margin-top:0}.analyze-form{flex-wrap:wrap;gap:.75rem;display:flex}.analyze-form input{border:1px solid #d1d5db;border-radius:.65rem;flex:1;min-width:240px;padding:.7rem .9rem;font-size:1rem}.analyze-form button{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:.65rem;padding:.7rem 1.1rem;font-weight:600}.analyze-form button:disabled{opacity:.75;cursor:not-allowed}.error{color:#dc2626;margin-top:.5rem;font-weight:600}.total-percent{color:#374151;margin-top:.3rem}.difficulty-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem;margin-top:1rem;display:grid}.dashboard-grid{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.dashboard-card{color:#e5e7eb;background:linear-gradient(#22262f 0%,#171b22 100%);border:1px solid #2c3341;border-radius:.9rem;padding:1rem;box-shadow:0 10px 20px #0206174d}.solved-card{justify-content:space-between;align-items:center;gap:1rem;display:flex}.ring-wrap{width:210px;height:210px;position:relative}.progress-ring{width:100%;height:100%;transform:rotate(-90deg)}.ring-track{fill:none;stroke:#354155;stroke-width:6px}.ring-progress{fill:none;stroke:#f59e0b;stroke-width:6px;stroke-linecap:round;transition:stroke-dasharray .7s}.ring-center{text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.ring-center h3{margin:0;font-size:2rem;line-height:1}.ring-center h3 span{color:#a1a1aa;font-size:1.3rem}.ring-center p{color:#22c55e;margin:.35rem 0 0;font-size:1.9rem}.ring-center small{color:#9ca3af;margin-top:.45rem}.difficulty-pills{flex-direction:column;flex:1;gap:.6rem;display:flex}.difficulty-pill{background:#2b3039;border-radius:.65rem;padding:.65rem .75rem}.difficulty-pill h3{margin:0;font-size:1.2rem}.difficulty-pill p{margin:.25rem 0 0;font-weight:700}.difficulty-pill.easy h3{color:#22d3ee}.difficulty-pill.medium h3{color:#facc15}.difficulty-pill.hard h3{color:#ef4444}.badge-card{flex-direction:column;justify-content:space-between;display:flex}.badge-card h3{color:#cbd5e1;margin:0}.badge-count{margin:.35rem 0;font-size:2.8rem;font-weight:700}.badge-note{color:#94a3b8;margin:0}.badge-card h4{color:#f8fafc;margin:.25rem 0 0;font-size:1.6rem}.activity-card{grid-column:1/-1;padding-bottom:1.5rem}.activity-head{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.7rem;display:flex}.activity-head h3{color:#f8fafc;margin:0}.activity-head p{color:#cbd5e1;margin:0}.heatmap-grid.year-grid{grid-template-columns:repeat(53,10px);justify-content:start;gap:.2rem}.month-ticks{height:1.2rem;margin-top:.55rem;position:relative}.month-ticks span{color:#94a3b8;font-size:.78rem;position:absolute;transform:translate(-50%)}.difficulty-card{color:#0f172a;border-radius:.7rem;padding:.9rem}.difficulty-card h3{margin:0}.difficulty-card .value{margin-top:.55rem;font-size:1.15rem;font-weight:700}.difficulty-card .percent{margin-top:.2rem;font-size:.95rem;font-weight:600}.difficulty-card.easy{background:#e6fffb;border:1px solid #00b8a3}.difficulty-card.medium{background:#fff8e6;border:1px solid #ffc01e}.difficulty-card.hard{background:#ffecef;border:1px solid #ff375f}.topics-note{color:#4b5563}.topics-list{flex-direction:column;gap:.75rem;margin-top:.9rem;display:flex}.topic-row{flex-direction:column;gap:.35rem;display:flex}.topic-head{justify-content:space-between;align-items:center;gap:.8rem;font-size:.94rem;display:flex}.topic-track{background:#e5e7eb;border-radius:999px;width:100%;height:9px;overflow:hidden}.topic-fill{background:linear-gradient(90deg,#38bdf8,#2563eb);border-radius:999px;height:100%}.topic-toggle{color:#0f172a;cursor:pointer;background:#f8fafc;border:1px solid #cbd5e1;border-radius:.6rem;margin-top:.9rem;padding:.55rem .9rem;font-weight:600}.topic-dark{color:#e5e7eb;background:linear-gradient(#1f2430 0%,#141925 100%);border-color:#334155}.topic-dark h2,.topic-dark h3{color:#f8fafc}.topic-dark .topics-note{color:#cbd5e1}.topic-dark .topic-graph-head{color:#e2e8f0}.topic-dark .topic-graph-track{background:#334155}.topic-dark .topic-toggle{color:#e2e8f0;background:#1e293b;border-color:#475569}.topic-graph-list{flex-direction:column;gap:.65rem;margin-top:.9rem;display:flex}.topic-graph-row{flex-direction:column;gap:.3rem;display:flex}.topic-graph-head{color:#1f2937;justify-content:space-between;align-items:center;font-size:.9rem;display:flex}.topic-graph-track{background:#e5e7eb;border-radius:999px;height:10px;overflow:hidden}.topic-graph-fill{border-radius:999px;height:100%}.topic-table-wrap{margin-top:1.1rem}.topic-table-wrap h3,.heatmap-wrap h3{color:#0f172a;margin:0 0 .6rem}.topic-table{border-collapse:collapse;background:#fff;border:1px solid #dbeafe;border-radius:.7rem;width:100%;overflow:hidden}.topic-table th,.topic-table td{text-align:left;border-bottom:1px solid #e2e8f0;padding:.62rem .7rem;font-size:.92rem}.topic-table th{color:#1e3a8a;background:#eff6ff}.topic-table tbody tr:last-child td{border-bottom:none}.heatmap-wrap{margin-top:1.2rem}.heatmap-grid{grid-template-columns:repeat(20,minmax(0,1fr));gap:.3rem;margin-top:.6rem;display:grid}.heat-cell{border:1px solid #0f172a1f;border-radius:.2rem;width:10px;height:10px;display:inline-block}.heat-cell.level-0{background:#2f3642}.heat-cell.level-1{background:#166534}.heat-cell.level-2{background:#16a34a}.heat-cell.level-3{background:#22c55e}.heat-cell.level-4{background:#38bdf8}.heatmap-legend{color:#475569;align-items:center;gap:.35rem;margin-top:.65rem;font-size:.82rem;display:flex}.coach-button{color:#fff;cursor:pointer;background:linear-gradient(#0f75c8,#0048a8);border:none;border-radius:.65rem;margin-top:.9rem;padding:.75rem 1.1rem;font-weight:700}.saved-note{color:#0f766e;margin-top:.6rem;font-weight:600}.coach-button:disabled{opacity:.75;cursor:not-allowed}.report-page{z-index:40;background:#3b475b;padding:1.5rem;animation:.28s reportSlideIn;position:fixed;inset:0;overflow-y:auto}.report-header{justify-content:space-between;align-items:center;gap:1rem;max-width:1000px;margin:0 auto 1rem;display:flex}.report-header h2{color:#f8fafc;margin:0}.close-report{color:#e2e8f0;cursor:pointer;background:#1e293b;border:1px solid #334155;border-radius:.65rem;padding:.5rem .95rem;font-weight:600}.report-loader-wrap{text-align:center;color:#e2e8f0;background:#1f2937;border:1px solid #334155;border-radius:.9rem;max-width:1000px;margin:2.2rem auto 0;padding:1.4rem}.loader{border:4px solid #334155;border-top-color:#e2e8f0;border-radius:999px;width:44px;height:44px;margin:0 auto .7rem;animation:1s linear infinite spin}.report-sections{grid-template-columns:1fr;gap:.9rem;max-width:1000px;margin:.9rem auto 0;display:grid}.report-score-card{background:#1e293bd1;border:1px solid #334155;border-radius:1rem;align-items:center;gap:1rem;max-width:1000px;margin:0 auto .9rem;padding:1rem;display:flex;box-shadow:0 14px 30px #02061752}.report-score-badge{text-align:center;color:#e2e8f0;background:#0f172a;border:1px solid #334155;border-radius:.9rem;min-width:168px;padding:.9rem}.score-value{color:#f8fafc;font-size:2.2rem;font-weight:800;line-height:1;display:inline-block}.score-max{margin-left:.2rem;font-size:1rem;font-weight:700;display:inline-block}.report-score-copy h3{color:#f8fafc;margin:0;font-size:1.15rem}.report-score-copy p{color:#cbd5e1;margin:.4rem 0 0}.report-priority-grid{grid-template-columns:1fr;gap:.9rem;max-width:1000px;margin:0 auto;display:grid}.report-section{background:#1e293bd6;border:1px solid #334155;border-radius:.9rem;padding:1rem;box-shadow:0 8px 18px #0206173d}.report-section.featured,.report-section.readiness{background:#1e293be6;border-color:#475569}.report-section h3{color:#f8fafc;margin-top:0;margin-bottom:.65rem}.section-title{letter-spacing:.01em;font-weight:800}.section-title-insights{color:#2563eb}.section-title-readiness{color:#0891b2}.section-title-weakness{color:#dc2626}.section-title-plan{color:#7c3aed}.section-title-verdict{color:#0f766e}.section-title-default{color:#e2e8f0}.report-section ul{margin:0;padding-left:0;list-style:none}.report-section li{color:#e2e8f0;opacity:0;animation:.52s forwards pointFadeIn;animation-delay:calc(var(--item-index,0) * .12s);background:#0f172a;border:1px solid #475569;border-radius:.65rem;margin-bottom:.5rem;padding:.65rem .75rem;line-height:1.45;transform:translateY(6px)}.report-section li:before{content:"•";color:#cbd5e1;margin-right:.45rem;font-weight:700}.section-row-list{flex-direction:column;gap:.7rem;display:flex}.section-item-card{opacity:0;animation:.52s forwards pointFadeIn;animation-delay:calc(var(--item-index,0) * .12s);background:#0f172a;border:1px solid #475569;border-radius:.75rem;padding:.72rem .85rem;transform:translateY(6px)}.section-item-heading{color:#e2e8f0;margin:0;font-weight:700}.section-item-headline{justify-content:space-between;align-items:center;gap:.8rem;display:flex}.readiness-average{background:#0f172a;border:1px solid #475569;border-radius:.8rem;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.8rem;padding:.7rem .85rem;display:flex}.readiness-average-label{color:#e2e8f0;font-weight:700}.readiness-score-pill{color:#f8fafc;background:#0b1326;border:1px solid #334155;border-radius:.8rem;align-items:baseline;gap:.18rem;padding:.35rem .7rem;font-size:1.1rem;font-weight:800;line-height:1;display:inline-flex}.readiness-score-pill small{font-size:.9rem;font-weight:700}.section-item-details{color:#cbd5e1;margin:.35rem 0 0;line-height:1.45}.token-default{color:#e2e8f0}.token-hard{color:#dc2626;font-weight:700}.token-medium{color:#ca8a04;font-weight:700}.token-easy{color:#16a34a;font-weight:700}.token-faang{color:#7c3aed;font-weight:800}.token-faang-custom{letter-spacing:.01em;gap:.04em;font-weight:900;display:inline-flex}.faang-f{color:#2563eb}.faang-a1{color:#6b7280}.faang-a2{color:#ca8a04}.faang-n{color:#dc2626}.faang-g{color:#2563eb}.token-product{color:#2563eb;font-weight:700}.token-service{color:#0f766e;font-weight:700}.token-strong{color:#15803d;font-weight:700}.token-weak{color:#dc2626;font-weight:700}.token-percent{color:#0ea5e9;font-weight:700}.reveal-on-scroll{opacity:0;will-change:opacity, transform;transition:opacity .72s cubic-bezier(.2,.8,.2,1),transform .76s cubic-bezier(.2,.8,.2,1);transform:translateY(22px)scale(.985)}.reveal-on-scroll.is-visible{opacity:1;transform:translateY(0)scale(1)}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pointFadeIn{to{opacity:1;transform:translateY(0)}}@keyframes reportSlideIn{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@media (width<=800px){.dashboard-grid{grid-template-columns:1fr}.solved-card{flex-direction:column}.ring-wrap{width:180px;height:180px}.activity-head{flex-direction:column;align-items:flex-start}.year-grid{grid-template-columns:repeat(28,10px)}.difficulty-grid{grid-template-columns:1fr}.report-score-card{flex-direction:column;align-items:stretch}.report-score-badge{min-width:0}.heatmap-grid{grid-template-columns:repeat(14,minmax(0,1fr))}}@media (prefers-reduced-motion:reduce){.report-section li,.section-item-card{opacity:1;animation:none;transform:none}.reveal-on-scroll,.reveal-on-scroll.is-visible{opacity:1;transition:none;transform:none}}
