@import "https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@300;400;500;600;700;800&family=JetBrains+Mono:wght@400;500;600;700&display=swap";:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg-primary:#0a0d14;--bg-secondary:#101623a6;--border-color:#ffffff14;--accent-primary:#2563eb;--accent-secondary:#38bdf8;--accent-cyan:#7dd3fc;--accent-gradient:linear-gradient(135deg, #38bdf8 0%, #2563eb 100%);--accent-glow:0 0 20px #38bdf84d;--accent-green:#10b981;--accent-red:#ef4444;--accent-amber:#f59e0b;--accent-overleaf:#4caf50;--text-main:#f3f4f6;--text-muted:#9ca3af;--glass-shadow:0 10px 30px -10px #000000b3;--font-display:"Plus Jakarta Sans", sans-serif;--font-sans:"Plus Jakarta Sans", sans-serif;--font-mono:"JetBrains Mono", monospace;--panel-bg:#070a1380;--input-bg:#ffffff08}*{box-sizing:border-box;font-family:var(--font-sans);margin:0;padding:0}select{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}select option{color:#fff;background-color:#151a26}body{background-color:var(--bg-primary);color:var(--text-main);min-height:100vh;position:relative;overflow-x:hidden}body:before{content:"";pointer-events:none;z-index:-1;background-image:radial-gradient(circle at 12% 18%,#38bdf81f 0%,#0000 45%),radial-gradient(circle at 85% 75%,#10b98114 0%,#0000 40%),linear-gradient(#ffffff02 1px,#0000 1px),linear-gradient(90deg,#ffffff02 1px,#0000 1px);background-size:200% 200%,200% 200%,40px 40px,40px 40px;animation:20s infinite bgShift;position:fixed;inset:0}.app-container{max-width:1360px;margin:0 auto;padding:30px 20px;animation:.6s cubic-bezier(.16,1,.3,1) both fadeIn}header.app-header{background:var(--bg-secondary);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-color);box-shadow:var(--glass-shadow);border-radius:16px;justify-content:space-between;align-items:center;margin-bottom:35px;padding:14px 24px;display:flex}h1.title{font-family:var(--font-display);letter-spacing:-.03em;background:linear-gradient(135deg,#fff 20%,#7dd3fc 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;align-items:center;gap:12px;font-size:1.8rem;font-weight:800;display:flex}.card{background:var(--bg-secondary);-webkit-backdrop-filter:blur(20px);border:1px solid var(--border-color);box-shadow:var(--glass-shadow);border-radius:20px;padding:28px;transition:transform .5s cubic-bezier(.16,1,.3,1),border-color .4s,box-shadow .5s cubic-bezier(.16,1,.3,1)}.card:hover{box-shadow:0 20px 40px -15px #38bdf826, var(--glass-shadow);border-color:#38bdf84d;transform:translateY(-2px)}h2{font-family:var(--font-display);letter-spacing:-.01em;color:#fff;margin-bottom:12px;font-size:1.15rem;font-weight:700}.section-label{letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);align-items:center;gap:6px;margin-bottom:10px;font-size:.7rem;font-weight:700;display:flex}.section-label:after{content:"";background:var(--border-color);flex:1;height:1px}input,textarea,select{background:var(--input-bg);border:1px solid var(--border-color);width:100%;color:var(--text-main);border-radius:10px;margin-bottom:12px;padding:13px 16px;font-size:.92rem;transition:all .25s cubic-bezier(.16,1,.3,1)}input:focus,textarea:focus,select:focus{background:#38bdf808;border-color:#38bdf8;outline:none;box-shadow:0 0 0 3px #38bdf826}.btn{background:var(--accent-gradient);color:#fff;cursor:pointer;border:none;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:12px 24px;font-size:.92rem;font-weight:600;transition:all .25s cubic-bezier(.16,1,.3,1);display:inline-flex}.btn:hover:not(:disabled){box-shadow:var(--accent-glow);transform:scale(1.02)}.btn:active:not(:disabled){transform:scale(.98)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{border:1px solid var(--border-color);color:var(--text-main);background:#ffffff0d}.btn-secondary:hover:not(:disabled){box-shadow:none;background:#ffffff1a;border-color:#fff3}.btn-overleaf{color:#fff;cursor:pointer;letter-spacing:.01em;background:linear-gradient(135deg,#4caf50 0%,#388e3c 100%);border:none;border-radius:10px;align-items:center;gap:7px;padding:9px 18px;font-size:.85rem;font-weight:700;transition:all .25s cubic-bezier(.16,1,.3,1);display:inline-flex;box-shadow:0 4px 14px #4caf5040}.btn-overleaf:hover:not(:disabled){transform:scale(1.03);box-shadow:0 6px 20px #4caf5066}.btn-overleaf:active:not(:disabled){transform:scale(.97)}.btn-overleaf:disabled{opacity:.5;cursor:not-allowed}.dashboard-grid{grid-template-columns:370px 1fr;gap:28px;display:grid}@media (width<=1024px){.dashboard-grid{grid-template-columns:1fr}}.profile-status{background:var(--panel-bg);border:1px solid var(--border-color);border-radius:12px;align-items:center;gap:12px;padding:14px 16px;display:flex}.profile-avatar{background:var(--accent-gradient);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;font-size:1rem;display:flex}.empty-state{text-align:center;flex-direction:column;align-items:center;gap:28px;padding:60px 30px;display:flex}.empty-state-icon{background:linear-gradient(135deg,#38bdf826 0%,#38bdf80d 100%);border:1px solid #38bdf833;border-radius:20px;justify-content:center;align-items:center;width:72px;height:72px;font-size:2rem;animation:.5s cubic-bezier(.34,1.56,.64,1) both scaleIn;display:flex}.empty-state-steps{flex-wrap:wrap;justify-content:center;align-items:flex-start;gap:0;display:flex}.empty-step{flex-direction:column;align-items:center;gap:10px;width:120px;display:flex;position:relative}.empty-step:not(:last-child):after{content:"→";color:var(--text-muted);font-size:1rem;position:absolute;top:14px;right:-14px}.empty-step-num{background:var(--accent-gradient);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:.85rem;font-weight:700;display:flex;box-shadow:0 4px 12px #38bdf84d}.empty-step-label{color:var(--text-muted);font-size:.78rem;line-height:1.4}.job-banner{background:#38bdf80f;border:1px solid #38bdf82e;border-radius:10px;align-items:center;gap:12px;margin-bottom:18px;padding:10px 16px;font-size:.88rem;display:flex}.job-banner-chip{letter-spacing:.04em;text-transform:uppercase;border-radius:99px;padding:3px 10px;font-size:.72rem;font-weight:700}.job-banner-role{color:#7dd3fc;background:#38bdf826}.job-banner-company{color:var(--accent-green);background:#10b9811f}@property --percent{syntax:"<number>";inherits:false;initial-value:0}.match-ring-container{flex-direction:column;align-items:center;margin:10px 0;display:flex}.match-ring{background:conic-gradient(var(--color) calc(var(--percent) * 1%), #ffffff0a 0);width:110px;height:110px;box-shadow:0 0 20px -5px var(--color);border-radius:50%;justify-content:center;align-items:center;transition:--percent 1s cubic-bezier(.16,1,.3,1),box-shadow .5s;animation:.5s cubic-bezier(.34,1.56,.64,1) both scaleIn;display:flex;position:relative}.match-ring:before{content:"";background-color:#0e121e;border-radius:50%;width:90px;height:90px;position:absolute}.match-ring-text{font-family:var(--font-display);color:#fff;letter-spacing:-.02em;font-size:1.6rem;font-weight:800;position:relative}.score-bar-fill{transform-origin:0;border-radius:6px;height:100%;animation:.9s cubic-bezier(.16,1,.3,1) both barGrow}.tag-list{flex-wrap:wrap;gap:7px;margin:10px 0;display:flex}.tag{letter-spacing:.01em;border-radius:99px;padding:5px 13px;font-size:.77rem;font-weight:600;transition:all .2s}.tag:hover{transform:translateY(-1px)}.tag-match{color:var(--accent-green);background:#10b98114;border:1px solid #10b98126}.tag-missing{color:var(--accent-red);background:#ef444414;border:1px solid #ef444426}.rejection-warning-panel{text-align:center;background:#f59e0b0d;border:1.5px solid #f59e0b4d;border-radius:14px;flex-direction:column;align-items:center;gap:16px;margin-top:28px;padding:28px;display:flex}.rejection-feedback-box{font-size:.84rem;font-family:var(--font-mono);text-align:left;color:#fde68a;white-space:pre-wrap;background:#0003;border:1px solid #f59e0b26;border-radius:10px;width:100%;max-width:660px;padding:16px 18px;line-height:1.55}.workspace{grid-template-columns:1.1fr .9fr;gap:24px;margin-top:24px;display:grid}@media (width<=1000px){.workspace{grid-template-columns:1fr}}.workspace-panel{flex-direction:column;height:600px;display:flex}.panel-toolbar{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.panel-content{background:var(--panel-bg);border:1px solid var(--border-color);color:#d1d5db;border-radius:12px;flex:1;padding:20px;font-size:.87rem;line-height:1.6;overflow-y:auto}.resume-preview{font-family:var(--font-sans);color:#e5e7eb}.resume-preview-name{color:#fff;letter-spacing:-.01em;text-align:center;margin-bottom:4px;font-size:1.3rem;font-weight:800}.resume-preview-divider{background:linear-gradient(90deg,#0000,#38bdf880,#0000);border:none;height:1px;margin:14px 0 16px}.resume-section-title{letter-spacing:.1em;text-transform:uppercase;color:#7dd3fc;border-bottom:1px solid #38bdf833;margin-top:18px;margin-bottom:8px;padding-bottom:4px;font-size:.7rem;font-weight:700}.resume-skills-grid{flex-wrap:wrap;gap:6px;display:flex}.resume-skill-chip{color:#c7d2fe;background:#38bdf81a;border:1px solid #38bdf826;border-radius:6px;padding:3px 10px;font-size:.75rem;font-weight:500}.resume-exp-item{margin-bottom:14px}.resume-exp-header{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px;margin-bottom:6px;display:flex}.resume-exp-role{color:#fff;font-size:.9rem;font-weight:700}.resume-exp-company{color:var(--accent-green);font-size:.8rem;font-weight:500}.resume-exp-bullets{flex-direction:column;gap:4px;padding-left:16px;display:flex}.resume-exp-bullets li{color:#9ca3af;font-size:.82rem;line-height:1.5}.mode-toggle{border:1px solid var(--border-color);background:#ffffff08;border-radius:10px;gap:4px;padding:4px;display:flex}.mode-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:7px;padding:7px 14px;font-size:.8rem;font-weight:600;transition:all .2s}.mode-btn.active{background:var(--accent-gradient);color:#fff;box-shadow:0 4px 10px #38bdf833}.log-terminal{border:1px solid var(--border-color);border-radius:14px;margin-top:24px;overflow:hidden;box-shadow:inset 0 2px 8px #0006}.log-terminal-header{border-bottom:1px solid var(--border-color);color:var(--accent-primary);letter-spacing:.04em;background:#00000059;align-items:center;gap:8px;padding:10px 16px;font-size:.78rem;font-weight:700;display:flex}.log-terminal-dots{gap:5px;margin-right:4px;display:flex}.log-terminal-dot{border-radius:50%;width:10px;height:10px}.log-terminal-body{font-family:var(--font-mono);color:#e2e8f0;background:#00000040;flex-direction:column;gap:5px;max-height:200px;padding:14px 18px;font-size:.79rem;display:flex;overflow-y:auto}.log-entry{align-items:flex-start;gap:10px;line-height:1.4;display:flex}.log-entry-ts{color:#fff3;flex-shrink:0;min-width:44px;padding-top:1px;font-size:.72rem}.log-entry-msg{flex:1}.log-default{color:#cbd5e0}.log-ok{color:#48bb78}.log-warn{color:#ecc94b}.log-ai{color:#63b3ed}.log-ratelimit{color:#fbbf24;font-weight:600}.log-cursor{vertical-align:middle;background:#38bdf8;border-radius:2px;width:7px;height:13px;margin-left:4px;animation:1s step-end infinite blink;display:inline-block}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}@keyframes fadeIn{0%{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes bgShift{0%{background-position:0%}50%{background-position:100%}to{background-position:0%}}@keyframes pulseGlow{0%{box-shadow:0 0 #38bdf866}70%{box-shadow:0 0 0 6px #38bdf800}to{box-shadow:0 0 #38bdf800}}@keyframes barGrow{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--accent-primary);outline-offset:2px;box-shadow:0 0 0 3px #38bdf84d}@keyframes skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}.progress-bar{background:linear-gradient(90deg, var(--accent-primary), var(--accent-gradient));z-index:9999;height:3px;animation:2s ease-in-out infinite progress-animation;position:fixed;top:0;left:0;box-shadow:0 0 10px #38bdf880}@keyframes progress-animation{0%{width:0%}50%{width:70%}to{width:100%}}.status-badge{border-radius:20px;animation:2s infinite pulseGlow}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:#0000001a}::-webkit-scrollbar-thumb{background:#ffffff14;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#ffffff2e}.job-card{border-radius:14px;transition:border-color .25s,box-shadow .25s}.job-card:hover{box-shadow:0 4px 20px #38bdf81a;border-color:#38bdf840!important}@media (width<=768px){.app-container{padding:16px 12px}header.app-header{flex-direction:column;align-items:flex-start;gap:10px;padding:12px 16px}.dashboard-grid{grid-template-columns:1fr;gap:18px}.workspace{grid-template-columns:1fr}.workspace-panel{height:400px}h1.title{font-size:1.35rem}.log-terminal-body{max-height:150px!important}.btn{min-height:44px;padding:10px 16px}.mode-switcher button{min-height:40px;padding:10px 14px}.form-group{margin-bottom:8px}.job-card{min-height:60px;padding:16px 14px}}@media (width<=640px){.job-card .skill-tags{display:none}.job-card.expanded .skill-tags{display:flex}}@media (width<=480px){.app-container{padding:10px 8px}.card{padding:18px 14px}.btn{min-height:44px;padding:10px 16px;font-size:.82rem}h2{font-size:1rem}.form-group{margin-bottom:8px}input,select,textarea{min-height:44px;padding:10px 12px}}
