@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&family=Plus+Jakarta+Sans:wght@300;400;500;600;700&family=Roboto:wght@300;400;500;700&display=swap";
@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/fef07dbb0973bf53-s.3p2_lha1f2xer.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/8a480f0b521d4e75-s.1qq4vpdcun5oj.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/53b9e256198e5412-s.390ncx5urfkfu.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7178b3e590c64307-s.21jp631_3pja2.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/caa3a2e1cccd8315-s.p.0wgildi0cnwt9.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Fallback;src:local(Arial);ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.0%;size-adjust:104.76%}.geist_a71539c9-module__T19VSG__className{font-family:Geist,Geist Fallback;font-style:normal}.geist_a71539c9-module__T19VSG__variable{--font-geist-sans:"Geist", "Geist Fallback"}
@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5ce348bf30bf5439-s.31988l_ccedte.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/4fa387ec64143e14-s.2tuy5pz7dlieh.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/6306c77e7c8268e4-s.2dbetqa9o8jxf.woff2)format("woff2");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7d817b4c03b0c5f1-s.1uyisp29ctx0d.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/bbc41e54d2fcbd21-s.1rgnod-3esatf.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/797e433ab948586e-s.p.0r6juujl39pe6.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono Fallback;src:local(Arial);ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.0%;size-adjust:134.59%}.geist_mono_8d43a2aa-module__8Li5zG__className{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.geist_mono_8d43a2aa-module__8Li5zG__variable{--font-geist-mono:"Geist Mono", "Geist Mono Fallback"}
:root{--bg-primary:#f8fafc;--bg-secondary:#fff;--bg-tertiary:#f1f5f9;--bg-glass:#ffffffd9;--border-glass:#e2e8f0e6;--border-glass-active:#4f46e566;--text-primary:#0f172a;--text-secondary:#475569;--text-muted:#64748b;--primary-accent:#4f46e5;--primary-gradient:linear-gradient(135deg, #4f46e5 0%, #7c3aed 50%, #2563eb 100%);--primary-gradient-hover:linear-gradient(135deg, #4338ca 0%, #6d28d9 50%, #1d4ed8 100%);--success:#059669;--success-bg:#05966914;--error:#e11d48;--error-bg:#e11d4814;--warning:#d97706;--shadow-sm:0 1px 3px 0 #0000000d;--shadow-md:0 4px 6px -1px #00000012, 0 2px 4px -1px #0000000a;--shadow-lg:0 10px 25px -3px #00000014, 0 4px 6px -2px #00000008;--shadow-glass:0 10px 30px 0 #0f172a0d;--shadow-glow:0 0 20px #4f46e533;--radius-sm:8px;--radius-md:14px;--radius-lg:24px;--transition-smooth:all .3s cubic-bezier(.4, 0, .2, 1);--transition-fast:all .15s ease-in-out;font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif}*{box-sizing:border-box;margin:0;padding:0}html,body{background:var(--bg-primary);width:100%;height:100%;color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{border-radius:var(--radius-sm);background:#cbd5e1}::-webkit-scrollbar-thumb:hover{background:var(--primary-accent)}.app-container{background-image:radial-gradient(at 0 0,#4f46e50d 0,#0000 50%),radial-gradient(at 100% 100%,#d946ef0a 0,#0000 50%),radial-gradient(at 50% 0,#2563eb08 0,#0000 50%);background-attachment:fixed;flex-direction:column;min-height:100vh;display:flex}.navbar{background:var(--bg-glass);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--border-glass);z-index:100;justify-content:space-between;align-items:center;min-height:74px;padding:.85rem clamp(1rem,3vw,2.5rem);display:flex;position:sticky;top:0}.nav-logo{letter-spacing:-.05em;background:var(--primary-gradient);-webkit-text-fill-color:transparent;-webkit-background-clip:text;align-items:center;gap:.5rem;font-size:1.5rem;font-weight:700;display:flex}.nav-links{align-items:center;gap:1.5rem;display:flex}.btn{border-radius:var(--radius-md);cursor:pointer;transition:var(--transition-smooth);border:none;justify-content:center;align-items:center;padding:.75rem 1.5rem;font-size:.95rem;font-weight:600;display:inline-flex}.btn-primary{background:var(--primary-gradient);color:#fff;box-shadow:var(--shadow-sm)}.btn-primary:hover{background:var(--primary-gradient-hover);box-shadow:var(--shadow-glow);transform:translateY(-2px)}.btn-secondary{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-glass);box-shadow:var(--shadow-sm)}.btn-secondary:hover{background:#f1f5f9;border-color:#cbd5e1;transform:translateY(-2px)}.btn:active{transform:translateY(0)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.glass-card{background:var(--bg-glass);-webkit-backdrop-filter:blur(20px);border:1px solid var(--border-glass);border-radius:var(--radius-lg);box-shadow:var(--shadow-glass);transition:var(--transition-smooth);padding:2.5rem}.glass-card:hover{border-color:#4f46e540;box-shadow:0 15px 35px -5px #0f172a14,0 0 30px #4f46e50a}.form-group{flex-direction:column;gap:.5rem;margin-bottom:1.5rem;display:flex}.form-label{color:var(--text-secondary);letter-spacing:.02em;font-size:.9rem;font-weight:500}.form-input{border:1px solid var(--border-glass);border-radius:var(--radius-md);width:100%;color:var(--text-primary);transition:var(--transition-smooth);background:#fff;outline:none;padding:.875rem 1.125rem;font-size:.95rem}.form-input:focus{border-color:var(--primary-accent);background:#fff;box-shadow:0 0 0 3px #4f46e51f}.form-input::placeholder{color:var(--text-muted)}.form-input.form-input-error,.form-input-error{border-color:var(--error)!important;background:#e11d4805!important}.form-input.form-input-error:focus,.form-input-error:focus{border-color:var(--error)!important;box-shadow:0 0 0 3px #e11d4826!important}.role-toggle{border:1px solid var(--border-glass);border-radius:var(--radius-md);background:#f1f5f9;grid-template-columns:1fr 1fr;margin-bottom:1.5rem;padding:.35rem;display:grid}.role-option{text-align:center;cursor:pointer;border-radius:calc(var(--radius-md) - 4px);color:var(--text-secondary);transition:var(--transition-smooth);padding:.85rem;font-size:.95rem;font-weight:600}.role-option.active{background:var(--primary-gradient);color:#fff;box-shadow:var(--shadow-sm)}.validation-error{color:var(--error);align-items:center;gap:.35rem;margin-top:.35rem;font-size:.85rem;font-weight:500;animation:.2s ease-in-out fadeIn;display:flex}.alert{border-radius:var(--radius-md);align-items:center;gap:.75rem;margin-bottom:1.5rem;padding:1rem 1.25rem;font-size:.9rem;animation:.3s cubic-bezier(.16,1,.3,1) slideIn;display:flex}.alert-danger{background:var(--error-bg);color:var(--error);border:1px solid #e11d4833}.alert-success{background:var(--success-bg);color:var(--success);border:1px solid #05966933}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@media (max-width:768px){.navbar{flex-wrap:wrap;gap:.75rem;min-height:auto;padding:.875rem 1rem;position:relative!important;top:auto!important}.nav-logo{font-size:1.25rem}.nav-links{flex-wrap:wrap;justify-content:flex-end;gap:.5rem;width:100%}.glass-card{border-radius:var(--radius-md);padding:1.5rem 1rem}.btn{min-height:44px;padding:.65rem 1.15rem;font-size:.875rem}.form-input{min-height:44px;padding:.75rem 1rem;font-size:.9rem}.role-toggle{margin-bottom:1rem}.role-option{padding:.75rem .5rem;font-size:.875rem}}@media (max-width:480px){.nav-links{justify-content:space-between}.nav-links .btn{text-align:center;flex:1}}.form-row-2col{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1rem;display:grid}.form-row-4col{grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;display:grid}.form-row-2col>*,.form-row-4col>*{min-width:0}input[type=month],input[type=date]{box-sizing:border-box;width:100%;min-width:0;max-width:100%}input[type=date]::-webkit-date-and-time-value{text-align:left}input[type=month]::-webkit-date-and-time-value{text-align:left}.notification-popover{background:var(--bg-secondary);border:1px solid var(--border-glass);border-radius:var(--radius-md);z-index:1000;width:360px;max-width:90vw;animation:.2s cubic-bezier(.16,1,.3,1) slideIn;position:absolute;top:calc(100% + 10px);right:0;overflow:hidden;box-shadow:0 20px 40px -8px #0f172a26}.notification-backdrop{display:none}@media (max-width:640px){.form-row-2col{grid-template-columns:1fr!important;gap:.85rem!important}.form-row-4col{grid-template-columns:1fr 1fr!important;gap:.75rem!important}.modal-checkbox-align{height:auto!important;padding-top:.25rem!important}.notification-backdrop{display:block}.notification-popover{border-radius:var(--radius-md)!important;width:auto!important;max-width:calc(100vw - 24px)!important;max-height:calc(100vh - 84px)!important;position:fixed!important;top:68px!important;left:12px!important;right:12px!important;box-shadow:0 25px 50px -12px #0000004d!important}}@media (max-width:480px){.form-row-4col{grid-template-columns:1fr!important}}@media print{body{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;background:#fff!important;margin:0!important;padding:0!important}.navbar,.footer,aside,.btn,header.navbar,div[style*="position: fixed"],div[style*=position\:fixed]{display:none!important}main{background:#fff!important;margin:0!important;padding:0!important}#resume-sheet{box-shadow:none!important;border-radius:0!important;width:210mm!important;min-height:297mm!important;margin:0 auto!important}@page{size:A4 portrait;margin:0}}.mobile-builder-barrier{display:none}.desktop-builder-layout{flex:1;height:calc(100vh - 65px);display:flex;overflow:hidden}@media (max-width:1023px){.mobile-builder-barrier{text-align:center;background:#f8fafc;flex-direction:column;justify-content:center;align-items:center;min-height:calc(100vh - 70px);padding:2.5rem 1.5rem;display:flex!important}.desktop-builder-layout,.desktop-builder-header-actions{display:none!important}.mobile-device-notice{color:#1e40af;border-radius:var(--radius-sm);background:#eff6ff;border:1px solid #bfdbfe;align-items:center;gap:.75rem;margin-bottom:1.5rem;padding:.85rem 1.25rem;font-size:.88rem;line-height:1.4;display:flex!important}}
