.auth-overlay{position:fixed;inset:0;background:#000c;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:10000;padding:1rem;animation:fadeIn .3s ease-out}.auth-overlay.dark{background:#000000e6}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.auth-container{width:100%;max-width:400px;animation:slideUp .3s ease-out}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.auth-card{background:var(--bg-color);border-radius:16px;padding:2rem;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;border:1px solid var(--border-color)}.auth-header{text-align:center;margin-bottom:2rem}.auth-icon{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;background:var(--link-color);color:#fff;border-radius:12px;margin-bottom:1rem}.auth-title{font-size:1.5rem;font-weight:600;color:var(--text-primary);margin-bottom:.5rem}.auth-subtitle{color:var(--text-secondary);font-size:.9rem}.auth-form{display:flex;flex-direction:column;gap:1.5rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.input-wrapper{position:relative;display:flex;align-items:center}.input-icon{position:absolute;left:.75rem;color:var(--text-secondary);z-index:1}.auth-input{width:100%;padding:.75rem .75rem .75rem 2.5rem;border:2px solid var(--border-color);border-radius:8px;background:var(--input-bg);color:var(--text-primary);font-size:1rem;transition:all .2s ease;font-family:inherit}.auth-input:focus{outline:none;border-color:var(--link-color);box-shadow:0 0 0 3px #0066cc1a}.auth-input.error{border-color:#dc3545}.auth-input.error:focus{box-shadow:0 0 0 3px #dc35451a}.auth-input:disabled{opacity:.6;cursor:not-allowed}.password-toggle{position:absolute;right:.75rem;background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:.25rem;border-radius:4px;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.password-toggle:hover{color:var(--text-primary);background:var(--button-bg)}.password-toggle:disabled{opacity:.5;cursor:not-allowed}.error-message{color:#dc3545;font-size:.875rem;margin-top:.25rem}.global-error{background:#fee;border:1px solid #fcc;border-radius:8px;padding:.75rem;text-align:center;margin-bottom:1rem}.auth-button{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:.875rem 1.5rem;background:var(--link-color);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s ease;font-family:inherit}.auth-button:hover:not(:disabled){background:var(--link-hover);transform:translateY(-1px);box-shadow:0 4px 12px #0066cc4d}.auth-button:disabled{opacity:.7;cursor:not-allowed;transform:none;box-shadow:none}.button-spinner{width:18px;height:18px;border:2px solid rgba(255,255,255,.3);border-top:2px solid white;border-radius:50%;animation:buttonSpin .8s linear infinite}@keyframes buttonSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.auth-footer{margin-top:1.5rem;text-align:center}.auth-switch{color:var(--text-secondary);font-size:.9rem;margin:0}.auth-switch-button{background:none;border:none;color:var(--link-color);cursor:pointer;font-size:inherit;font-weight:500;margin-left:.5rem;transition:color .2s ease;font-family:inherit}.auth-switch-button:hover:not(:disabled){color:var(--link-hover);text-decoration:underline}.auth-switch-button:disabled{opacity:.6;cursor:not-allowed}.dark .auth-card{box-shadow:0 20px 25px -5px #0000004d,0 10px 10px -5px #0003}.dark .global-error{background:#dc35451a;border-color:#dc35454d;color:#ff6b6b}@media (max-width: 480px){.auth-overlay{padding:.5rem}.auth-card{padding:1.5rem}.auth-title{font-size:1.25rem}.auth-input{padding:.625rem .625rem .625rem 2.25rem;font-size:.9rem}.input-icon{left:.625rem}.password-toggle{right:.625rem}.auth-button{padding:.75rem 1.25rem;font-size:.9rem}}.auth-input:focus-visible{outline:2px solid var(--link-color);outline-offset:2px}.auth-button:focus-visible{outline:2px solid white;outline-offset:2px}.password-toggle:focus-visible{outline:2px solid var(--link-color);outline-offset:1px}.auth-card,.auth-input,.auth-button,.password-toggle{transition:all .3s ease}*{margin:0;padding:0;box-sizing:border-box}:root{--bg-color: #0a0a0a;--text-primary: rgb(209 213 219);--text-secondary: #cccccc;--link-color: #66b3ff;--link-hover: #99ccff;--border-color: #333333;--button-bg: #1a1a1a;--button-hover: #2a2a2a;--input-bg: #1a1a1a;--input-border: #333;--shadow: rgba(255, 255, 255, .1)}.dark{--bg-color: #0a0a0a;--text-primary: rgb(209 213 219);--text-secondary: #cccccc;--link-color: #66b3ff;--link-hover: #99ccff;--border-color: #333333;--button-bg: #1a1a1a;--button-hover: #2a2a2a;--input-bg: #1a1a1a;--input-border: #333;--shadow: rgba(255, 255, 255, .1)}a:hover{transform:scale(1.1)}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;line-height:1.6;background-color:var(--bg-color);color:var(--text-primary);transition:all .3s ease}.container{max-width:600px;margin:0 auto;padding:2rem 1rem;min-height:100vh}.header{position:fixed;top:1rem;right:1rem;z-index:1000}.header-controls{display:flex;gap:.5rem;align-items:center}.theme-toggle{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:none;background:var(--button-bg);color:var(--text-primary);border-radius:50%;cursor:pointer;transition:all .2s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 2px 8px var(--shadow)}.theme-toggle:hover{background:var(--button-hover);transform:scale(1.05)}.edit-button,.save-button,.cancel-button{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border:none;background:var(--button-bg);color:var(--text-primary);border-radius:20px;cursor:pointer;font-size:.9rem;transition:all .2s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 2px 8px var(--shadow)}.edit-button:hover,.save-button:hover{background:var(--button-hover);transform:translateY(-1px)}.save-button{background:#28a745;color:#fff}.save-button:hover{background:#218838}.cancel-button{background:#dc3545;color:#fff}.cancel-button:hover{background:#c82333}.edit-controls{display:flex;gap:.5rem}.main-content{padding-top:2rem}.name-social{display:flex;justify-content:space-between;align-items:center}.spinner-wrapper{display:flex;justify-content:center;align-items:center;width:100%;height:100vh}.name{font-size:2rem;font-weight:700;color:var(--text-primary)}.name-input{font-size:2rem!important;font-weight:700!important}.social-links{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;font-size:14px}.social-link{color:var(--link-color);text-decoration:none;transition:color .2s ease;transition:all .15s}.social-link:hover{color:var(--link-hover);transform:scale(1.1)}.social-link-edit{display:flex;gap:.5rem;align-items:center}.separator,.title{color:var(--text-secondary)}.title-input{color:var(--text-secondary)!important}.previously-label{color:var(--text-primary);margin-top:1rem;font-weight:700}.experiences{display:flex;flex-direction:column;padding-left:1rem}.experience{position:relative;padding:.5rem 0}.remove-button{position:absolute;top:0;right:0;background:#dc3545;color:#fff;border:none;border-radius:50%;width:24px;height:24px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease}.remove-button:hover{background:#c82333;transform:scale(1.1)}.experience-header{margin-bottom:.25rem;font-size:.875rem}.role{color:var(--text-primary);font-weight:500}.at-symbol{color:var(--text-secondary);margin:0 .25rem}.company-link{color:var(--link-color);transition:color .15s;text-decoration:none;transform:scale(0)}.company-link:hover{transform:scale(1.1)}.company-edit{display:flex;gap:.5rem;align-items:center}.description{color:var(--text-secondary);white-space:pre-line;padding-left:1rem;font-size:.75rem;font-style:italic}.add-experience-button{padding:.5rem 2rem;background:var(--button-bg);border:2px dashed var(--border-color);color:var(--text-secondary);border-radius:8px;cursor:pointer;transition:all .2s ease;font-size:1rem}.add-experience-button:hover{background:var(--button-hover);border-color:var(--text-secondary)}.edit-input{background:var(--input-bg);border:1px solid var(--input-border);color:var(--text-primary);padding:.5rem;border-radius:4px;font-family:inherit;font-size:inherit;transition:all .2s ease;width:100%}.edit-input:focus{outline:none;border-color:var(--link-color);box-shadow:0 0 0 2px #0066cc1a}.edit-input.small{width:auto;min-width:100px;flex:1}.description-input{resize:vertical;min-height:4rem;font-family:inherit}.loading-spinner{width:40px;height:40px;border:3px solid var(--border-color);border-top:3px solid var(--link-color);border-radius:50%;animation:spin 1s linear infinite}.email{color:var(--text-primary);margin-left:1rem}.footer{color:var(--text-secondary);font-size:12px;margin-top:40px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width: 768px){.header{top:.5rem;right:.5rem}.name{font-size:1.75rem}.name-social{flex-direction:column-reverse;align-items:flex-start}.name-input{font-size:1.75rem!important}.title{font-size:.8rem}.social-links{gap:.25rem}.social-link-edit,.company-edit{flex-direction:column;width:100%}.edit-controls{flex-direction:column}.edit-button,.save-button,.cancel-button{font-size:.8rem;padding:.4rem .8rem}}@media (max-width: 480px){.name{font-size:1.5rem}.name-input{font-size:1.5rem!important}.experience{padding:.35rem 0}}.dark .theme-toggle,.dark .edit-button,.dark .save-button,.dark .cancel-button{box-shadow:0 2px 8px #0000004d}.dark .add-experience-button{border-color:var(--border-color)}.dark .add-experience-button:hover{border-color:var(--text-secondary)}*{transition:background-color .3s ease,color .3s ease,border-color .3s ease}
