*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--ink:#1a1714;--paper:#f5f2ec;--accent:#c8441a;--accent-light:#f7e8e2;--muted:#7a7469;--border:#1a17141f;--success:#2d8a4e;--success-bg:#edf7f1;--warn-bg:#fef8ec;--warn:#9a6700;--serif:"DM Serif Display",Georgia,serif;--sans:"DM Sans",system-ui,sans-serif}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);font-family:var(--sans);min-height:100vh;font-weight:300;line-height:1.6}nav{border-bottom:1px solid var(--border);background:var(--paper);z-index:100;justify-content:space-between;align-items:center;padding:1.125rem 2rem;display:flex;position:sticky;top:0}.logo{font-family:var(--serif);color:var(--ink);cursor:pointer;font-size:1.2rem;text-decoration:none}.logo span{color:var(--accent)}.nav-link{color:var(--muted);cursor:pointer;font-size:.875rem;font-family:var(--sans);background:0 0;border:none}.nav-link:hover{color:var(--ink)}.landing-hero{text-align:center;max-width:820px;margin:0 auto;padding:5rem 2rem 4rem}.eyebrow{letter-spacing:.12em;text-transform:uppercase;color:var(--accent);margin-bottom:1.25rem;font-size:.75rem;font-weight:500}h1{font-family:var(--serif);letter-spacing:-.02em;margin-bottom:1.25rem;font-size:clamp(2.25rem,5vw,3.5rem);line-height:1.08}h1 em{color:var(--accent);font-style:italic}.hero-sub{color:var(--muted);max-width:520px;margin:0 auto 2.25rem;font-size:1.0625rem;line-height:1.65}.btn-hero{background:var(--accent);color:#fff;cursor:pointer;font-size:1rem;font-weight:500;font-family:var(--sans);border:none;border-radius:2px;padding:1rem 2.5rem;transition:background .2s}.btn-hero:hover{background:#a83614}.hero-note{color:var(--muted);margin-top:1rem;font-size:.8125rem}.trust-row{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:center;gap:2rem;margin-top:3rem;padding-top:2rem;display:flex}.trust-item{text-align:center}.trust-num{font-family:var(--serif);color:var(--ink);font-size:1.75rem;display:block}.trust-label{color:var(--muted);font-size:.8125rem}.gen-wrap{max-width:680px;margin:0 auto;padding:2.5rem 2rem 4rem}.progress-header{justify-content:space-between;align-items:center;margin-bottom:.75rem;display:flex}.progress-text{color:var(--muted);font-size:.8125rem}.progress-pct{color:var(--accent);font-size:.8125rem;font-weight:500}.progress-bar-bg{background:var(--border);border-radius:2px;height:3px;margin-bottom:2.5rem;overflow:hidden}.progress-bar-fill{background:var(--accent);border-radius:2px;height:100%;transition:width .4s}.step-block{animation:.35s both fadeUp}@keyframes fadeUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.step-eyebrow{letter-spacing:.1em;text-transform:uppercase;color:var(--accent);margin-bottom:.625rem;font-size:.6875rem;font-weight:500}.step-q{font-family:var(--serif);color:var(--ink);margin-bottom:.625rem;font-size:1.5rem;line-height:1.2}.step-hint{color:var(--muted);margin-bottom:1.25rem;font-size:.875rem;line-height:1.6}.hint-example{border:1px solid var(--border);color:var(--muted);background:#fff;border-radius:2px;margin-bottom:1.25rem;padding:.75rem 1rem;font-size:.8125rem;font-style:italic;line-height:1.6}textarea,select{width:100%;font-family:var(--sans);color:var(--ink);border:1px solid var(--border);background:#fff;border-radius:2px;padding:.875rem 1rem;font-size:.9375rem;line-height:1.6;transition:border-color .2s}textarea{resize:vertical;min-height:110px}textarea:focus,select:focus{border-color:var(--accent);outline:none}select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%237a7469' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-position:right 1rem center;background-repeat:no-repeat}.nav-buttons{align-items:center;gap:.75rem;margin-top:1.5rem;display:flex}.btn-next{background:var(--ink);color:var(--paper);cursor:pointer;font-size:.9375rem;font-weight:500;font-family:var(--sans);border:none;border-radius:2px;flex:1;padding:.875rem 2rem;transition:opacity .2s}.btn-next:hover{opacity:.85}.btn-next:disabled{opacity:.4;cursor:not-allowed}.btn-back{color:var(--muted);border:1px solid var(--border);cursor:pointer;font-size:.9375rem;font-family:var(--sans);white-space:nowrap;background:0 0;border-radius:2px;padding:.875rem 1.25rem;transition:all .2s}.btn-back:hover{border-color:var(--ink);color:var(--ink)}.spinner-wrap{text-align:center;padding:6rem 2rem}.spinner{border:2.5px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:40px;height:40px;margin:0 auto 1.5rem;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.spinner-title{font-family:var(--serif);margin-bottom:.5rem;font-size:1.5rem}.spinner-sub{color:var(--muted);font-size:.875rem}.result-wrap{max-width:820px;margin:0 auto;padding:2.5rem 2rem 4rem}.result-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:2rem;display:flex}.result-title{font-family:var(--serif);margin-bottom:.375rem;font-size:1.875rem}.result-sub{color:var(--muted);font-size:.9rem}.result-actions{flex-wrap:wrap;gap:.625rem;display:flex}.btn-action{cursor:pointer;font-size:.875rem;font-weight:500;font-family:var(--sans);white-space:nowrap;border:1px solid var(--border);color:var(--ink);background:#fff;border-radius:2px;padding:.625rem 1.125rem;transition:all .2s}.btn-action:hover{background:var(--paper)}.btn-action.primary{background:var(--accent);color:#fff;border-color:var(--accent)}.btn-action.primary:hover{background:#a83614}.score-card{border:1px solid var(--border);background:#fff;border-radius:4px;grid-template-columns:auto 1fr;align-items:center;gap:1.5rem;margin-bottom:1.25rem;padding:1.75rem 2rem;display:grid}.score-big{font-family:var(--serif);font-size:4rem;line-height:1}.score-label{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:.5rem;font-size:.75rem;font-weight:500}.score-bar-bg{background:var(--border);border-radius:3px;height:6px;margin-bottom:.5rem;overflow:hidden}.score-bar-fill{border-radius:3px;height:100%;transition:width .8s}.score-desc{color:var(--muted);font-size:.875rem}.cards-row{grid-template-columns:1fr 1fr;gap:1.25rem;margin-bottom:1.25rem;display:grid}.info-card{border:1px solid var(--border);background:#fff;border-radius:4px;padding:1.5rem}.info-card-label{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:.875rem;font-size:.6875rem;font-weight:500}.keyword-wrap{flex-wrap:wrap;gap:6px;display:flex}.kw{background:var(--success-bg);color:var(--success);border-radius:100px;padding:3px 10px;font-size:.75rem}.strength-item{color:var(--ink);border-bottom:1px solid var(--border);align-items:flex-start;gap:.5rem;padding:.5rem 0;font-size:.875rem;line-height:1.5;display:flex}.strength-item:last-child{border-bottom:none;padding-bottom:0}.check-icon{color:var(--success);flex-shrink:0}.cv-output-card{border:1px solid var(--border);background:#fff;border-radius:4px;margin-bottom:1.25rem;overflow:hidden}.cv-tabs{border-bottom:1px solid var(--border);display:flex}.cv-tab{cursor:pointer;font-size:.875rem;font-family:var(--sans);color:var(--muted);background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:.875rem 1.5rem;transition:all .15s}.cv-tab.active{color:var(--accent);border-bottom-color:var(--accent);font-weight:500}.cv-output-body{color:var(--ink);white-space:pre-wrap;max-height:420px;padding:1.75rem 2rem;font-family:Georgia,serif;font-size:.9rem;line-height:1.75;overflow-y:auto}.tip-card{background:var(--warn-bg);border:1px solid #9a670033;border-radius:4px;align-items:flex-start;gap:.875rem;margin-bottom:1.25rem;padding:1.25rem 1.5rem;display:flex}.tip-text{color:var(--warn);font-size:.875rem;line-height:1.6}.tip-text strong{margin-bottom:.25rem;font-weight:500;display:block}.restart-bar{text-align:center;border-top:1px solid var(--border);margin-top:1rem;padding-top:1rem}.btn-restart{color:var(--muted);cursor:pointer;font-size:.875rem;font-family:var(--sans);text-underline-offset:3px;background:0 0;border:none;text-decoration:underline}.btn-restart:hover{color:var(--ink)}.error-box{text-align:center;max-width:500px;color:var(--accent);background:#fef2f2;border:1px solid #c8441a33;border-radius:4px;margin:2rem auto;padding:1.25rem 1.5rem;font-size:.9rem}.site-footer{border-top:1px solid var(--border);background:var(--paper);margin-top:2rem}.footer-inner{width:min(100% - 4rem,1220px);min-height:128px;color:var(--muted);grid-template-columns:1fr auto 1fr;align-items:center;gap:2rem;margin:0 auto;font-size:.75rem;display:grid}.footer-brand{align-items:center;gap:.75rem;display:flex}.footer-logo{width:42px;height:auto;display:block}.footer-copy{text-align:center}.footer-top{color:var(--muted);font:500 .75rem var(--sans);cursor:pointer;background:0 0;border:0;justify-self:end;transition:color .2s}.footer-top:hover{color:var(--accent)}@media (max-width:640px){.cards-row,.score-card{grid-template-columns:1fr}.score-big{font-size:3rem}.gen-wrap,.result-wrap{padding:1.5rem 1rem 3rem}h1{font-size:2rem}nav{padding:1rem 1.25rem}.footer-inner{text-align:center;grid-template-columns:1fr;justify-items:center;gap:1rem;width:min(100% - 2rem,1220px);min-height:0;padding:2rem 0}.footer-brand{flex-direction:column}.footer-copy{order:2}.footer-top{order:3;justify-self:center}}
