.andrew-johnson-resume-theme{--color-primary:#28e98c;--color-secondary:#3b82f6;--color-accent:#8b5cf6;--color-background:#000000;--color-surface:#101010;--color-border:#303030;--color-text-primary:#ffffff;--color-text-secondary:#c2c2c2;--color-text-muted:#888888;--color-selection-background:#28e98c;--color-selection-text:#000000;--color-success:#28e98c;--color-warning:#f59e0b;--color-error:#ef4444;--color-info:#3b82f6;--color-primary-100:#d4fae9;--color-primary-300:#7af5be;--color-primary-500:#28e98c;--color-primary-700:#1db86e;--color-primary-900:#0d5a36;--color-secondary-100:#dbeafe;--color-secondary-300:#93c5fd;--color-secondary-500:#3b82f6;--color-secondary-700:#1d4ed8;--color-secondary-900:#1e3a8a;--color-accent-100:#ede9fe;--color-accent-300:#c4b5fd;--color-accent-500:#8b5cf6;--color-accent-700:#6d28d9;--color-accent-900:#4c1d95;--color-success-100:#d4fae9;--color-success-300:#7af5be;--color-success-500:#28e98c;--color-success-700:#1db86e;--color-success-900:#0d5a36;--color-warning-100:#fef3c7;--color-warning-300:#fcd34d;--color-warning-500:#f59e0b;--color-warning-700:#b45309;--color-warning-900:#78350f;--color-error-100:#fee2e2;--color-error-300:#fca5a5;--color-error-500:#ef4444;--color-error-700:#b91c1c;--color-error-900:#7f1d1d;--color-info-100:#dbeafe;--color-info-300:#93c5fd;--color-info-500:#3b82f6;--color-info-700:#1d4ed8;--color-info-900:#1e3a8a;--color-primary-rgb:40,233,140;--color-secondary-rgb:59,130,246;--color-accent-rgb:139,92,246;--color-background-rgb:0,0,0;--color-surface-rgb:16,16,16;--color-text-primary-rgb:255,255,255;--color-text-secondary-rgb:194,194,194;--color-text-muted-rgb:136,136,136;--color-border-rgb:48,48,48;--color-selection-background-rgb:40,233,140;--color-selection-text-rgb:0,0,0;--color-success-rgb:40,233,140;--color-warning-rgb:245,158,11;--color-error-rgb:239,68,68;--color-info-rgb:59,130,246;--font-primary:"Space Grotesk",system-ui,-apple-system,BlinkMacSystemFont,sans-serif;--text-xs:0.75rem;--text-sm:0.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--text-4xl:2.25rem;--text-5xl:3rem;--text-6xl:3.75rem;--font-weight-thin:100;--font-weight-light:300;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-extrabold:800;--font-weight-black:900;--letter-spacing-tighter:-0.05em;--letter-spacing-tight:-0.025em;--letter-spacing-normal:0em;--letter-spacing-wide:0.025em;--letter-spacing-wider:0.05em;--letter-spacing-widest:0.1em;--line-height-none:1;--line-height-tight:1.25;--line-height-snug:1.375;--line-height-normal:1.5;--line-height-relaxed:1.625;--line-height-loose:2;--global-letter-spacing:-0.02em;--global-line-height:1.6;--text-shadow:0 2px 4px rgba(0,0,0,0.3);--text-stroke:1px solid currentColor;--text-gradient:linear-gradient(135deg,var(--color-primary),var(--color-accent));--text-shadow-none:none;--text-shadow-sm:0 1px 2px rgba(0,0,0,0.2);--text-shadow-lg:0 4px 8px rgba(0,0,0,0.3);--text-shadow-xl:0 8px 16px rgba(0,0,0,0.4);--text-shadow-2xl:0 16px 32px rgba(0,0,0,0.5);--text-stroke-none:none;--text-stroke-sm:0.5px solid currentColor;--text-stroke-lg:1.5px solid currentColor;--text-stroke-xl:2px solid currentColor;--text-stroke-2xl:3px solid currentColor;--text-gradient-primary:linear-gradient(135deg,var(--color-primary),var(--color-accent));--text-gradient-secondary:linear-gradient(135deg,var(--color-secondary),var(--color-primary));--text-gradient-accent:linear-gradient(135deg,var(--color-accent),var(--color-primary));--text-gradient-rainbow:linear-gradient(135deg,#ff0000,#ff8000,#ffff00,#80ff00,#00ff00,#00ff80,#00ffff,#0080ff,#0000ff,#8000ff,#ff00ff,#ff0080);--text-gradient-sunset:linear-gradient(135deg,#ff6b6b,#ffa726,#ffcc02);--text-gradient-ocean:linear-gradient(135deg,#667eea,#764ba2);--text-gradient-forest:linear-gradient(135deg,#134e5e,#71b280);--spacing-xs:0.25rem;--spacing-sm:0.5rem;--spacing-md:1rem;--spacing-lg:1.5rem;--spacing-xl:2rem;--spacing-none:0;--spacing-2xl:3rem;--spacing-3xl:4rem;--spacing-4xl:5rem;--shadow:0 4px 6px -1px rgb(0 0 0/0.3);--shadow-sm:0 1px 2px 0 rgb(0 0 0/0.2);--shadow-md:0 4px 6px -1px rgb(0 0 0/0.3);--shadow-lg:0 10px 15px -3px rgb(0 0 0/0.4);--shadow-xl:0 20px 25px -5px rgb(0 0 0/0.5);--shadow-2xl:0 25px 50px -12px rgb(0 0 0/0.6);--border-width:1px;--border-style:solid;--border-radius:12px;--border-width-thin:0.5px;--border-width-normal:1px;--border-width-thick:2px;--border-width-extra-thick:3px;--border-radius-none:0;--border-radius-sm:4px;--border-radius-normal:8px;--border-radius-md:12px;--border-radius-lg:16px;--border-radius-xl:24px;--border-radius-full:9999px;--border-style-solid:solid;--border-style-dashed:dashed;--border-style-dotted:dotted;--border-style-double:double;--border-style-groove:groove;--border-style-ridge:ridge;--border-style-inset:inset;--border-style-outset:outset;--blur-backdrop:8px;--blur-filter:4px;--blur-backdrop-none:0px;--blur-backdrop-sm:4px;--blur-backdrop-md:8px;--blur-backdrop-lg:12px;--blur-backdrop-xl:16px;--blur-backdrop-2xl:24px;--blur-filter-none:0px;--blur-filter-sm:2px;--blur-filter-md:4px;--blur-filter-lg:8px;--blur-filter-xl:12px;--blur-filter-2xl:16px;--card-background:var(--color-surface);--card-border:rgba(var(--color-border-rgb),0.3);--card-hover-border:rgba(var(--color-primary-rgb),0.3);--button-primary-bg:var(--color-primary);--button-primary-text:var(--color-background);--button-secondary-bg:var(--color-surface);--button-secondary-text:var(--color-text-primary);--button-tertiary-bg:var(--color-border);--button-tertiary-text:var(--color-text-primary);--input-text:var(--color-text-secondary);--input-placeholder:var(--color-text-muted);--input-bg:var(--color-surface);--input-border:var(--color-border);--glow-primary:0 0 20px rgba(var(--color-primary-rgb),0.3);--glow-secondary:0 0 20px rgba(var(--color-secondary-rgb),0.3);color:var(--color-text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;position:relative;line-height:var(--line-height-normal);min-height:100vh;max-width:100vw;overflow-x:hidden;scroll-behavior:smooth}.andrew-johnson-resume-theme,.andrew-johnson-resume-theme body,.andrew-johnson-resume-theme html{margin:0;padding:0;background-color:var(--color-background);width:100%}body:has(.andrew-johnson-resume-theme),html:has(.andrew-johnson-resume-theme){background-color:var(--color-background)!important}.andrew-johnson-resume-theme *,.andrew-johnson-resume-theme :after,.andrew-johnson-resume-theme :before{box-sizing:border-box}.andrew-johnson-resume-theme ::selection{background:var(--color-selection-background);color:var(--color-selection-text)}.andrew-johnson-resume-theme{font-size:var(--text-base);letter-spacing:var(--global-letter-spacing);line-height:var(--global-line-height);font-weight:var(--font-weight-normal);font-family:var(--font-primary)}.andrew-johnson-resume-theme .text-sm,.andrew-johnson-resume-theme small{font-size:var(--text-sm)}.andrew-johnson-resume-theme .ProseMirror ol,.andrew-johnson-resume-theme .ProseMirror ul{margin:var(--spacing-md) 0;padding-left:var(--spacing-2xl);color:var(--color-text-secondary);line-height:var(--line-height-relaxed)}.andrew-johnson-resume-theme .ProseMirror ul{list-style-type:none;position:relative}.andrew-johnson-resume-theme .ProseMirror ul li{position:relative;padding-left:var(--spacing-lg);margin-bottom:var(--spacing-sm);line-height:var(--line-height-relaxed);color:var(--color-text-secondary)}.andrew-johnson-resume-theme .ProseMirror ul li:before{content:"";position:absolute;left:0;top:calc(var(--line-height-relaxed) * .5em - 3px);width:6px;height:6px;border-radius:50%;background:var(--color-primary)}.andrew-johnson-resume-theme .ProseMirror ol{list-style-type:decimal;list-style-position:outside;counter-reset:list-counter}.andrew-johnson-resume-theme .ProseMirror ol li{margin-bottom:var(--spacing-sm);padding-left:var(--spacing-sm);line-height:var(--line-height-relaxed);color:var(--color-text-secondary);position:relative}.andrew-johnson-resume-theme .ProseMirror ol li::marker{color:var(--color-primary);font-weight:var(--font-weight-semibold);font-size:1em}.andrew-johnson-resume-theme .ProseMirror ol ol,.andrew-johnson-resume-theme .ProseMirror ol ul,.andrew-johnson-resume-theme .ProseMirror ul ol,.andrew-johnson-resume-theme .ProseMirror ul ul{margin-top:var(--spacing-xs);margin-bottom:var(--spacing-xs);padding-left:var(--spacing-xl)}.andrew-johnson-resume-theme .ProseMirror ul ul li:before{width:4px;height:4px;background:var(--color-secondary)}.andrew-johnson-resume-theme .ProseMirror ul ul ul li:before{width:3px;height:3px;background:var(--color-accent)}.andrew-johnson-resume-theme .ProseMirror li{margin-bottom:var(--spacing-sm);line-height:var(--line-height-relaxed)}.andrew-johnson-resume-theme .ProseMirror li:last-child{margin-bottom:0}.andrew-johnson-resume-theme .ProseMirror li>p{margin-top:0;margin-bottom:var(--spacing-xs)}.andrew-johnson-resume-theme .ProseMirror li>p:last-child{margin-bottom:0}.andrew-johnson-resume-theme .ProseMirror ol+p,.andrew-johnson-resume-theme .ProseMirror p+ol,.andrew-johnson-resume-theme .ProseMirror p+ul,.andrew-johnson-resume-theme .ProseMirror ul+p{margin-top:var(--spacing-md)}.andrew-johnson-resume-theme .ProseMirror h1,.andrew-johnson-resume-theme .ProseMirror h2,.andrew-johnson-resume-theme .ProseMirror h3,.andrew-johnson-resume-theme .ProseMirror h4,.andrew-johnson-resume-theme .ProseMirror h5,.andrew-johnson-resume-theme .ProseMirror h6{color:var(--color-text-primary);font-weight:var(--font-weight-bold);line-height:var(--line-height-tight);margin-top:var(--spacing-xl);margin-bottom:var(--spacing-md);letter-spacing:var(--letter-spacing-tight);font-family:var(--font-primary)}.andrew-johnson-resume-theme .ProseMirror h1:first-child,.andrew-johnson-resume-theme .ProseMirror h2:first-child,.andrew-johnson-resume-theme .ProseMirror h3:first-child,.andrew-johnson-resume-theme .ProseMirror h4:first-child,.andrew-johnson-resume-theme .ProseMirror h5:first-child,.andrew-johnson-resume-theme .ProseMirror h6:first-child{margin-top:0}.andrew-johnson-resume-theme .ProseMirror h1{font-size:var(--text-4xl);font-weight:var(--font-weight-bold);margin-bottom:var(--spacing-lg);line-height:var(--line-height-tight)}.andrew-johnson-resume-theme .ProseMirror h2{font-size:var(--text-3xl);font-weight:var(--font-weight-bold);margin-bottom:var(--spacing-md);line-height:var(--line-height-tight)}.andrew-johnson-resume-theme .ProseMirror h3{font-size:var(--text-2xl);font-weight:var(--font-weight-bold);margin-bottom:var(--spacing-md);line-height:var(--line-height-normal);color:var(--color-primary)}.andrew-johnson-resume-theme .ProseMirror h4{font-size:var(--text-xl)}.andrew-johnson-resume-theme .ProseMirror h4,.andrew-johnson-resume-theme .ProseMirror h5{font-weight:var(--font-weight-semibold);margin-bottom:var(--spacing-sm);line-height:var(--line-height-normal)}.andrew-johnson-resume-theme .ProseMirror h5{font-size:var(--text-lg)}.andrew-johnson-resume-theme .ProseMirror h6{font-size:var(--text-base);font-weight:var(--font-weight-semibold);margin-bottom:var(--spacing-sm);text-transform:uppercase;letter-spacing:.05em;line-height:var(--line-height-normal);color:var(--color-accent)}.andrew-johnson-resume-theme .ProseMirror p+h1,.andrew-johnson-resume-theme .ProseMirror p+h2,.andrew-johnson-resume-theme .ProseMirror p+h3,.andrew-johnson-resume-theme .ProseMirror p+h4,.andrew-johnson-resume-theme .ProseMirror p+h5,.andrew-johnson-resume-theme .ProseMirror p+h6{margin-top:var(--spacing-xl)}.andrew-johnson-resume-theme .ProseMirror h1+ol,.andrew-johnson-resume-theme .ProseMirror h1+p,.andrew-johnson-resume-theme .ProseMirror h1+ul,.andrew-johnson-resume-theme .ProseMirror h2+ol,.andrew-johnson-resume-theme .ProseMirror h2+p,.andrew-johnson-resume-theme .ProseMirror h2+ul,.andrew-johnson-resume-theme .ProseMirror h3+ol,.andrew-johnson-resume-theme .ProseMirror h3+p,.andrew-johnson-resume-theme .ProseMirror h3+ul,.andrew-johnson-resume-theme .ProseMirror h4+p,.andrew-johnson-resume-theme .ProseMirror h5+p,.andrew-johnson-resume-theme .ProseMirror h6+p{margin-top:var(--spacing-md)}.editable-field-focus{outline:none!important;position:relative;transition:all .3s ease;box-shadow:0 0 0 1px rgba(var(--color-primary-rgb),.25),inset 0 0 0 1px rgba(var(--color-primary-rgb),.1)!important;border-radius:var(--border-radius-sm)!important}.editable-field-focus:focus{outline:none!important;box-shadow:0 0 0 2px rgba(var(--color-primary-rgb),.4),0 0 8px rgba(var(--color-primary-rgb),.2),0 0 16px rgba(var(--color-primary-rgb),.1),inset 0 0 0 1px rgba(var(--color-primary-rgb),.15)!important}.andrew-johnson-resume-theme ::-webkit-scrollbar{width:8px}.andrew-johnson-resume-theme ::-webkit-scrollbar-track{background:var(--color-surface)}.andrew-johnson-resume-theme ::-webkit-scrollbar-thumb{background:var(--color-primary);border-radius:var(--border-radius-full)}.andrew-johnson-resume-theme ::-webkit-scrollbar-thumb:hover{background:var(--color-secondary)}.andrew-johnson-resume-section-title{font-size:var(--text-4xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin-bottom:var(--spacing-xl);position:relative;line-height:var(--line-height-tight);letter-spacing:var(--letter-spacing-tight)}@media (min-width:768px){.andrew-johnson-resume-section-title{font-size:var(--text-5xl)}}@media (max-width:640px){.andrew-johnson-resume-section-title{font-size:var(--text-3xl)}}.andrew-johnson-resume-section-title-editable{font-size:var(--text-4xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin-bottom:var(--spacing-xl);position:relative;line-height:var(--line-height-tight);letter-spacing:var(--letter-spacing-tight);background:transparent;border:none;outline:none;width:100%;font-family:inherit;text-align:center;resize:none;transition:all .3s ease}@media (min-width:768px){.andrew-johnson-resume-section-title-editable{font-size:var(--text-5xl)}}@media (max-width:640px){.andrew-johnson-resume-section-title-editable{font-size:var(--text-3xl)}}.andrew-johnson-resume-section-title-editable:focus{outline:2px solid var(--color-primary-500);outline-offset:4px;border-radius:var(--border-radius-sm)}.andrew-johnson-resume-section-title-editable::placeholder{color:var(--color-text-secondary);opacity:.7}.focus-ring{outline:2px solid transparent;outline-offset:2px}.focus-ring:focus{outline:2px solid var(--color-primary);outline-offset:2px}.focus-ring:focus,.focus-visible:focus{box-shadow:0 0 0 4px rgba(var(--color-primary-rgb),.1)}.focus-visible:focus{outline:2px solid var(--color-primary-500);outline-offset:2px}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.andrew-johnson-resume-fade-in{animation:fadeIn .5s ease-out}.andrew-johnson-resume-pulse{animation:pulse 2s ease-in-out infinite}@media (prefers-color-scheme:dark){.dark-mode{background:var(--color-background);color:var(--color-text-primary)}}@media print{.no-print{display:none!important}.print-break{page-break-before:always}.andrew-johnson-resume-theme{background-color:#ffffff!important;color:#000000!important}.andrew-johnson-resume-theme *{background-color:transparent!important;color:#000000!important}}