:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}:root{--bg-gradient: linear-gradient(135deg, #ffffff 0%, #f0fdf4 100%);--primary: #87A96B;--primary-hover: #5d7a46;--glass-bg: rgba(255, 255, 255, .8);--glass-border: rgba(135, 169, 107, .3);--text-main: #1a202c;--text-muted: #64748b;--panel-shadow: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06)}body{margin:0;font-family:Inter,system-ui,-apple-system,sans-serif;background:var(--bg-gradient);color:var(--text-main);min-height:100vh}#root{min-height:100vh;display:flex;flex-direction:column;width:100%}.app-container{max-width:1200px;width:100%;margin:0 auto;padding:2rem}.app-header{text-align:center;margin-bottom:2rem;position:relative}.back-btn{position:absolute;left:0;top:50%;transform:translateY(-50%);background:transparent;border:1px solid var(--glass-border);color:var(--text-muted);padding:.5rem 1rem;border-radius:8px;cursor:pointer}.back-btn:hover{color:var(--text-main);background:#ffffff1a}.build-btn{position:absolute;right:0;top:50%;transform:translateY(-50%);background:var(--primary);color:#fff;border:none;padding:.5rem 1rem;border-radius:8px;cursor:pointer;font-weight:600;transition:background .2s}.build-btn:hover{background:var(--primary-hover)}.app-header h1{font-size:2.5rem;font-weight:700;background:linear-gradient(to right,#87a96b,#4ade80);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;margin:0 0 .5rem}.app-header p{color:var(--text-muted);font-size:1.1rem}.unified-wrapper{display:flex;justify-content:center}.optimizer-card{width:100%;max-width:1400px;padding:3rem}.optimizer-grid{display:grid;grid-template-columns:1fr 1.5fr;gap:4rem}@media(max-width:1024px){.optimizer-grid{grid-template-columns:1fr;gap:3rem}}.glass-panel{background:var(--glass-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--glass-border);box-shadow:var(--panel-shadow);border-radius:16px;padding:1.5rem;display:flex;flex-direction:column}.result-container{margin-top:2rem}h2{font-size:1.1rem;margin-bottom:.8rem;font-weight:600;color:var(--text-main)}textarea{width:100%;height:300px;background:#f8fafc;border:1px solid var(--glass-border);border-radius:8px;padding:1rem;color:var(--text-main);font-family:monospace;resize:vertical;margin-bottom:1.5rem;box-sizing:border-box;transition:border-color .2s}textarea:focus{outline:none;border-color:var(--primary)}.optimize-btn{background:var(--primary);color:#fff;border:none;padding:1rem;border-radius:8px;font-weight:600;cursor:pointer;transition:background .2s;display:flex;justify-content:center;align-items:center;font-size:1rem}.optimize-btn:hover{background:var(--primary-hover)}.optimize-btn:disabled{opacity:.6;cursor:not-allowed}.tabs{display:flex;gap:1rem;margin-bottom:1rem;border-bottom:1px solid var(--glass-border);padding-bottom:0}.tab-btn{background:transparent;border:none;color:var(--text-muted);padding:.8rem;cursor:pointer;font-weight:500;font-size:1rem;transition:color .2s}.tab-btn:hover{color:var(--text-main)}.tab-btn.active{color:var(--primary);border-bottom:2px solid var(--primary)}.nav-link-btn{background:none;border:none;color:var(--text-secondary);font-size:1rem;cursor:pointer;padding:.5rem 1rem;transition:color .3s ease}.profile-avatar{width:36px;height:36px;border-radius:50%;border:2px solid var(--primary);cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.profile-avatar:hover{transform:scale(1.05);box-shadow:0 0 10px #6366f180}.dropdown-menu{position:absolute;top:50px;right:0;width:200px;background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(135,169,107,.3);border-radius:8px;padding:.5rem;display:flex;flex-direction:column;gap:.5rem;z-index:1000;box-shadow:0 4px 20px #0000001a}.dropdown-header{padding:.5rem 1rem;display:flex;flex-direction:column;color:var(--text-main)}.dropdown-divider{height:1px;background:#0000001a;margin:.2rem 0}.dropdown-item{background:none;border:none;color:var(--text-main);text-align:left;padding:.5rem 1rem;cursor:pointer;border-radius:4px;transition:background .2s ease,color .2s ease}.dropdown-item:hover{background:#87a96b1a;color:var(--primary)}.dropdown-item.danger:hover{background:#ef444433;color:#ef4444}@media(max-width:768px){.navbar-links{display:none}}.result-area{flex-grow:1;background:#f1f5f9;border-radius:8px;padding:1rem;overflow:auto;max-height:600px;position:relative}.placeholder{color:var(--text-muted);text-align:center;padding-top:2rem}pre{white-space:pre-wrap;font-family:monospace;font-size:.9rem;color:#334155;margin:0}.copy-btn{position:absolute;top:1rem;right:1rem;background:#ffffff1a;border:1px solid var(--glass-border);color:var(--text-main);padding:.5rem 1rem;border-radius:4px;cursor:pointer}.copy-btn:hover{background:#fff3}.upload-box{display:flex;flex-direction:column;align-items:center;margin-bottom:2rem;padding:2rem;border:2px dashed var(--primary);border-radius:8px;background:#87a96b1a}.custom-file-upload{background:var(--primary);color:#fff;padding:.8rem 1.5rem;border-radius:8px;cursor:pointer;font-weight:600;transition:background .2s;display:inline-block;margin-bottom:1rem}.custom-file-upload:hover{background:var(--primary-hover)}.file-name{margin:0;font-size:.9rem;color:var(--text-main)}.text-muted{color:var(--text-muted)}.loader{width:20px;height:20px;border:2px solid #FFF;border-bottom-color:transparent;border-radius:50%;animation:rotation 1s linear infinite}@keyframes rotation{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.form-section{margin-bottom:3rem;background:#ffffff80;padding:1.5rem;border-radius:12px;border:1px solid rgba(0,0,0,.05)}.form-section h3{margin-top:0;margin-bottom:1.5rem;color:var(--primary);border-bottom:1px solid var(--glass-border);padding-bottom:.5rem}.form-group{margin-bottom:1.2rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:var(--text-main);font-size:.95rem}.form-control{width:100%;padding:.8rem;border:1px solid var(--glass-border);border-radius:8px;font-size:1rem;transition:border-color .2s,box-shadow .2s;background:#fff;color:var(--text-main);box-sizing:border-box}.form-control:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #87a96b33}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.dynamic-item{position:relative;border:1px solid var(--glass-border);background:#fff9;padding:1.5rem;border-radius:8px;margin-bottom:1.5rem}.remove-btn{position:absolute;top:1rem;right:1rem;background:#fee2e2;color:#ef4444;border:none;padding:.4rem .8rem;border-radius:6px;font-size:.85rem;cursor:pointer;font-weight:600}.remove-btn:hover{background:#fecaca}.add-btn{background:transparent;border:2px dashed var(--primary);color:var(--primary);width:100%;padding:1rem;border-radius:8px;font-weight:600;cursor:pointer;margin-top:1rem;transition:all .2s}.add-btn:hover{background:#87a96b1a}.generate-btn{background:var(--primary);color:#fff;width:100%;padding:1.2rem;font-size:1.2rem;font-weight:700;border:none;border-radius:8px;cursor:pointer;margin-top:2rem;box-shadow:0 4px 6px #87a96b4d;transition:transform .2s,background .2s}.generate-btn:hover{background:var(--primary-hover);transform:translateY(-2px)}@media(max-width:768px){.form-row{grid-template-columns:1fr}}.navbar{position:fixed;top:0;left:0;width:100%;z-index:1000;padding:.8rem 2rem;display:flex;justify-content:center;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:#fffc;border-bottom:1px solid var(--glass-border)}.navbar-container{width:100%;max-width:1200px;display:flex;justify-content:space-between;align-items:center}.navbar-logo{text-decoration:none;font-weight:800;font-size:1.5rem;color:var(--primary);display:flex;align-items:center;gap:.5rem}.logo-text{background:linear-gradient(135deg,var(--primary),var(--secondary));-webkit-background-clip:text;-webkit-text-fill-color:transparent}.navbar-links{display:flex;gap:1rem;align-items:center}.nav-link{text-decoration:none;color:var(--text-secondary);font-weight:500;font-size:1rem;transition:all .2s ease;padding:.5rem 1rem;border-radius:8px}.nav-link:hover{color:var(--primary);background:#00000008}.nav-link.active-link{color:var(--primary);background:#4f46e51a;font-weight:600}.mobile-menu-icon{display:none;font-size:1.5rem;cursor:pointer;color:var(--text-main)}.app-container{padding-top:80px}.nav-link-btn{background:none;border:none;cursor:pointer;font-family:inherit;text-decoration:none;color:var(--text-secondary);font-weight:500;font-size:1rem;transition:all .2s ease;padding:.5rem 1rem;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;line-height:1.5;height:40px;box-sizing:border-box}.nav-link-btn:hover{color:var(--primary);background:#00000008}@media(max-width:768px){.navbar-links{display:none;position:absolute;top:100%;left:0;width:100%;flex-direction:column;background:#fff;padding:1rem;box-shadow:0 4px 6px -1px #0000001a;gap:.5rem}.navbar-links.mobile-active{display:flex}.mobile-menu-icon{display:block}.nav-link,.nav-link-btn{width:100%;text-align:center}}.dashboard-container{display:grid;grid-template-columns:350px 1fr;grid-template-rows:auto;gap:0;margin-bottom:2rem;background:var(--glass-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--glass-border);box-shadow:var(--panel-shadow);border-radius:16px;padding:0;overflow:hidden}@media(max-width:1024px){.dashboard-container{grid-template-columns:1fr}}.dashboard-left{display:flex;flex-direction:column;gap:2rem;padding:2rem;border-right:1px solid var(--glass-border);background:#fff6}.score-card{align-items:center;justify-content:center;text-align:center;display:flex;flex-direction:column}.tips-panel{border-top:1px solid var(--glass-border);padding-top:2rem}.skills-panel{padding:2rem}.circular-progress{width:200px;height:200px;border-radius:50%;display:flex;justify-content:center;align-items:center;margin:2rem 0;position:relative}.inner-circle{width:160px;height:160px;background:#fff;border-radius:50%;display:flex;justify-content:center;align-items:center;box-shadow:inset 0 2px 4px #0000001a}.score-text{font-size:2.5rem;font-weight:800}.score-label{font-size:1.1rem;color:var(--text-muted)}.skills-panel h3,.tips-panel h3{margin-top:0;margin-bottom:1rem}.skills-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem}.text-green{color:#22c55e}.text-red{color:#ef4444}.tags-container{display:flex;flex-wrap:wrap;gap:.5rem}.tag{padding:.3rem .8rem;border-radius:20px;font-size:.85rem;font-weight:600}.tag-green{background:#22c55e33;color:#4ade80;border:1px solid rgba(34,197,94,.3)}.tag-red{background:transparent;color:#ef4444;border:none;padding:0;font-size:1rem;font-weight:500;margin-right:.8rem}.text-red-cell{color:#ef4444;font-weight:500;padding:.8rem 0;border-bottom:1px solid rgba(239,68,68,.1);display:block;width:100%}.text-green-cell{color:#22c55e;font-weight:500;padding:.8rem 0;border-bottom:1px solid rgba(34,197,94,.1);display:block;width:100%}.skills-table{width:100%;border-collapse:collapse}.tips-panel ul{padding-left:1.5rem;color:var(--text-muted)}.tips-panel li{margin-bottom:.5rem}.tips-panel strong{color:var(--text-main)}.landing-page{width:100%;overflow-x:hidden}section{padding:4rem 2rem;max-width:1000px;margin:0 auto}.alt-bg{background:#87a96b0d;border-radius:20px;margin:2rem 0;width:100%;box-sizing:border-box}.section-header{text-align:center;margin-bottom:3rem}.section-header h2{font-size:2.2rem;color:var(--primary);margin-bottom:1rem}.section-lead{font-size:1.2rem;color:var(--text-muted);max-width:700px;margin:0 auto}.hero-section{text-align:center;padding:6rem 2rem 4rem}.brand-name{color:var(--primary);font-weight:800}.hero-content h1{font-size:3.5rem;line-height:1.2;margin-bottom:1.5rem;color:var(--text-main)}.hero-subtitle{font-size:1.25rem;color:var(--text-muted);max-width:800px;margin:0 auto 2rem;line-height:1.6}.hero-checklist{list-style:none;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:1.5rem;margin-bottom:3rem}.hero-checklist li{font-weight:600;color:var(--text-main);background:#fff;padding:.5rem 1rem;border-radius:20px;box-shadow:0 2px 4px #0000000d;border:1px solid var(--glass-border)}.cta-container{margin-top:2rem}.primary-cta{background:var(--primary);color:#fff;border:none;padding:1rem 2.5rem;font-size:1.2rem;font-weight:700;border-radius:8px;cursor:pointer;transition:transform .2s,background .2s;box-shadow:0 4px 6px #87a96b4d}.primary-cta:hover{background:var(--primary-hover);transform:translateY(-2px)}.cta-subtext{margin-top:.8rem;font-size:.9rem;color:var(--text-muted)}.feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center;text-align:left}.feature-card{background:#fff;padding:2rem;border-radius:12px;box-shadow:var(--panel-shadow);border:1px solid var(--glass-border)}.feature-card h3{color:var(--primary);margin-top:0}.feature-card ul{padding-left:0;list-style-position:inside;color:var(--text-main)}.feature-card li{margin-bottom:.5rem}.feature-text p{font-size:1.1rem;line-height:1.7;color:var(--text-main)}.tags-preview{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin:2rem 0}.tag{padding:2rem 1.5rem;border-radius:12px;font-size:1.5rem;font-weight:700;box-shadow:0 4px 6px #0000000d;text-align:center;border:1px solid rgba(0,0,0,.05);display:flex;align-items:center;justify-content:center;min-height:120px}.tag.match{background:#dcfce7;color:#166534}.tag.partial{background:#fef9c3;color:#854d0e}.tag.missing{background:#fee2e2;color:#991b1b}.cards-row{display:flex;gap:1.5rem;justify-content:center;margin:2rem 0}.mini-card{background:#fff;padding:1.5rem;border-radius:8px;box-shadow:0 2px 4px #0000000d;border:1px solid var(--glass-border);font-weight:600;color:var(--text-main);flex:1;text-align:center}.secondary-cta{background:transparent;border:2px solid var(--primary);color:var(--primary);padding:.8rem 2rem;font-size:1.1rem;font-weight:600;border-radius:8px;cursor:pointer;transition:all .2s}.secondary-cta:hover{background:var(--primary);color:#fff}.visual-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;text-align:center}.visual-item{background:#fff;padding:1.5rem;border-radius:12px;border:1px solid var(--glass-border);transition:transform .2s}.visual-item:hover{transform:translateY(-5px);box-shadow:var(--panel-shadow)}.visual-icon{font-size:2.5rem;margin-bottom:1rem}.visual-item h4{margin:.5rem 0;color:var(--text-main)}.visual-item p{color:var(--text-muted);font-size:.9rem}.privacy-list{list-style:none;padding:0;display:flex;justify-content:center;gap:2rem;margin-bottom:1rem;font-size:1.1rem}.privacy-note{text-align:center;font-weight:600;color:var(--primary)}.faq-container{display:flex;flex-direction:column;gap:1rem;max-width:800px;margin:0 auto;text-align:left}.faq-item{padding:1.5rem 2rem;transition:all .3s ease;cursor:pointer;background:#fff9}.faq-item:hover{background:#ffffffe6;transform:translateY(-2px)}.faq-item.active{background:#fff;box-shadow:0 10px 30px #0000001a;border-color:var(--primary)}.faq-question{display:flex;justify-content:space-between;align-items:center}.faq-item h3{color:var(--text-main);margin:0;font-size:1.1rem;font-weight:600}.faq-toggle{font-size:1.5rem;font-weight:300;color:var(--primary);margin-left:1rem}.faq-answer{max-height:0;overflow:hidden;transition:max-height .3s ease-out,opacity .3s ease;opacity:0}.faq-answer.open{max-height:200px;opacity:1;margin-top:1rem}.faq-item p{color:var(--text-muted);line-height:1.6;margin:0;font-size:.95rem}.cta-section{text-align:center;padding:6rem 2rem;background:linear-gradient(135deg,#f0fdf4,#fff)}.primary-cta.large{font-size:1.4rem;padding:1.2rem 3rem}.landing-footer{text-align:center;padding:2rem;color:var(--text-muted);border-top:1px solid var(--glass-border);font-size:.9rem}@media(max-width:768px){.hero-content h1{font-size:2.5rem}.feature-grid{grid-template-columns:1fr}.cards-row{flex-direction:column}.visual-grid{grid-template-columns:1fr 1fr}.privacy-list{flex-direction:column;align-items:center;gap:1rem}}
