.resume-builder-container{display:flex;gap:.75rem;padding:55px 0 0;height:calc(100vh - 40px);background:#f5f5f5;box-sizing:border-box}.sidebar{width:350px;background:#fff;border-radius:0;box-shadow:0 2px 12px rgba(0,0,0,.1);height:calc(100vh - 60px - 50px);display:flex;flex-direction:column;box-sizing:border-box;padding:0;position:-webkit-sticky;position:sticky;top:60px;overflow:hidden}.sidebar-title{margin:0 0 1.5rem;text-align:center;background:#fff;z-index:2;padding:1rem 0 0;border-bottom:1px solid #ebebeb}.sidebar-content{flex:1 1;min-height:0;overflow-y:auto;padding:0 1.5rem 1.5rem}.section-container{margin-bottom:1.5rem}.section-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.section-button{width:100%;padding:.75rem;background:#f5f5f5;color:#333;border:none;border-radius:8px;cursor:pointer;display:flex;justify-content:space-between;align-items:center;font-weight:500;transition:all .2s ease;position:relative}.section-count-box{position:absolute;right:2rem;min-width:20px;text-align:center;padding:.25rem .5rem;border-radius:12px;font-size:.75rem;font-weight:600;border:none}.section-button.expanded,.section-button:hover,.section-count-box{background:#6366f1;color:#fff}.section-items{margin-top:.5rem;padding:.5rem;background:#fafafa;border-radius:8px}.item-card{display:flex;align-items:center;gap:.5rem;padding:.75rem;cursor:pointer;border-radius:8px;background:#fff;border:2px solid #eee;margin-bottom:.5rem;transition:all .2s ease;-webkit-user-select:none;-moz-user-select:none;user-select:none}.item-card:hover{border-color:#6366f1;background:#f0f0ff}.item-card.selected{background:#e6f3ff;border-color:#6366f1}.item-icon{font-size:1.2rem}.item-title{font-size:14px;font-weight:500}.main-content{flex:1 1;background:#fff;border-radius:0;padding:.5rem 2rem 2rem;box-shadow:0 2px 12px rgba(0,0,0,.1);overflow-y:auto;box-sizing:border-box}.main-title{margin-bottom:.5rem;text-align:center}.pdf-preview-container{min-height:100vh}.pdf-preview-container,.pdf-preview-frame{background:#eee;display:flex;align-items:center;justify-content:center}.pdf-preview-frame{width:814px;height:1143px;border-radius:12px}.pdf-preview-content{background:#fff;width:794px;height:1123px;box-shadow:0 4px 12px rgba(0,0,0,.1);border:1px solid #ddd;border-radius:8px;font-family:Georgia,serif;font-size:12pt;line-height:1.4;color:#333;overflow:auto;padding:40px;box-sizing:border-box;position:relative}.empty-state{text-align:center;color:#666;font-size:1.1rem;padding:4rem}.empty-state-icon{font-size:3rem;margin-bottom:1rem}.print-button-container{text-align:center;margin-top:2rem}.print-button{padding:.75rem 2rem;background:#6366f1;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:500;transition:all .2s ease}.print-button:hover{background:#5855eb}.preview-resume-container{max-width:100%;margin:0 auto;padding:0}.preview-contact-section{text-align:left;padding-bottom:.5rem}.preview-contact-row{display:flex;justify-content:space-between;align-items:flex-start;width:100%;margin-bottom:.25rem}.preview-contact-left{display:flex;flex-direction:column;align-items:flex-start}.preview-contact-right{display:flex;flex-direction:column;align-items:flex-end;gap:.15rem}.preview-contact-link{color:#333;text-decoration:none;font-size:.95rem;word-break:break-all}.preview-contact-link:hover{text-decoration:underline}.preview-contact-name{font-size:1.8rem;font-weight:700;margin:0;color:#333}.preview-contact-name-location{display:flex;flex-direction:row;align-items:baseline;gap:1.25rem}.preview-contact-location{font-size:1rem;color:#666;margin-top:0}.preview-contact-details-row{display:flex;gap:2rem;font-size:1rem;color:#444;margin-top:.25rem;margin-left:2px}.preview-section{margin-bottom:1rem;page-break-inside:avoid}.preview-section-title{margin-bottom:.5rem;padding-bottom:.25rem;border-bottom:2px solid #333;text-transform:uppercase;font-size:1rem;font-weight:700;color:#333}.preview-items-container.skills{margin-top:.25rem;display:flex;flex-wrap:wrap;align-items:flex-start}.preview-items-container.education,.preview-items-container.experience,.preview-items-container.projects{margin-top:.25rem;display:grid;grid-template-columns:repeat(2,1fr);grid-gap:.5rem;gap:.5rem}.preview-items-container.achievements{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:.5rem;gap:.5rem}.preview-skill-tag{padding:2px;border:1px solid #ddd;font-size:12px;color:#555;margin:0;width:-moz-fit-content;width:fit-content;min-height:24px;display:flex;align-items:center;background:#fff;justify-content:center;white-space:nowrap}.preview-education-item,.preview-experience-item,.preview-project-item{margin-bottom:0;padding:.5rem;border:1px solid #ddd;background:#fff;page-break-inside:avoid;min-width:0;min-height:100px;display:flex;flex-direction:column;justify-content:flex-start}.preview-item-title{margin:0 0 .25rem;font-size:1rem;font-weight:700;color:#333}.preview-item-subtitle{margin:0 0 .25rem;font-size:12px;color:#666;font-weight:500}.preview-item-description{margin:0;font-size:12px;line-height:1.3;color:#555}.preview-project-tags{display:flex;gap:4px;margin-bottom:.25rem;flex-wrap:wrap}.preview-project-tag{color:#222;font-size:10px;font-weight:500;display:inline;margin:0 .5rem 0 0}.preview-achievement-item{padding:.25rem .5rem;border:1px solid #ddd;font-size:12px;color:#555;margin:0;min-width:0;min-height:40px;display:flex;align-items:center}@media print{@page{margin:.5in;size:A4}.no-print{display:none!important}}@media screen{body{font-family:Georgia,serif;font-size:12pt;line-height:1.4;color:#333;background:#fff;margin:0;padding-top:20px}.resume-container{max-width:800px;margin:0 auto;border:1px solid #ddd;padding:30px;background:#fff;box-shadow:0 4px 12px rgba(0,0,0,.1)}.contact-section{text-align:center;margin-bottom:1rem;border-bottom:2px solid #333;padding-bottom:.5rem}.contact-name{font-size:1.8rem;font-weight:700;margin:0 0 .5rem;color:#333}.contact-details{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;font-size:.9rem;color:#666}.section{margin-bottom:1rem}.section-title{margin-bottom:.5rem;padding-bottom:.25rem;border-bottom:2px solid #333;text-transform:uppercase;font-size:1rem;font-weight:700;color:#333}.items-container{display:flex;flex-wrap:wrap;gap:.5rem;align-items:flex-start}.skill-tag{padding:2px;border:1px solid #ddd;font-size:12px;color:#555;margin:0;width:-moz-fit-content;width:fit-content;min-height:24px;display:flex;align-items:center;background:#fff;justify-content:center;white-space:nowrap}.education-item,.experience-item,.project-item{margin-bottom:.5rem;padding:.5rem;border:1px solid #ddd;background:#fafafa;flex:1 1 300px;min-width:250px;max-width:400px}.item-title{margin:0 0 .25rem;font-size:1rem;font-weight:700;color:#333}.item-subtitle{margin:0 0 .25rem;font-size:12px;color:#666;font-weight:500}.item-description{margin:0;font-size:12px;line-height:1.3;color:#555}.project-tags{display:flex;gap:4px;margin-bottom:.25rem;flex-wrap:wrap}.project-tag{background:#666;color:#fff;padding:.1rem .4rem;font-size:10px;font-weight:500}.achievement-item{background:#f0f0f0;padding:.25rem .5rem;border:1px solid #ddd;font-size:12px;color:#555;margin:.1rem 0;flex:1 1 200px;min-width:150px;max-width:300px}}@keyframes shimmer{0%{background-position:-200px 0}to{background-position:calc(200px + 100%) 0}}.loading-skeleton{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200px 100%;animation:shimmer 1.5s infinite;border-radius:4px}.error-message{background:#fee;border:1px solid #fcc;border-radius:8px;padding:1rem;margin-top:1rem;color:#c33;font-size:.9rem}.chatbot-panel{width:320px;border:1px solid #e5e7eb;height:calc(100vh - 60px - 50px);flex-direction:column;box-sizing:border-box;padding:0;position:-webkit-sticky;position:sticky;top:60px;box-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px 0 rgba(0,0,0,.06);overflow:hidden}.chatbot-header,.chatbot-panel{background:#fff;border-radius:0;display:flex}.chatbot-header{justify-content:space-between;align-items:center;padding:1rem 1.25rem;border-bottom:1px solid #f3f4f6}.chatbot-title{margin:0;text-align:center;background:#fff;z-index:2;font-size:2rem;padding:1rem 1rem 0;font-weight:600;color:#111827;border-bottom:1px solid #ebebeb}.chatbot-icon{font-size:1rem;color:#6b7280}.chatbot-messages{flex:1 1;overflow-y:auto;padding:0;display:flex;flex-direction:column;background:#fff;height:calc(100vh - 60px - 50px - 120px)}.message{display:flex;padding:.5rem;border-bottom:1px solid #ebebeb;transition:background-color .15s ease}.message:hover{background-color:#fafafa}.message.user{background-color:#f8fafc;border-bottom:1px solid #e2e8f0}.message.bot{background-color:#fff}.message-content{width:100%;font-size:.875rem;line-height:1.5;color:#374151;white-space:pre-wrap;word-wrap:break-word;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.message.user .message-content{color:#1f2937;font-weight:500}.message.bot .message-content{color:#374151}.chatbot-input{padding:1rem 1.25rem;border-top:1px solid #f3f4f6;background:#fff;border-radius:0}.chatbot-input textarea{width:100%;padding:.75rem;border:1px solid #d1d5db;border-radius:6px;resize:none;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.875rem;margin-bottom:.75rem;box-sizing:border-box;background:#fff;color:#374151;line-height:1.4;transition:border-color .15s ease,box-shadow .15s ease}.chatbot-input textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,.1)}.chatbot-input textarea::placeholder{color:#9ca3af}.send-button{width:100%;padding:.625rem 1rem;background:#3b82f6;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:.875rem;font-weight:500;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;transition:all .15s ease;display:flex;align-items:center;justify-content:center;gap:.5rem}.send-button:hover:not(:disabled){background:#2563eb;transform:translateY(-1px);box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06)}.send-button:active:not(:disabled){transform:translateY(0);box-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px 0 rgba(0,0,0,.06)}.send-button:disabled{background:#d1d5db;cursor:not-allowed;transform:none;box-shadow:none}@media (max-width:1600px){.chatbot-panel{width:300px}}@media (max-width:1400px){.chatbot-panel{width:280px}}@media (max-width:1200px){.resume-builder-container{gap:1rem;padding:1rem}.chatbot-panel{width:260px}.sidebar{width:300px}}@media (max-width:1024px){.resume-builder-container{flex-direction:column;height:auto;min-height:100vh}.chatbot-panel{height:500px;order:3}.chatbot-panel,.sidebar{width:100%;position:relative;top:0}.sidebar{height:auto;max-height:300px}.main-content{order:2;height:auto;min-height:500px}}.loading-dots{display:inline-flex;align-items:center;gap:.25rem;color:#6b7280;font-size:.875rem}.loading-dots:after,.loading-dots:before{content:"";width:.5rem;height:.5rem;background:#3b82f6;border-radius:50%;animation:loadingDots 1.4s ease-in-out infinite}.loading-dots:before{animation-delay:-.32s}.loading-dots span{width:.5rem;height:.5rem;background:#3b82f6;border-radius:50%;animation:loadingDots 1.4s ease-in-out infinite;animation-delay:-.16s}@keyframes loadingDots{0%,80%,to{transform:scale(.8);opacity:.5}40%{transform:scale(1);opacity:1}}.tool-calls{background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border:1px solid #0ea5e9;border-radius:8px;padding:.75rem;margin:.25rem 0;box-shadow:0 2px 4px rgba(14,165,233,.1);animation:toolCallSlideIn .3s ease-out}.tool-calls-header{font-weight:600;color:#0369a1;font-size:.8rem;margin-bottom:.5rem;display:flex;align-items:center;gap:.25rem}.tool-calls-content{color:#0c4a6e;font-size:.875rem;line-height:1.4;font-family:SF Mono,Monaco,Inconsolata,Roboto Mono,monospace;background:hsla(0,0%,95%,.7);padding:.25rem;border-radius:4px;border-left:3px solid #0ea5e9}@keyframes toolCallSlideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.chatbot-messages::-webkit-scrollbar{width:6px}.chatbot-messages::-webkit-scrollbar-track{background:transparent}.chatbot-messages::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:3px}.chatbot-messages::-webkit-scrollbar-thumb:hover{background:#9ca3af}