.layout{height:100vh;display:flex;position:relative}.main-content{flex-direction:column;flex:1;padding:32px 32px 0;display:flex;overflow:hidden}.content-loading{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:16px;min-height:200px;display:flex}.content-loading .loading-spinner{border:4px solid var(--color-gray-800);border-top:4px solid var(--color-brand-500);border-radius:50%;width:40px;height:40px;animation:1s linear infinite spin}.content-loading p{color:var(--color-gray-400);margin:0;font-size:14px}@keyframes spin{to{transform:rotate(360deg)}}.modal-overlay{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000d9;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.resume-result-modal{background:#0a0a0a;border:1px solid #1f1f1f;border-radius:8px;width:90%;max-width:900px;max-height:90vh;overflow-y:auto;box-shadow:0 24px 48px #000c}.resume-result-modal::-webkit-scrollbar{width:10px}.resume-result-modal::-webkit-scrollbar-track{background:#0a0a0a}.resume-result-modal::-webkit-scrollbar-thumb{background:#2a2a2a;border-radius:5px}.resume-result-modal::-webkit-scrollbar-thumb:hover{background:#3a3a3a}.resume-result-modal .modal-header{background:#0f0f0f;border-bottom:1px solid #1f1f1f;justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.resume-result-modal .modal-header .header-content{flex-direction:column;gap:6px;display:flex}.resume-result-modal .modal-header .header-content h2{color:#fff;margin:0;font-size:1.25rem;font-weight:600}.resume-result-modal .modal-header .header-content .cache-badge{color:#666;font-size:.8rem;font-weight:400}.resume-result-modal .modal-header .header-actions{align-items:center;gap:8px;display:flex}.resume-result-modal .modal-header .header-actions .regenerate-btn{color:#007aff;cursor:pointer;background:0 0;border:1px solid #2a2a2a;border-radius:6px;justify-content:center;align-items:center;padding:8px;transition:all .2s;display:flex}.resume-result-modal .modal-header .header-actions .regenerate-btn:hover{background:#1a1a1a;border-color:#007aff;transform:rotate(180deg)}.resume-result-modal .modal-header .header-actions .regenerate-btn svg{width:18px;height:18px}.resume-result-modal .modal-header .header-actions .modal-close-btn{color:#666;cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:8px;transition:all .15s;display:flex}.resume-result-modal .modal-header .header-actions .modal-close-btn:hover{color:#fff;background:#1a1a1a}.resume-result-modal .modal-header .header-actions .modal-close-btn svg{width:20px;height:20px}.resume-result-modal .modal-body{flex-direction:column;gap:20px;min-height:200px;padding:24px;display:flex}.resume-result-modal .modal-body .loading-state{flex-direction:column;justify-content:center;align-items:center;gap:20px;padding:60px 20px;display:flex}.resume-result-modal .modal-body .loading-state .spinner{border:3px solid #1f1f1f;border-top-color:#007aff;border-radius:50%;width:48px;height:48px;animation:.8s linear infinite spin}.resume-result-modal .modal-body .loading-state p{color:#999;margin:0;font-size:.95rem}.resume-result-modal .modal-body .error-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:40px 20px;display:flex}.resume-result-modal .modal-body .error-state svg{color:#ff453a}.resume-result-modal .modal-body .error-state h3{color:#fff;margin:0;font-size:1.2rem;font-weight:600}.resume-result-modal .modal-body .error-state p{color:#999;max-width:500px;margin:0;font-size:.95rem}.resume-result-modal .modal-body .error-state .settings-link{color:#fff;background:#007aff;border-radius:6px;margin-top:8px;padding:10px 20px;font-size:.9rem;font-weight:500;text-decoration:none;transition:all .15s}.resume-result-modal .modal-body .error-state .settings-link:hover{background:#0051d5}.resume-result-modal .modal-body .download-section{justify-content:center;padding:12px 0;display:flex}.resume-result-modal .modal-body .download-section .download-btn{color:#fff;cursor:pointer;background:#007aff;border:none;border-radius:8px;align-items:center;gap:10px;padding:14px 28px;font-size:.95rem;font-weight:600;text-decoration:none;transition:all .15s;display:inline-flex}.resume-result-modal .modal-body .download-section .download-btn:hover{background:#0051d5;transform:translateY(-1px);box-shadow:0 4px 12px #007aff4d}.resume-result-modal .modal-body .download-section .download-btn svg{width:20px;height:20px}.resume-result-modal .modal-body .edits-section{flex-direction:column;gap:12px;display:flex}.resume-result-modal .modal-body .edits-section .section-header{background:#0f0f0f;border:1px solid #1f1f1f;border-radius:6px;align-items:center;gap:10px;padding:12px 16px;display:flex}.resume-result-modal .modal-body .edits-section .section-header svg{color:#30d158;flex-shrink:0}.resume-result-modal .modal-body .edits-section .section-header span{color:#fff;font-size:.95rem;font-weight:600}.resume-result-modal .modal-body .edits-section.failed-section .section-header svg{color:#ffd60a}.resume-result-modal .modal-body .edits-section .edits-list{flex-direction:column;gap:16px;display:flex}.resume-result-modal .modal-body .edits-section .edits-list .edit-item{background:#0f0f0f;border:1px solid #1f1f1f;border-radius:6px;flex-direction:column;gap:12px;padding:16px;display:flex}.resume-result-modal .modal-body .edits-section .edits-list .edit-item .edit-reason{color:#ccc;font-size:.9rem;line-height:1.5}.resume-result-modal .modal-body .edits-section .edits-list .edit-item .edit-diff{background:#000;border:1px solid #1a1a1a;border-radius:6px;flex-direction:column;gap:0;display:flex;overflow:hidden}.resume-result-modal .modal-body .edits-section .edits-list .edit-item .edit-diff .diff-line{align-items:flex-start;gap:12px;padding:10px 12px;font-family:SF Mono,Monaco,Cascadia Code,Roboto Mono,Consolas,monospace;font-size:.85rem;line-height:1.6;display:flex}.resume-result-modal .modal-body .edits-section .edits-list .edit-item .edit-diff .diff-line.removed{background:#ff453a14;border-left:2px solid #ff453a}.resume-result-modal .modal-body .edits-section .edits-list .edit-item .edit-diff .diff-line.removed .diff-marker{color:#ff453a;flex-shrink:0;font-weight:600}.resume-result-modal .modal-body .edits-section .edits-list .edit-item .edit-diff .diff-line.removed .diff-text{color:#ff9f97}.resume-result-modal .modal-body .edits-section .edits-list .edit-item .edit-diff .diff-line.added{background:#30d15814;border-left:2px solid #30d158}.resume-result-modal .modal-body .edits-section .edits-list .edit-item .edit-diff .diff-line.added .diff-marker{color:#30d158;flex-shrink:0;font-weight:600}.resume-result-modal .modal-body .edits-section .edits-list .edit-item .edit-diff .diff-line.added .diff-text{color:#86efac}.resume-result-modal .modal-body .edits-section .edits-list .edit-item .edit-diff .diff-line .diff-marker{-webkit-user-select:none;user-select:none}.resume-result-modal .modal-body .edits-section .edits-list .edit-item .edit-diff .diff-line .diff-text{word-wrap:break-word;overflow-wrap:break-word;flex:1}.resume-result-modal .modal-body .edits-section .edits-list .edit-item.failed{opacity:.7}.resume-result-modal .modal-body .edits-section .edits-list .edit-item.failed .edit-note{color:#ffd60a;background:#ffd60a14;border-left:2px solid #ffd60a;border-radius:4px;padding:8px 12px;font-size:.85rem}.resume-generation-banner{z-index:30;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);color:#e5e7eb;background:radial-gradient(circle at 0 0,#082f4959,#0000 55%),radial-gradient(circle at 100% 0,#1e40af59,#0000 55%),linear-gradient(90deg,#0f172af5,#0f172ae6);border:1px solid #94a3b859;border-radius:0 0 12px 12px;align-items:center;gap:12px;width:100%;margin-bottom:12px;padding:10px 16px;display:flex;position:sticky;top:0;box-shadow:0 4px 12px #0f172a29}.resume-generation-banner .banner-icon{background:radial-gradient(circle at 30% 0,#22c55e,#16a34a);border-radius:999px;justify-content:center;align-items:center;width:28px;height:28px;display:flex;box-shadow:0 0 0 1px #22c55e66,0 8px 20px #16a34ab3}.resume-generation-banner .banner-icon svg{color:#fff}.resume-generation-banner.is-loading .banner-icon{background:radial-gradient(circle at 30% 0,#38bdf8,#0ea5e9);box-shadow:0 0 0 1px #38bdf866,0 8px 20px #0ea5e9b3}.resume-generation-banner.is-error{background:radial-gradient(circle at 0 0,#7f1d1d73,#0000 55%),linear-gradient(90deg,#0f172afa,#0f172ae6)}.resume-generation-banner.is-error .banner-icon{background:radial-gradient(circle at 30% 0,#ef4444,#b91c1c);box-shadow:0 0 0 1px #ef444480,0 8px 20px #b91c1ce6}.resume-generation-banner .banner-content{flex:1;min-width:0}.resume-generation-banner .banner-content .banner-title-row{align-items:center;gap:8px;margin-bottom:2px;display:flex}.resume-generation-banner .banner-content .banner-title-row .banner-title{letter-spacing:.02em;font-size:14px;font-weight:600}.resume-generation-banner .banner-content .banner-title-row .banner-pill{text-transform:uppercase;letter-spacing:.08em;color:#e5e7eb;background:#0f172ab3;border:1px solid #94a3b899;border-radius:999px;padding:2px 8px;font-size:11px}.resume-generation-banner .banner-content .banner-subtext{color:#cbd5f5;opacity:.9;white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.resume-generation-banner .banner-actions{align-items:center;gap:8px;display:flex}.resume-generation-banner .banner-cta{color:#e5e7eb;cursor:pointer;background:#0f172ae6;border:1px solid #94a3b88c;border-radius:999px;align-items:center;gap:6px;padding:6px 12px;font-size:12px;font-weight:500;transition:background .12s,border-color .12s,transform 80ms,box-shadow 80ms;display:inline-flex}.resume-generation-banner .banner-cta svg{width:14px;height:14px}.resume-generation-banner .banner-cta:hover{background:#0f172a;border-color:#bfdbfecc;transform:translateY(-.5px);box-shadow:0 0 0 1px #bfdbfe59,0 8px 20px #0f172a66}.resume-generation-banner .banner-cta:active{transform:translateY(.5px);box-shadow:0 0 0 1px #94a3b866,0 3px 10px #0f172ab3}.resume-generation-banner .banner-cta.is-secondary{opacity:.9;background:0 0;border-style:dashed;padding-inline:10px;font-weight:400}.resume-generation-banner .banner-close{color:#9ca3af;cursor:pointer;background:0 0;border:none;border-radius:999px;justify-content:center;align-items:center;width:24px;height:24px;transition:background .1s,color .1s,transform 80ms;display:inline-flex}.resume-generation-banner .banner-close svg{width:14px;height:14px}.resume-generation-banner .banner-close:hover{color:#e5e7eb;background:#0f172ae6;transform:translateY(-.5px)}.resume-generation-spinner{border:2px solid #94a3b880;border-top-color:#e5e7eb;border-radius:999px;width:16px;height:16px;animation:.75s linear infinite resume-spin}@keyframes resume-spin{to{transform:rotate(360deg)}}.sidebar{background-color:var(--color-brand-900);border-right:1px solid var(--color-brand-800);flex-direction:column;flex-shrink:0;width:80px;display:flex}.sidebar .sidebar-header{flex-direction:row;justify-content:center;align-items:center;width:100%;padding-top:24px;display:flex}.sidebar .sidebar-header .sidebar-logo{object-fit:contain;border-radius:12px;max-width:44px;max-height:44px;display:block}.sidebar .sidebar-nav{flex:1;padding:40px 0}.sidebar .nav-list{flex-direction:column;justify-content:center;align-items:center;gap:12px;margin:0;padding:0;list-style:none;display:flex}.sidebar .nav-item{margin:0}.sidebar .nav-link{color:var(--color-brand-100);justify-content:center;align-items:center;gap:0;font-weight:400;text-decoration:none;transition:background-color .2s,color .2s;display:flex;position:relative}.sidebar .nav-link span{display:none}.sidebar .nav-link .nav-icon{color:var(--color-brand-200);background:var(--color-brand-950);border-radius:8px;justify-content:center;align-items:center;width:40px;height:40px;padding:10px;transition:background .2s,color .2s;display:flex}.sidebar .nav-link:after{content:attr(data-tooltip);white-space:nowrap;color:#e5e7eb;opacity:0;pointer-events:none;z-index:50;background:#0f172af2;border:1px solid #94a3b880;border-radius:6px;padding:8px 10px;font-size:12px;transition:opacity .12s,transform .12s;position:absolute;top:50%;left:100%;transform:translate(8px,-50%)}.sidebar .nav-link:hover:after{opacity:1;transform:translate(10px,-50%)}.sidebar .nav-link:hover{color:var(--color-brand-200)}.sidebar .nav-link:hover .nav-icon{color:var(--color-brand-300);background:var(--color-brand-800)}.sidebar .nav-link.active{color:var(--color-brand-0)}.sidebar .nav-link.active .nav-icon{color:var(--color-brand-0);background:var(--color-brand-700)}.sidebar .sidebar-footer{border-top:1px solid var(--color-brand-900);justify-content:center;margin-top:auto;padding:16px 24px;display:flex}.sidebar .user-info{justify-content:center;align-items:center;gap:12px;display:flex;position:relative}.sidebar .user-info:after{content:attr(data-tooltip);white-space:nowrap;color:#e5e7eb;opacity:0;pointer-events:none;z-index:50;background:#0f172af2;border:1px solid #94a3b880;border-radius:6px;padding:4px 8px;font-size:12px;transition:opacity .12s,transform .12s;position:absolute;top:50%;left:100%;transform:translate(8px,-50%)}.sidebar .user-info:hover:after{opacity:1;transform:translate(10px,-50%)}.sidebar .user-details{display:none}.sidebar .user-name{color:var(--color-brand-100);white-space:nowrap;text-overflow:ellipsis;margin:0 0 4px;font-size:14px;font-weight:600;overflow:hidden}.sidebar .user-email{color:var(--color-brand-300);white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:12px;overflow:hidden}.sidebar .sign-out-button{color:var(--color-brand-200);cursor:pointer;background:0 0;border:none;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;padding:8px;transition:background-color .2s,color .2s;display:flex}.sidebar .sign-out-button .sign-out-icon{width:20px;height:20px;color:var(--color-brand-200);transition:color .2s}.sidebar .sign-out-button:hover{background:var(--color-brand-800);color:var(--color-brand-100)}.sidebar .sign-out-button:hover .sign-out-icon{color:var(--color-brand-100)}.sidebar .sign-out-button:active{background:var(--color-brand-700)}.icon{vertical-align:middle;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.icon svg{width:100%;height:100%;display:block}.icon--xs{width:12px;height:12px}.icon--sm{width:16px;height:16px}.icon--md{width:20px;height:20px}.icon--lg{width:24px;height:24px}.icon--xl{width:32px;height:32px}.icon--2xl{width:40px;height:40px}.icon--primary{color:var(--color-primary-500)}.icon--secondary{color:var(--color-text-secondary)}.icon--success{color:var(--color-success-500)}.icon--warning{color:var(--color-warning-500)}.icon--error{color:var(--color-error-500)}.icon--muted{color:var(--color-text-tertiary)}.icon--white{color:var(--color-white)}*,:before,:after{box-sizing:border-box}*{margin:0;padding:0}html{background:var(--color-bg-primary)}html,body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;height:100%;font-family:Work Sans,sans-serif;line-height:1.5;overflow:hidden}#root{height:100%}h1,h2,h3,h4,h5,h6,p,span,div{font-size:inherit;font-weight:inherit;line-height:inherit}ul,ol{list-style:none}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:none;margin:0;padding:0}button:focus{outline:none}input,textarea,select{font:inherit;color:inherit;background:0 0;border:none;outline:none}img,picture,video,canvas,svg{max-width:100%;display:block}table{border-collapse:collapse;border-spacing:0}th,td{text-align:left;font-weight:inherit}fieldset{border:none}legend{display:block}input[type=submit],input[type=reset],input[type=button],button,input[type=text],input[type=email],input[type=password],input[type=number],textarea{appearance:none}html,body{scrollbar-width:none;-ms-overflow-style:none}html::-webkit-scrollbar{display:none}body::-webkit-scrollbar{display:none}:root{--color-bg-brand:#8206c5;--color-brand-0:#fdf9ff;--color-brand-50:#f5eafd;--color-brand-100:#e3c6fa;--color-brand-200:#c98cf3;--color-brand-300:#a94be6;--color-brand-400:#8d1fd1;--color-brand-500:#8206c5;--color-brand-600:#6a04a3;--color-brand-700:#400162;--color-brand-800:#370152;--color-brand-900:#250135;--color-brand-1000:#12001a;--color-brand-1100:#0a000f;--color-primary-50:#eff6ff;--color-primary-100:#dbeafe;--color-primary-200:#bfdbfe;--color-primary-300:#93c5fd;--color-primary-400:#60a5fa;--color-primary-500:#3b82f6;--color-primary-600:#2563eb;--color-primary-700:#1d4ed8;--color-primary-800:#1e40af;--color-primary-900:#1e3a8a;--color-gray-50:#f9fafb;--color-gray-100:#f3f4f6;--color-gray-200:#e5e7eb;--color-gray-300:#d1d5db;--color-gray-400:#9ca3af;--color-gray-500:#6b7280;--color-gray-600:#4b5563;--color-gray-700:#374151;--color-gray-800:#1f2937;--color-gray-900:#111827;--color-success-50:#f0fdf4;--color-success-100:#dcfce7;--color-success-200:#bbf7d0;--color-success-300:#86efac;--color-success-400:#4ade80;--color-success-500:#22c55e;--color-success-600:#16a34a;--color-success-700:#15803d;--color-success-800:#166534;--color-success-900:#14532d;--color-warning-50:#fffbeb;--color-warning-100:#fef3c7;--color-warning-200:#fde68a;--color-warning-300:#fcd34d;--color-warning-400:#fbbf24;--color-warning-500:#f59e0b;--color-warning-600:#d97706;--color-warning-700:#b45309;--color-warning-800:#92400e;--color-warning-900:#78350f;--color-error-50:#fef2f2;--color-error-100:#fee2e2;--color-error-200:#fecaca;--color-error-300:#fca5a5;--color-error-400:#f87171;--color-error-500:#ef4444;--color-error-600:#dc2626;--color-error-700:#b91c1c;--color-error-800:#991b1b;--color-error-900:#7f1d1d;--color-info-50:#eff6ff;--color-info-100:#dbeafe;--color-info-200:#bfdbfe;--color-info-300:#93c5fd;--color-info-400:#60a5fa;--color-info-500:#3b82f6;--color-info-600:#2563eb;--color-info-700:#1d4ed8;--color-info-800:#1e40af;--color-info-900:#1e3a8a;--color-white:#fff;--color-black:#000;--color-transparent:transparent;--color-bg-primary:#160121;--color-bg-secondary:var(--color-gray-50);--color-bg-tertiary:var(--color-gray-100);--color-bg-dark:var(--color-gray-900);--color-primary-brand:var(--color-brand-500);--color-primary-brand-dark:var(--color-brand-700);--color-primary-brand-light:var(--color-brand-200);--color-text-primary:var(--color-gray-900);--color-text-secondary:var(--color-gray-600);--color-text-tertiary:var(--color-gray-400);--color-text-inverse:var(--color-white);--color-border-light:var(--color-gray-200);--color-border-medium:var(--color-gray-300);--color-border-dark:var(--color-gray-400);--color-shadow-light:#0000001a;--color-shadow-medium:#00000026;--color-shadow-dark:#00000040;--color-sidebar-bg:#1e052e;--color-sidebar-border:#4c2266;--color-sidebar-text-hover:var(--color-white);--color-sidebar-bg-hover:#34495e}
