.session-lock{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--gray-100);padding:24px}.session-lock-box{background:var(--white);border-radius:var(--radius);box-shadow:var(--shadow-lg);padding:48px 32px;text-align:center;max-width:340px;width:100%}.session-lock-icon{font-size:48px;margin-bottom:16px}.session-lock-box h2{font-size:22px;color:var(--gray-800);margin-bottom:12px}.session-lock-box p{color:var(--gray-600);font-size:15px;margin-bottom:6px}.session-timer{font-size:13px;font-weight:600;color:#ffffffbf;background:#ffffff1a;border-radius:20px;padding:4px 12px;letter-spacing:.5px}.session-timer-warning{color:#fef08a;background:#eab30833;animation:pulse-warning 1s ease-in-out infinite}@keyframes pulse-warning{0%,to{opacity:1}50%{opacity:.6}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--navy: #1a2744;--blue: #2563eb;--blue-light: #eff6ff;--green: #059669;--green-light: #ecfdf5;--gray-50: #f9fafb;--gray-100: #f3f4f6;--gray-200: #e5e7eb;--gray-400: #9ca3af;--gray-600: #4b5563;--gray-800: #1f2937;--red: #dc2626;--red-light: #fef2f2;--white: #ffffff;--shadow: 0 1px 3px rgba(0,0,0,.1), 0 1px 2px rgba(0,0,0,.06);--shadow-md: 0 4px 6px rgba(0,0,0,.07), 0 2px 4px rgba(0,0,0,.06);--shadow-lg: 0 10px 15px rgba(0,0,0,.1), 0 4px 6px rgba(0,0,0,.05);--radius: 8px;--radius-sm: 4px}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--gray-100);color:var(--gray-800);line-height:1.5;min-height:100vh}.app-header{background:var(--navy);color:var(--white);padding:0 24px;height:60px;display:flex;align-items:center;position:sticky;top:0;z-index:100;box-shadow:var(--shadow-md)}.header-inner{width:100%;max-width:1400px;margin:0 auto;display:flex;align-items:center;justify-content:space-between}.logo{display:flex;align-items:center;gap:10px}.logo-icon{font-size:22px}.logo-text{font-size:18px;font-weight:700;letter-spacing:-.3px}.logo-badge{background:var(--blue);color:var(--white);font-size:11px;font-weight:600;padding:2px 8px;border-radius:20px;letter-spacing:.3px}.header-actions{display:flex;gap:8px;align-items:center}.btn-cover{background:transparent;color:#ffffffd9;border:1px solid rgba(255,255,255,.35);padding:8px 16px;border-radius:var(--radius-sm);font-size:14px;font-weight:500;cursor:pointer;transition:border-color .15s,background .15s,color .15s}.btn-cover:hover{border-color:#ffffffb3;color:#fff}.btn-cover.active{background:#ffffff26;border-color:#fff;color:#fff}.btn-primary{background:var(--blue);color:var(--white);border:none;padding:8px 18px;border-radius:var(--radius-sm);font-size:14px;font-weight:600;cursor:pointer;transition:background .15s}.btn-primary:hover{background:#1d4ed8}.btn-secondary{background:transparent;color:var(--white);border:1px solid rgba(255,255,255,.3);padding:8px 16px;border-radius:var(--radius-sm);font-size:14px;font-weight:500;cursor:pointer;transition:border-color .15s,background .15s}.btn-secondary:hover{border-color:#ffffffb3;background:#ffffff0d}.btn-secondary.active{border-color:var(--blue);color:var(--blue-light)}.btn-generate{width:100%;background:var(--blue);color:var(--white);border:none;padding:14px;border-radius:var(--radius);font-size:16px;font-weight:700;cursor:pointer;transition:background .15s,transform .1s}.btn-generate:hover:not(:disabled){background:#1d4ed8;transform:translateY(-1px)}.btn-generate:disabled{background:var(--gray-400);cursor:not-allowed;transform:none}.btn-add{background:var(--blue-light);color:var(--blue);border:1.5px dashed var(--blue);padding:8px 16px;border-radius:var(--radius-sm);font-size:13px;font-weight:600;cursor:pointer;margin-top:8px;transition:background .15s}.btn-add:hover{background:#dbeafe}.btn-remove{background:var(--red-light);color:var(--red);border:none;padding:4px 10px;border-radius:var(--radius-sm);font-size:12px;font-weight:600;cursor:pointer;transition:background .15s}.btn-remove:hover{background:#fee2e2}.app-main{max-width:1400px;margin:0 auto;padding:24px 24px 48px}.form-layout{display:grid;grid-template-columns:480px 1fr;gap:24px;align-items:start}.form-sidebar{background:var(--white);border-radius:var(--radius);padding:28px;box-shadow:var(--shadow-md);position:sticky;top:84px;max-height:calc(100vh - 100px);overflow-y:auto}.section-title{font-size:20px;font-weight:700;color:var(--navy);margin-bottom:4px}.section-sub{font-size:14px;color:var(--gray-600);margin-bottom:20px}.error-banner{background:var(--red-light);border:1px solid #fca5a5;color:var(--red);padding:12px 16px;border-radius:var(--radius-sm);font-size:14px;margin-bottom:16px}.form-preview-placeholder{background:var(--white);border-radius:var(--radius);padding:60px 40px;box-shadow:var(--shadow);min-height:500px;display:flex;align-items:center;justify-content:center}.placeholder-box{text-align:center;max-width:380px}.placeholder-icon{font-size:56px;margin-bottom:20px;display:block}.placeholder-box h3{font-size:22px;font-weight:700;color:var(--navy);margin-bottom:10px}.placeholder-box p{font-size:15px;color:var(--gray-600);margin-bottom:24px;line-height:1.6}.feature-list{list-style:none;text-align:left;display:inline-block}.feature-list li{font-size:14px;color:var(--gray-600);padding:4px 0;display:flex;align-items:center;gap:8px}.cv-form{display:flex;flex-direction:column;gap:4px}.form-section{border-bottom:1px solid var(--gray-200);padding-bottom:20px;margin-bottom:20px}.form-section:last-of-type{border-bottom:none}.form-section-title{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.8px;color:var(--navy);margin-bottom:4px}.form-hint{font-size:12px;color:var(--gray-600);margin-bottom:12px;line-height:1.5}.form-row{display:flex;flex-direction:column;gap:12px;margin-bottom:12px}.form-row.two-col{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}label{display:flex;flex-direction:column;gap:5px;font-size:12px;font-weight:600;color:var(--gray-600);text-transform:uppercase;letter-spacing:.4px}input[type=text],input[type=email],textarea{font-family:inherit;font-size:14px;color:var(--gray-800);background:var(--gray-50);border:1.5px solid var(--gray-200);border-radius:var(--radius-sm);padding:9px 12px;transition:border-color .15s,background .15s;width:100%}input:focus,textarea:focus{outline:none;border-color:var(--blue);background:var(--white)}textarea{resize:vertical}select.form-select{font-family:inherit;font-size:14px;color:var(--gray-800);background:var(--gray-50);border:1.5px solid var(--gray-200);border-radius:var(--radius-sm);padding:9px 12px;width:100%;cursor:pointer;transition:border-color .15s,background .15s;-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}select.form-select:focus{outline:none;border-color:var(--blue);background:var(--white)}.checkbox-label{flex-direction:row!important;align-items:center;gap:8px!important;font-size:13px!important;text-transform:none!important;letter-spacing:0!important;color:var(--gray-800)!important;cursor:pointer}.checkbox-label input[type=checkbox]{width:16px;height:16px;cursor:pointer;flex-shrink:0}.entry-card{background:var(--gray-50);border:1px solid var(--gray-200);border-radius:var(--radius);padding:14px;margin-bottom:12px}.entry-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.entry-number{font-size:12px;font-weight:700;color:var(--blue);text-transform:uppercase;letter-spacing:.5px}.form-submit{padding-top:4px}.spinner-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 40px;gap:24px}.spinner-ring{width:56px;height:56px;border:4px solid var(--gray-200);border-top-color:var(--blue);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.spinner-text{text-align:center}.spinner-headline{font-size:18px;font-weight:700;color:var(--navy);margin-bottom:6px}.spinner-sub{font-size:14px;color:var(--gray-600)}.preview-layout{display:flex;flex-direction:column;gap:16px}.preview-toolbar{background:var(--white);border-radius:var(--radius);padding:14px 20px;box-shadow:var(--shadow);display:flex;align-items:center;justify-content:space-between}.toolbar-info{display:flex;align-items:center;gap:10px}.toolbar-name{font-weight:700;font-size:16px;color:var(--navy)}.toolbar-role{font-size:14px;color:var(--gray-600)}.toolbar-actions{display:flex;gap:10px}.toolbar-actions .btn-secondary{color:var(--gray-800);border-color:var(--gray-200)}.toolbar-actions .btn-secondary:hover{background:var(--gray-100);border-color:var(--gray-400)}.preview-wrapper{display:flex;flex-direction:column;gap:12px}.edit-toggle{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:10px 0}.edit-toggle .btn-secondary{color:var(--gray-800);border-color:var(--gray-300)}.edit-toggle .btn-secondary:hover{background:var(--gray-100)}.edit-toggle .btn-secondary.active{color:var(--green);border-color:var(--green);background:var(--green-light)}.edit-hint{font-size:13px;color:var(--gray-600)}.cv-t-modern .cv-name{color:#2563eb}.cv-t-modern .cv-section-heading{color:#2563eb;text-transform:none;font-size:11.5pt;letter-spacing:0}.cv-t-modern .cv-section-line{border-color:#2563eb}.cv-t-modern .cv-work-company,.cv-t-modern .cv-edu-institution{color:#2563eb;font-style:normal;font-weight:600}.cv-t-modern .cv-cert-issuer{color:#2563eb;font-style:normal}.cv-t-modern .cv-skill-tag{background:#eff6ff;border:1px solid #bfdbfe;color:#1d4ed8;border-radius:4px}.cv-t-modern .cv-work-duration,.cv-t-modern .cv-edu-year{color:#2563eb}.cv-t-executive .cv-header{text-align:left;border-bottom:3px solid #1a2744;padding-bottom:18px;margin-bottom:28px}.cv-t-executive .cv-name{color:#1a2744;font-size:28pt;letter-spacing:-.5px}.cv-t-executive .cv-target-role{color:#777;font-size:11pt;text-transform:uppercase;letter-spacing:2px;margin-bottom:6px}.cv-t-executive .cv-contact{color:#555;font-size:10.5pt}.cv-t-executive .cv-section-heading{color:#1a2744;letter-spacing:1px}.cv-t-executive .cv-section-line{border-color:#c9a84c;border-width:1.5px}.cv-t-executive .cv-work-role{color:#1a2744}.cv-t-executive .cv-work-company{color:#555}.cv-t-executive .cv-work-duration,.cv-t-executive .cv-edu-year{color:#777}.cv-t-executive .cv-skill-tag{background:transparent;border:none;padding:2px 0;color:#1a2744;font-weight:600;border-radius:0}.cv-t-executive .cv-skill-tag:after{content:" ·";color:#c9a84c;font-weight:700;margin-right:4px}.cv-t-executive .cv-skill-tag:last-child:after{content:""}.cv-t-executive .cv-skills-list{gap:0}.template-selector{display:flex;align-items:center;gap:6px;margin-left:auto}.template-label{font-size:12px;color:var(--gray-500);font-weight:500;white-space:nowrap}.template-btn{display:flex;align-items:center;gap:5px;padding:4px 10px;border-radius:20px;border:1.5px solid var(--gray-300);background:var(--white);font-size:12px;color:var(--gray-700);cursor:pointer;transition:all .15s;white-space:nowrap;font-family:inherit}.template-btn:hover{border-color:var(--gray-500);color:var(--gray-900)}.template-btn.active{border-color:currentColor;font-weight:600}.template-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.cv-document{background:var(--white);padding:48px 56px;border-radius:var(--radius);box-shadow:var(--shadow-lg);max-width:860px;margin:0 auto;font-family:Arial,Helvetica,sans-serif;font-size:11pt;line-height:1.55;color:#000}.cv-header{text-align:center;margin-bottom:28px}.cv-name{font-size:26pt;font-weight:700;color:#000;margin-bottom:4px;letter-spacing:-.5px}.cv-target-role{font-size:13pt;color:#444;margin-bottom:6px}.cv-contact{font-size:11.5pt;color:#333;font-weight:400}.cv-contact-link{color:#1d4ed8;text-decoration:none}.cv-contact-link:hover{text-decoration:underline}.cv-section{margin-bottom:22px}.cv-section-heading{font-size:12pt;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:#000;margin-bottom:4px}.cv-section-line{border:none;border-top:2px solid #000;margin-bottom:10px}.cv-summary{font-size:11pt;color:#222;line-height:1.6}.cv-edit-textarea{width:100%;font-family:Arial,sans-serif;font-size:11pt;line-height:1.6;color:#222;border:1.5px solid var(--blue);border-radius:var(--radius-sm);padding:8px;resize:vertical}.cv-skills-block{display:flex;flex-direction:column;gap:6px}.cv-skills-row{display:flex;gap:8px;align-items:flex-start;flex-wrap:wrap}.cv-skills-label{font-size:10.5pt;font-weight:700;color:#000;min-width:90px;padding-top:3px}.cv-skills-list{display:flex;flex-wrap:wrap;gap:6px}.cv-skill-tag{background:#f3f4f6;color:#222;border:1px solid #d1d5db;padding:2px 10px;border-radius:3px;font-size:10pt}.cv-skill-edit{font-family:Arial,sans-serif;font-size:10pt;border:1px solid var(--blue);border-radius:3px;padding:2px 8px;background:#eff6ff;width:140px}.cv-work-entry{margin-bottom:18px}.cv-work-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:6px;flex-wrap:wrap;gap:2px}.cv-work-title-block{display:flex;flex-direction:column;gap:1px}.cv-work-role{font-size:11.5pt;font-weight:700;color:#000;display:block}.cv-work-company{font-size:11pt;color:#444;font-style:italic;display:block}.cv-work-duration{font-size:10.5pt;color:#555;white-space:nowrap;padding-top:1px}.cv-bullets{list-style:disc;padding-left:22px}.cv-bullets li{font-size:11pt;color:#222;margin-bottom:4px;line-height:1.55}.cv-bullet-edit{font-family:Arial,sans-serif;font-size:11pt;border:1px solid var(--blue);border-radius:3px;padding:2px 8px;background:#eff6ff;width:100%}.cv-edu-entry{margin-bottom:14px}.cv-edu-header{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:2px}.cv-edu-title-block{display:flex;flex-direction:column;gap:1px}.cv-edu-degree{font-size:11.5pt;font-weight:700;color:#000;display:block}.cv-edu-institution{font-size:11pt;color:#444;font-style:italic;display:block}.cv-edu-grade{font-size:10.5pt;color:#333;display:block}.cv-edu-year{font-size:10.5pt;color:#555;white-space:nowrap;padding-top:1px}.cv-cert-entry{margin-bottom:12px}.cv-cert-header{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:2px}.cv-cert-title-block{display:flex;flex-direction:column;gap:2px}.cv-cert-name{font-size:11.5pt;font-weight:700;color:#000;display:block}.cv-cert-issuer{font-size:11pt;color:#444;font-style:italic;display:block}.cv-cert-year{font-size:10.5pt;color:#555;white-space:nowrap;padding-top:1px}.cv-cert-link{font-size:10pt;color:var(--blue);text-decoration:none;display:inline-block;margin-top:2px}.cv-cert-link:hover{text-decoration:underline}.cv-cert-link-print,.print-only{display:none}.cv-keywords-section{margin-top:24px;padding-top:16px}.cv-keywords-note{font-size:13px;color:var(--gray-600);margin-bottom:10px}.cv-keywords-list{display:flex;flex-wrap:wrap;gap:8px}.cv-keyword-tag{background:var(--green-light);color:var(--green);border:1px solid #a7f3d0;padding:4px 12px;border-radius:20px;font-size:12px;font-weight:600}.tab-hidden{display:none!important}.toolbar-tabs{display:flex;gap:4px;background:#ffffff1a;border-radius:var(--radius-sm);padding:3px}.tab-btn{background:transparent;color:#ffffffb3;border:none;padding:6px 16px;border-radius:3px;font-size:13px;font-weight:600;cursor:pointer;transition:background .15s,color .15s}.tab-btn:hover{color:#fff;background:#ffffff1a}.tab-btn.active{background:var(--blue);color:#fff}.autocomplete-wrapper{position:relative}.autocomplete-list{position:absolute;top:100%;left:0;right:0;background:var(--white);border:1.5px solid var(--blue);border-top:none;border-radius:0 0 var(--radius-sm) var(--radius-sm);list-style:none;max-height:220px;overflow-y:auto;z-index:200;box-shadow:var(--shadow-md)}.autocomplete-item{padding:9px 12px;font-size:14px;cursor:pointer;color:var(--gray-800);transition:background .1s;border-bottom:1px solid var(--gray-100)}.autocomplete-item:last-child{border-bottom:none}.autocomplete-item:hover{background:var(--blue-light);color:var(--blue)}.data-loaded-banner{display:flex;align-items:center;justify-content:space-between;background:var(--blue-light);border:1px solid #bfdbfe;color:#1d4ed8;padding:10px 14px;border-radius:var(--radius-sm);font-size:12px;font-weight:500;margin-bottom:16px;gap:10px;flex-wrap:wrap}.clear-link{background:none;border:none;color:var(--red);font-size:11px;font-weight:600;cursor:pointer;padding:0;text-decoration:underline;white-space:nowrap}.form-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.saved-badge{font-size:11px;font-weight:600;color:var(--green);background:var(--green-light);border:1px solid #a7f3d0;padding:2px 8px;border-radius:20px}.cover-letter-wrapper{display:flex;flex-direction:column;gap:20px;max-width:860px;margin:0 auto}.cl-form-panel{background:var(--white);border-radius:var(--radius);padding:24px 28px;box-shadow:var(--shadow-md)}.cl-form-title{font-size:17px;font-weight:700;color:var(--navy);margin-bottom:4px}.cl-form-hint{font-size:13px;color:var(--gray-600);margin-bottom:16px}.cl-form-row{display:flex;flex-direction:column;gap:12px;margin-bottom:12px}.cl-form-row.two-col{display:grid;grid-template-columns:1fr 1fr;gap:12px}.cl-label{display:flex;flex-direction:column;gap:5px;font-size:12px;font-weight:600;color:var(--gray-600);text-transform:uppercase;letter-spacing:.4px}.cl-label input,.cl-label textarea{font-family:inherit;font-size:14px;color:var(--gray-800);background:var(--gray-50);border:1.5px solid var(--gray-200);border-radius:var(--radius-sm);padding:9px 12px;transition:border-color .15s;width:100%}.cl-label input:focus,.cl-label textarea:focus{outline:none;border-color:var(--blue);background:var(--white)}.cl-label textarea{resize:vertical}.cl-form-actions{display:flex;gap:10px;margin-top:14px;flex-wrap:wrap;align-items:center}.cl-form-actions .btn-generate{width:auto;padding:10px 20px;font-size:14px}.cl-form-actions .btn-primary{padding:10px 18px;font-size:14px}.cl-edit-btn{color:var(--gray-800);border-color:var(--gray-300);padding:10px 16px;font-size:14px}.cl-edit-btn:hover{background:var(--gray-100)}.cl-edit-btn.active{color:var(--green);border-color:var(--green);background:var(--green-light)}.cl-inline-edit{font-family:Arial,sans-serif;font-size:11pt;font-weight:600;color:#000;border:1.5px solid var(--blue);border-radius:3px;padding:4px 8px;background:#eff6ff;width:100%;margin-bottom:8px}.cl-para-edit{font-family:Arial,sans-serif;font-size:11pt;line-height:1.7;color:#111;border:1.5px solid var(--blue);border-radius:3px;padding:8px;background:#eff6ff;width:100%;resize:vertical;margin-bottom:14px}.cl-loading{display:flex;flex-direction:column;align-items:center;padding:40px;gap:16px}.cl-placeholder{background:var(--white);border-radius:var(--radius);padding:60px 40px;text-align:center;box-shadow:var(--shadow)}.cl-placeholder h3{font-size:20px;font-weight:700;color:var(--navy);margin-bottom:8px}.cl-placeholder p{font-size:14px;color:var(--gray-600)}.cl-document{background:var(--white);padding:48px 56px;border-radius:var(--radius);box-shadow:var(--shadow-lg);font-family:Arial,Helvetica,sans-serif;font-size:11pt;line-height:1.65;color:#000}.cl-letterhead{margin-bottom:28px}.cl-sender-name{font-size:16pt;font-weight:700;color:#000;margin-bottom:3px}.cl-sender-contact{font-size:10.5pt;color:#333}.cl-date{font-size:11pt;color:#000;margin-bottom:20px}.cl-recipient{margin-bottom:20px}.cl-recipient-name{font-size:11pt;font-weight:600;color:#000}.cl-recipient-company{font-size:11pt;color:#333}.cl-greeting{font-size:11pt;font-weight:600;color:#000;margin-bottom:8px}.cl-subject{font-size:11pt;color:#000;margin-bottom:18px;text-decoration:underline}.cl-paragraph{font-size:11pt;color:#111;margin-bottom:14px;line-height:1.7}.cl-closing{font-size:11pt;color:#000;margin-top:20px;margin-bottom:32px}.cl-signoff{font-size:11pt;color:#000;margin-bottom:4px}.cl-name-sign{font-size:12pt;font-weight:700;color:#000}@page{size:A4 portrait;margin:0}@media print{*{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}.no-print{display:none!important}body{background:#fff;margin:0;padding:0;font-family:Arial,Helvetica,sans-serif}.app{background:#fff}.app-main{padding:0;max-width:none}.preview-layout,.preview-wrapper{gap:0}.cv-document{box-shadow:none;border-radius:0;padding:18mm 20mm;max-width:none;width:100%;page-break-inside:avoid}.cv-work-entry,.cv-edu-entry,.cv-cert-entry,.cv-header{page-break-inside:avoid}.cv-section{page-break-inside:auto}.cv-name{font-size:22pt}.cv-target-role{font-size:12pt}.cv-work-company,.cv-edu-institution{font-style:italic}.cv-cert-link{display:none!important}.cv-cert-link-print{display:block;font-size:9pt;color:#555;word-break:break-all}.print-only{display:block!important}.cover-letter-section{display:none!important}body[data-print=cover] .cover-letter-section{display:block!important}body[data-print=cover] .preview-wrapper,body[data-print=cover] .cl-form-panel,body[data-print=cover] .cl-loading,body[data-print=cover] .cl-placeholder,body[data-print=cover] .cl-form-actions{display:none!important}body[data-print=cover] .cl-para-edit{border:none;padding:0;background:none;resize:none;width:100%;font-family:Arial,sans-serif;font-size:11pt}body[data-print=cover] .cl-inline-edit{border:none;padding:0;background:none;font-family:Arial,sans-serif;font-size:11pt;font-weight:600;width:100%}body[data-print=cover] .cl-document{box-shadow:none;border-radius:0;padding:18mm 20mm;max-width:none;width:100%}.cv-skill-tag{border:1px solid #999;background:#f5f5f5}.cv-t-modern .cv-skill-tag{border-color:#bfdbfe;background:#eff6ff}.cv-t-executive .cv-skill-tag{background:transparent;border:none;padding:2px 0;font-weight:600}.cv-t-executive .cv-section-line{border-color:#c9a84c}.cv-t-executive .cv-header{border-bottom:3px solid #1a2744}.cv-skills-list{gap:0}.cv-skill-tag:after{content:" • "}.cv-skill-tag:last-child:after{content:""}}@media (max-width: 900px){.form-layout{grid-template-columns:1fr}.form-sidebar{position:static;max-height:none}.form-preview-placeholder{min-height:300px}.cv-document{padding:32px 28px}.form-row.two-col{grid-template-columns:1fr}}.cv-upload-zone{border:2px dashed var(--gray-200);border-radius:var(--radius);padding:20px 16px;text-align:center;cursor:pointer;transition:border-color .15s,background .15s;background:var(--gray-50);margin-bottom:16px;display:flex;flex-direction:column;align-items:center;gap:4px}.cv-upload-zone:hover,.cv-upload-zone.drag-over{border-color:var(--blue);background:var(--blue-light)}.cv-upload-zone.uploading{cursor:default;opacity:.8}.upload-zone-icon{font-size:24px;line-height:1}.upload-zone-text{font-size:14px;color:var(--gray-800);margin:0}.upload-zone-text strong{color:var(--blue)}.upload-zone-hint{font-size:12px;color:var(--gray-400);margin:0}.editing-banner{background:#fffbeb;border:1px solid #fcd34d;border-radius:var(--radius-sm);padding:10px 14px;font-size:13px;color:#92400e;margin-bottom:12px;line-height:1.5}.upload-success-banner{background:var(--green-light);border:1px solid #6ee7b7;border-radius:var(--radius-sm);padding:10px 14px;font-size:13px;color:#065f46;margin-bottom:12px;line-height:1.5}.job-matches-section{background:var(--white);border-radius:var(--radius);border:1px solid var(--gray-200);box-shadow:var(--shadow-md);padding:28px 32px;margin-top:24px}.job-matches-header{margin-bottom:20px}.job-matches-title-row{margin-bottom:16px}.job-matches-title{display:flex;align-items:center;gap:8px;font-size:17px;font-weight:700;color:var(--navy);margin-bottom:4px}.job-matches-hint{font-size:13px;color:var(--gray-600)}.job-search-bar{display:flex;gap:10px}.job-location-input{flex:1;padding:9px 12px;border:1px solid var(--gray-200);border-radius:var(--radius-sm);font-size:14px;color:var(--gray-800);background:var(--gray-50);outline:none;transition:border-color .15s}.job-location-input:focus{border-color:var(--blue);background:var(--white)}.job-search-btn{white-space:nowrap}.job-filter-tabs{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:20px}.job-filter-tab{display:flex;align-items:center;gap:6px;padding:6px 14px;border-radius:20px;border:1px solid var(--gray-200);background:var(--gray-50);font-size:13px;font-weight:500;color:var(--gray-600);cursor:pointer;transition:border-color .15s,background .15s,color .15s}.job-filter-tab:hover{border-color:var(--blue);color:var(--blue)}.job-filter-tab.active{background:var(--blue);border-color:var(--blue);color:var(--white)}.job-filter-tab.active .job-filter-count{background:#ffffff40;color:#fff}.job-filter-count{background:var(--gray-200);color:var(--gray-600);font-size:11px;font-weight:700;padding:1px 7px;border-radius:10px;min-width:20px;text-align:center}.job-loading{text-align:center;padding:48px 0;color:var(--gray-600)}.job-empty{text-align:center;padding:32px;color:var(--gray-600);font-size:14px;background:var(--gray-50);border-radius:var(--radius);border:1px dashed var(--gray-200)}.job-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.job-card{background:var(--gray-50);border:1px solid var(--gray-200);border-radius:var(--radius);padding:16px 18px;display:flex;flex-direction:column;gap:6px;transition:box-shadow .15s,border-color .15s}.job-card:hover{box-shadow:var(--shadow-md);border-color:var(--blue)}.job-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.job-source-badge{font-size:11px;font-weight:700;color:#fff;padding:2px 9px;border-radius:10px;letter-spacing:.3px;text-transform:uppercase}.job-date{font-size:11px;color:var(--gray-400)}.job-title{font-size:14px;font-weight:700;color:var(--gray-800);line-height:1.3}.job-company{font-size:13px;color:var(--blue);font-weight:500}.job-meta{display:flex;flex-direction:column;gap:3px;margin-top:2px}.job-meta-item{display:flex;align-items:center;gap:5px;font-size:12px;color:var(--gray-600)}.job-salary{color:var(--green);font-weight:500}.job-apply-btn{display:inline-block;margin-top:auto;padding-top:12px;font-size:13px;font-weight:600;color:var(--blue);text-decoration:none;transition:color .15s}.job-apply-btn:hover{color:var(--navy);text-decoration:underline}.job-keys-notice{background:var(--blue-light);border:1px solid #bfdbfe;border-radius:var(--radius);padding:16px 20px;font-size:13px;color:var(--gray-800);margin-top:16px}.job-keys-notice strong{display:block;margin-bottom:8px}.job-keys-notice ul{padding-left:18px}.job-keys-notice li{margin-bottom:4px}.job-keys-notice a{color:var(--blue)}@media (max-width: 900px){.job-grid{grid-template-columns:1fr}.job-search-bar{flex-direction:column}.job-matches-section{padding:20px 16px}}
