:root{--bg: #05070d;--bg-raised: #0a0e1a;--surface: #0d1322;--surface-2: #111a2e;--border: #1d2740;--border-strong: #2a3a5e;--text: #e7eaf4;--text-muted: #9aa3b8;--text-faint: #5d6679;--indigo: #6366f1;--indigo-bright: #818cf8;--indigo-glow: rgba(99, 102, 241, .45);--green: #34d399;--green-deep: #10b981;--amber: #fbbf24;--red: #f87171;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.55;font-weight:400;color-scheme:dark;color:var(--text);background-color:var(--bg);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:radial-gradient(1100px 520px at 70% -10%,rgba(99,102,241,.16),transparent 60%),radial-gradient(900px 480px at 0% 18%,rgba(56,89,199,.1),transparent 55%),var(--bg);background-attachment:fixed}#root{min-height:100vh}a{font-weight:500;color:var(--indigo-bright);text-decoration:none}a:hover{color:#a5b4fc}h1,h2,h3,h4{letter-spacing:-.02em}::selection{background:#6366f159}.shell{max-width:1100px;margin:0 auto;padding:0 24px 80px}.topbar{display:flex;justify-content:space-between;align-items:center;padding:20px 0}.brand{display:flex;align-items:center;gap:10px;font-weight:700;font-size:17px;letter-spacing:-.01em}.brand-mark{width:30px;height:30px;border-radius:8px;display:grid;place-items:center;font-size:15px;background:linear-gradient(135deg,var(--indigo),#4338ca);box-shadow:0 0 18px var(--indigo-glow)}.credits-pill{font-size:13px;font-weight:600;color:var(--indigo-bright);background:#6366f11f;border:1px solid rgba(99,102,241,.3);border-radius:999px;padding:5px 14px}.hero{text-align:center;padding:56px 0 28px}.hero-eyebrow{display:inline-block;font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--indigo-bright);background:#6366f11a;border:1px solid rgba(99,102,241,.25);border-radius:999px;padding:6px 14px;margin-bottom:22px}.hero h1{font-size:clamp(30px,5.4vw,52px);line-height:1.12;margin:0 auto 18px;max-width:34ch;background:linear-gradient(180deg,#f4f5fb 30%,#a8b0d8);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.hero h1 .accent{background:linear-gradient(120deg,var(--indigo-bright),#c4b5fd);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.hero-sub{color:var(--text-muted);font-size:clamp(15px,2vw,18px);max-width:54ch;margin:0 auto}button{font-family:inherit;font-size:15px;font-weight:600;color:var(--text);background:var(--surface-2);border:1px solid var(--border-strong);border-radius:10px;padding:10px 20px;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,background .18s ease,opacity .18s ease}button:hover:not(:disabled){border-color:var(--indigo);transform:translateY(-1px);box-shadow:0 6px 20px #6366f12e}button:active:not(:disabled){transform:translateY(0)}button:disabled{opacity:.45;cursor:not-allowed}button:focus-visible{outline:2px solid var(--indigo-bright);outline-offset:2px}.btn-primary{background:linear-gradient(135deg,var(--indigo),#4f46e5);border:none;color:#fff;font-size:16px;padding:14px 36px;border-radius:12px;box-shadow:0 4px 24px #6366f159}.btn-primary:hover:not(:disabled){border-color:transparent;box-shadow:0 8px 32px #6366f18c;transform:translateY(-2px)}.btn-ghost{background:transparent;border-color:var(--border);color:var(--text-muted)}.btn-ghost:hover:not(:disabled){color:var(--text)}.analyzer{margin-top:36px}.panes{display:grid;grid-template-columns:1fr 1fr;gap:20px}.pane{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:20px;display:flex;flex-direction:column;transition:border-color .2s ease,box-shadow .2s ease}.pane:focus-within{border-color:#6366f18c;box-shadow:0 0 0 1px #6366f159,0 0 32px #6366f114}.pane-title{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;margin:0 0 14px;color:var(--text)}.pane-title .dot{width:7px;height:7px;border-radius:50%;background:var(--indigo-bright);box-shadow:0 0 8px var(--indigo-glow)}textarea{width:100%;flex:1;min-height:240px;resize:vertical;padding:14px;border-radius:10px;border:1px solid var(--border);background:var(--bg-raised);color:var(--text);font-family:inherit;font-size:14px;line-height:1.55;transition:border-color .2s ease}textarea:focus{outline:none;border-color:#6366f199}textarea::placeholder{color:var(--text-faint)}.file-label{display:inline-flex;align-items:center;gap:8px;align-self:flex-start;font-size:13px;font-weight:600;color:var(--indigo-bright);background:#6366f11a;border:1px dashed rgba(99,102,241,.4);border-radius:9px;padding:8px 14px;margin-bottom:12px;cursor:pointer;transition:background .18s ease,border-color .18s ease}.file-label:hover{background:#6366f12e;border-color:var(--indigo-bright)}.file-label input{display:none}.hint-info{color:var(--indigo-bright);font-size:13px;margin-bottom:10px}.hint-error{color:var(--red);font-size:13px;margin-bottom:10px}.char-limit{margin-top:8px;font-size:12.5px;color:var(--text-muted);text-align:right}.char-limit.over{color:var(--red);text-align:left;line-height:1.45}.free-scan-note{margin:14px 0 0;font-size:13.5px;font-weight:600;color:var(--indigo-bright)}.notice-banner{margin-top:28px;padding:14px 18px;border-radius:12px;font-size:14px;line-height:1.5;color:var(--text-muted);background:#fbbf2412;border:1px solid rgba(251,191,36,.3)}.notice-banner strong{color:var(--amber)}.analyze-row{display:flex;justify-content:center;margin-top:24px}.scorecard{position:relative;margin-top:36px;background:var(--surface);border:1px solid var(--border);border-radius:20px;padding:36px 28px;display:flex;flex-direction:column;gap:24px;animation:card-enter .5s cubic-bezier(.22,1,.36,1) both}@keyframes card-enter{0%{opacity:0;transform:translateY(16px) scale(.985)}to{opacity:1;transform:none}}.score-hero{display:flex;flex-direction:column;align-items:center;gap:14px;text-align:center}.score-ring-wrap{position:relative;display:grid;place-items:center}.score-ring-wrap:before{content:"";position:absolute;top:8%;right:8%;bottom:8%;left:8%;border-radius:50%;background:radial-gradient(circle,var(--ring-glow, var(--indigo-glow)) 0%,transparent 70%);animation:ring-pulse 2.6s ease-in-out infinite;pointer-events:none}@keyframes ring-pulse{0%,to{opacity:.45;transform:scale(.96)}50%{opacity:.9;transform:scale(1.06)}}.score-ring-svg circle.track{stroke:#1a2238}.score-verdict{font-size:18px;font-weight:700;margin:0}.score-label{margin:0;font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--text-faint);font-weight:600}.outlook{border-radius:12px;padding:16px 18px;border:1px solid}.outlook p{margin:6px 0 0;color:var(--text-muted)}.outlook-likely{background:#10b98114;border-color:#10b9814d}.outlook-borderline{background:#fbbf2412;border-color:#fbbf2447}.outlook-unlikely{background:#f8717112;border-color:#f8717147}.outlook-neutral{background:var(--surface-2);border-color:var(--border)}.req-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.req-list h4{margin:0 0 10px;font-size:14px}.req-list ul{margin:0;padding:0;list-style:none}.req-list li{display:flex;gap:9px;margin-bottom:7px;line-height:1.4;font-size:14px}.req-yes{color:var(--green);font-weight:700}.req-no{color:var(--red);font-weight:700}.req-skill-present{color:var(--text)}.req-skill-missing{color:var(--text-faint)}.req-empty{color:var(--text-faint);margin:0;font-size:14px}.feedback-box{background:var(--surface-2);border-radius:12px;padding:18px;border-left:3px solid var(--accent, var(--indigo))}.feedback-box p,.section-note p{margin:8px 0 0;color:var(--text-muted)}.confetti-canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none;border-radius:inherit;z-index:5}.paywall{margin-top:48px;text-align:center}.paywall h2{margin-bottom:6px}.paywall .sub{color:var(--text-muted);margin:0}.pack-row{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;margin:28px 0}.pack-card{display:flex;flex-direction:column;gap:6px;padding:22px 30px;border-radius:14px;border:1px solid var(--border);background:var(--surface);min-width:130px}.pack-card strong{font-size:19px}.pack-card .price{color:var(--indigo-bright);font-weight:700}.pack-card:hover:not(:disabled){border-color:var(--indigo);box-shadow:0 8px 30px #6366f138}.testimonials{margin-top:72px}.testimonials-title{text-align:center;font-size:13px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--text-faint);margin:0 0 24px}.testimonial-row{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.testimonial-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:22px;display:flex;flex-direction:column;gap:12px;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.testimonial-card:hover{transform:translateY(-3px);border-color:#6366f166;box-shadow:0 10px 36px #00000059}.stars{color:var(--amber);font-size:14px;letter-spacing:2px}.testimonial-quote{margin:0;font-size:14.5px;line-height:1.6;color:var(--text)}.testimonial-who{margin-top:auto;font-size:13px;color:var(--text-muted)}.testimonial-who strong{color:var(--text)}.demo{max-width:760px;margin:44px auto 0;background:#0d1322d9;border:1px solid var(--border);border-radius:18px;box-shadow:0 24px 80px #00000080,0 0 60px #6366f112;overflow:hidden;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.demo-chrome{display:flex;gap:7px;padding:12px 16px;border-bottom:1px solid var(--border)}.demo-chrome span{width:10px;height:10px;border-radius:50%;background:var(--border-strong)}.demo-body{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:22px 22px 26px}.demo-panel{position:relative;background:var(--bg-raised);border:1px solid var(--border);border-radius:12px;padding:14px;min-height:190px}.demo-panel-label{font-size:10.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--text-faint);margin-bottom:12px}.demo-upload-box{position:absolute;top:38px;right:14px;bottom:14px;left:14px;border:1.5px dashed rgba(99,102,241,.55);border-radius:10px;display:grid;place-items:center;color:var(--indigo-bright);font-size:12.5px;font-weight:600;animation:upload-glow 1.1s ease-in-out 2,demo-vanish .35s ease 1.05s forwards}@keyframes upload-glow{0%,to{box-shadow:0 0 #6366f100}50%{box-shadow:0 0 26px #6366f180,inset 0 0 18px #6366f126}}@keyframes demo-vanish{to{opacity:0;visibility:hidden}}.demo-ghost{position:absolute;top:4px;left:50%;width:64px;height:80px;border-radius:6px;background:linear-gradient(180deg,#243049,#16203a);border:1px solid var(--border-strong);opacity:0;filter:blur(6px);animation:ghost-arrive 1s cubic-bezier(.22,1,.36,1) .1s forwards,demo-vanish .3s ease 1.1s forwards;z-index:2}@keyframes ghost-arrive{0%{opacity:0;transform:translate(-50%,-28px) scale(1.12) rotate(-4deg);filter:blur(10px)}55%{opacity:.9}to{opacity:1;transform:translate(-50%,46px) scale(1) rotate(0);filter:blur(1.5px)}}.demo-line{height:9px;border-radius:4px;background:linear-gradient(90deg,#2c3a5c,#222d49);margin-bottom:9px;opacity:0;transform:translate(-8px);animation:line-in .4s cubic-bezier(.22,1,.36,1) forwards;animation-delay:var(--d)}.demo-line.title{height:12px;width:55%;background:linear-gradient(90deg,var(--indigo),#4f46e5);box-shadow:0 0 10px #6366f14d}@keyframes line-in{to{opacity:1;transform:none}}.demo-type{font-size:12px;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;width:0;border-right:2px solid var(--indigo-bright);margin-bottom:10px;animation:typing .9s steps(24) 2.6s forwards,caret-blink .55s step-end 2.6s 4,caret-off .01s linear 4.8s forwards}@keyframes typing{to{width:100%}}@keyframes caret-blink{50%{border-color:transparent}}@keyframes caret-off{to{border-color:transparent}}.demo-line.jd{animation-name:line-in}.demo-score{position:absolute;left:50%;bottom:16px;transform:translate(-50%);width:max-content;max-width:calc(100% - 28px);display:flex;align-items:center;gap:14px;background:#0a0e1aeb;border:1px solid rgba(52,211,153,.35);border-radius:14px;padding:12px 18px;box-shadow:0 12px 40px #0000008c,0 0 30px #34d3991f;opacity:0;animation:score-card-in .55s cubic-bezier(.22,1,.36,1) 3.9s forwards;z-index:3}@keyframes score-card-in{0%{opacity:0;transform:translate(-50%,14px) scale(.92)}to{opacity:1;transform:translate(-50%) scale(1)}}.demo-ring-arc{stroke-dasharray:var(--circ);stroke-dashoffset:var(--circ);animation:arc-sweep 1.5s cubic-bezier(.33,1,.68,1) 4s forwards;filter:drop-shadow(0 0 6px rgba(52,211,153,.6))}@keyframes arc-sweep{to{stroke-dashoffset:var(--target)}}.demo-badge{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;color:var(--green);background:#10b9811f;border:1px solid rgba(52,211,153,.4);border-radius:999px;padding:5px 12px;opacity:0;transform:scale(.6);animation:badge-pop .5s cubic-bezier(.34,1.56,.64,1) 5.4s forwards}@keyframes badge-pop{to{opacity:1;transform:scale(1)}}.demo-score-meta{display:flex;flex-direction:column;gap:6px}.demo-score-label{font-size:10.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-faint)}@media (prefers-reduced-motion: reduce){.demo *,.scorecard{animation-duration:.01ms!important;animation-delay:0ms!important;animation-iteration-count:1!important}.score-ring-wrap:before{animation:none}button,.testimonial-card{transition:none}}@media (max-width: 860px){.testimonial-row{grid-template-columns:1fr}}@media (max-width: 720px){.panes,.req-grid{grid-template-columns:1fr}.hero{padding-top:36px}.demo-body{grid-template-columns:1fr;padding-bottom:96px}.demo-panel{min-height:150px}.shell{padding:0 16px 64px}.scorecard{padding:28px 18px}}
