@import"https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:wght@400;500;600;700&family=Space+Grotesk:wght@500;700&display=swap";:root{color-scheme:light;font-family:IBM Plex Sans,Avenir Next,Segoe UI,sans-serif;line-height:1.5;font-weight:400;color:#172033;background:linear-gradient(rgba(23,32,51,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(23,32,51,.04) 1px,transparent 1px),radial-gradient(circle at top left,rgba(207,171,103,.18),transparent 28%),radial-gradient(circle at top right,rgba(77,134,193,.12),transparent 26%),linear-gradient(180deg,#f7f2e9,#f4efe8 48%,#f7f4ee);background-size:28px 28px,28px 28px,auto,auto,auto;--font-display: "Space Grotesk", "IBM Plex Sans", sans-serif;--surface: rgba(255, 251, 245, .92);--surface-strong: #fffdf8;--surface-muted: #f0ebe2;--border: rgba(23, 32, 51, .12);--border-strong: rgba(23, 32, 51, .22);--ink-soft: #5a6476;--ink-muted: #7a8393;--danger: #b42318;--shadow-lg: 0 30px 70px rgba(28, 29, 36, .08);--shadow-md: 0 18px 42px rgba(28, 29, 36, .07);--radius-xl: 32px;--radius-lg: 24px;--radius-md: 18px;--nde-accent: #b8682d;--nde-accent-soft: rgba(184, 104, 45, .12);--sre-accent: #205c93;--sre-accent-soft: rgba(32, 92, 147, .12);--theme-accent: #205c93;--theme-accent-soft: rgba(32, 92, 147, .12)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;min-height:100vh}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(circle at 15% 12%,rgba(255,255,255,.5),transparent 18%);opacity:.9}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer}#root{min-height:100vh}.page-shell{width:min(1240px,calc(100% - 2rem));margin:0 auto;padding:2rem 0 4rem;position:relative;z-index:1}.page-shell--nde{--theme-accent: var(--nde-accent);--theme-accent-soft: var(--nde-accent-soft)}.page-shell--sre,.page-shell--dashboard{--theme-accent: var(--sre-accent);--theme-accent-soft: var(--sre-accent-soft)}.centered-shell{min-height:100vh;display:grid;place-items:center}.topbar{display:flex;justify-content:space-between;align-items:flex-start;gap:1.25rem;margin-bottom:1.5rem}.topbar h1,.profile-hero h1,.login-card h1,.dashboard-hero h1{margin:.35rem 0 0;font-family:var(--font-display);font-size:clamp(2.4rem,4.2vw,4.8rem);line-height:.98;letter-spacing:-.04em}.topbar--profile h1{font-size:clamp(1.8rem,3.4vw,3rem)}.topbar__actions{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;color:var(--ink-soft)}.eyebrow,.dashboard-card__tag,.profile-hero__accent-label,.credential-kind,.timeline-card__range{margin:0;text-transform:uppercase;letter-spacing:.13em;font-size:.73rem;color:var(--theme-accent);font-weight:700}.back-link,.dashboard-card__link{color:var(--theme-accent);font-weight:700}.secondary-button,.login-form button{border:none;border-radius:999px;padding:.8rem 1.2rem}.secondary-button{background:#17203312;color:#172033}.secondary-button:hover,.dashboard-card__link:hover,.back-link:hover{transform:translateY(-1px)}.dashboard-hero{max-width:50rem;animation:rise-in .48s ease both}.dashboard-hero__copy{font-size:1.05rem;color:var(--ink-soft);max-width:44rem}.dashboard-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem}.dashboard-grid--showcase{margin-top:1.5rem}.dashboard-card{position:relative;overflow:hidden;display:grid;gap:1rem;padding:1.6rem;border-radius:var(--radius-xl);border:1px solid var(--border);background:linear-gradient(180deg,#ffffffd1,#fffcf7f5),var(--surface);box-shadow:var(--shadow-lg);min-height:320px;animation:rise-in .52s ease both}.dashboard-card:after{content:"";position:absolute;inset:auto -10% -20% auto;width:220px;height:220px;border-radius:999px;background:var(--theme-accent-soft);filter:blur(10px)}.dashboard-card--nde{--theme-accent: var(--nde-accent);--theme-accent-soft: var(--nde-accent-soft)}.dashboard-card--sre{--theme-accent: var(--sre-accent);--theme-accent-soft: var(--sre-accent-soft)}.dashboard-card h2{margin:0;font-family:var(--font-display);font-size:clamp(1.8rem,3vw,2.4rem);letter-spacing:-.03em}.dashboard-card p{position:relative;z-index:1;margin:0;color:var(--ink-soft)}.dashboard-card__frame{display:flex;justify-content:space-between;align-items:center;gap:1rem;position:relative;z-index:1}.dashboard-card__slug{display:inline-flex;align-items:center;justify-content:center;min-width:3.25rem;padding:.45rem .75rem;border-radius:999px;border:1px solid color-mix(in srgb,var(--theme-accent) 18%,white);background:color-mix(in srgb,var(--theme-accent-soft) 70%,white);color:var(--theme-accent);font-size:.75rem;font-weight:700}.dashboard-card__link{margin-top:auto;position:relative;z-index:1}.profile-switcher{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.95rem;margin-bottom:1.5rem}.profile-switcher__link{display:grid;grid-template-columns:1fr auto;gap:1rem;align-items:flex-start;padding:1.1rem 1.15rem;border:1px solid var(--border);background:#fffcf8d1;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);transition:border-color .18s ease,transform .18s ease,background .18s ease}.profile-switcher__link:hover,.profile-switcher__link--active{transform:translateY(-2px);border-color:color-mix(in srgb,var(--theme-accent) 34%,white);background:color-mix(in srgb,var(--theme-accent-soft) 42%,white)}.profile-switcher__content{display:grid;gap:.35rem}.profile-switcher__content strong{font-family:var(--font-display);font-size:1.1rem}.profile-switcher__content p{margin:0;color:var(--ink-soft);font-size:.95rem}.profile-switcher__tag{display:inline-flex;align-items:center;justify-content:center;min-width:3.25rem;padding:.38rem .65rem;border-radius:999px;background:#17203312;color:#172033;font-size:.73rem;font-weight:700}.app-menu{display:flex;flex-wrap:wrap;gap:.7rem;margin-bottom:1.4rem}.app-menu__link{display:inline-flex;align-items:center;justify-content:center;padding:.72rem 1rem;border-radius:999px;border:1px solid var(--border);background:#fffcf8c7;box-shadow:var(--shadow-md);color:var(--ink-soft);font-weight:600}.app-menu__link--active,.app-menu__link:hover{color:var(--theme-accent);border-color:color-mix(in srgb,var(--theme-accent) 30%,white);background:color-mix(in srgb,var(--theme-accent-soft) 36%,white)}.loading-panel,.error-banner,.login-card{border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.loading-panel{padding:1rem 1.2rem;border:1px solid var(--border);background:#fffcf7e0}.error-banner{margin:0;color:var(--danger);background:#b4231814;border:1px solid rgba(180,35,24,.16);padding:.85rem 1rem}.success-banner{margin:0 0 1rem;color:#0f5132;background:#19875414;border:1px solid rgba(25,135,84,.16);padding:.85rem 1rem;border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.profile-layout{display:grid;gap:1.4rem}.profile-layout--nde{--theme-accent: var(--nde-accent);--theme-accent-soft: var(--nde-accent-soft)}.profile-layout--sre{--theme-accent: var(--sre-accent);--theme-accent-soft: var(--sre-accent-soft)}.profile-hero{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(280px,.8fr);gap:1rem;align-items:stretch;animation:rise-in .52s ease both}.profile-hero__main,.profile-hero__accent,.rail-card,.skill-card,.timeline-card,.project-card{border-radius:var(--radius-xl);border:1px solid var(--border);box-shadow:var(--shadow-lg)}.profile-hero__main{padding:2rem;background:radial-gradient(circle at top left,color-mix(in srgb,var(--theme-accent) 14%,white),transparent 32%),linear-gradient(180deg,#fffefbf0,#fefaf4fa)}.profile-hero__lead{font-size:clamp(1.08rem,1.5vw,1.22rem);max-width:52rem;margin:.9rem 0 0}.profile-hero__microcopy{margin:1rem 0 0;max-width:44rem;color:var(--ink-soft);font-size:1rem}.profile-hero__meta{margin-top:1.35rem}.meta-row{display:flex;flex-wrap:wrap;gap:.65rem 1rem;color:var(--ink-soft)}.profile-hero__accent{display:grid;gap:.65rem;align-content:end;padding:1.5rem;background:linear-gradient(160deg,color-mix(in srgb,var(--theme-accent-soft) 70%,white),#fffcf6fa),var(--surface)}.profile-hero__accent strong{font-family:var(--font-display);font-size:1.5rem;line-height:1.08}.profile-hero__accent p{margin:0;color:var(--ink-soft)}.highlight-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.95rem;animation:rise-in .62s ease both}.highlight-card{display:grid;gap:.35rem;padding:1rem 1.1rem;border-radius:var(--radius-md);border:1px solid color-mix(in srgb,var(--theme-accent) 16%,white);background:#fffcf8db;box-shadow:var(--shadow-md)}.highlight-card span{color:var(--ink-muted);font-size:.82rem;text-transform:uppercase;letter-spacing:.08em}.highlight-card strong{font-family:var(--font-display);font-size:1.02rem;line-height:1.2}.profile-content-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.72fr);gap:1.15rem}.profile-main,.profile-rail{display:grid;gap:1rem}.content-section{display:grid;gap:1rem;animation:rise-in .68s ease both}.section-heading{display:grid;gap:.25rem}.section-heading h2,.rail-card h2{margin:0;font-family:var(--font-display);font-size:clamp(1.4rem,2vw,2rem);letter-spacing:-.03em}.skill-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.skill-card{padding:1.25rem;background:#fffdf9e6}.skill-card h3,.timeline-card h3,.project-card h3{margin:0 0 .8rem;font-family:var(--font-display);font-size:1.25rem;letter-spacing:-.03em}.skill-chip-list{display:flex;flex-wrap:wrap;gap:.55rem;list-style:none;margin:0;padding:0}.skill-chip-list li{padding:.5rem .8rem;border-radius:999px;border:1px solid color-mix(in srgb,var(--theme-accent) 14%,white);background:color-mix(in srgb,var(--theme-accent-soft) 36%,white);font-size:.93rem}.timeline{display:grid;gap:1rem}.timeline-card{position:relative;padding:1.3rem 1.3rem 1.3rem 1.55rem;background:#fffcf7eb}.timeline-card:before{content:"";position:absolute;inset:1rem auto 1rem .85rem;width:2px;background:linear-gradient(180deg,var(--theme-accent),rgba(23,32,51,.12))}.timeline-card__header{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start}.timeline-card__employer{margin:0;color:var(--ink-soft)}.timeline-card__meta{display:grid;gap:.35rem;color:var(--ink-soft);text-align:right}.timeline-card ul,.project-card ul,.credential-list,.contact-list{margin:0;padding-left:1.15rem}.timeline-card li,.project-card li{margin-bottom:.6rem;color:#263045}.project-list{display:grid;gap:1rem}.project-card{padding:1.3rem;background:linear-gradient(180deg,#ffffffd1,#fffcf7fa),var(--surface)}.project-card__header{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start}.project-subtitle{margin:-.35rem 0 0;color:var(--ink-soft)}.project-card__badge{display:inline-flex;align-items:center;justify-content:center;padding:.42rem .72rem;border-radius:999px;background:color-mix(in srgb,var(--theme-accent-soft) 48%,white);color:var(--theme-accent);font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.profile-rail{align-content:start}.rail-card{position:sticky;top:1.25rem;display:grid;gap:.85rem;padding:1.25rem;background:#fffcf7e6}.profile-rail .rail-card+.rail-card{margin-top:.25rem}.rail-card--muted{background:color-mix(in srgb,var(--theme-accent-soft) 34%,white)}.credential-list,.contact-list{display:grid;gap:.9rem}.credential-list li{display:grid;gap:.22rem}.credential-list strong,.contact-list a{font-size:1rem}.contact-list a{color:var(--theme-accent);font-weight:700}.admin-grid{display:grid;grid-template-columns:minmax(320px,.8fr) minmax(0,1.5fr);gap:1rem}.admin-panel{display:grid;gap:1rem;padding:1.35rem;border:1px solid var(--border);border-radius:var(--radius-xl);background:#fffcf7e6;box-shadow:var(--shadow-lg)}.admin-panel--wide{min-width:0}.admin-toolbar{display:flex;flex-wrap:wrap;gap:1rem}.admin-form,.admin-form label,.admin-editor-group,.admin-editor-card,.admin-table{display:grid;gap:.85rem}.admin-form{align-content:start}.admin-form--stacked{gap:1.2rem}.admin-form__grid,.admin-editor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem}.admin-form span,.admin-toolbar span{font-size:.9rem;font-weight:600}.admin-form input,.admin-form textarea,.admin-form select,.admin-toolbar select{width:100%;border:1px solid rgba(23,32,51,.16);border-radius:14px;padding:.85rem 1rem;background:#fffdfa;color:#172033}.admin-form textarea{resize:vertical}.admin-form button,.admin-editor-group__header button{border:none;border-radius:999px;padding:.75rem 1.1rem;background:linear-gradient(135deg,var(--theme-accent) 0%,#172033 100%);color:#fff;font-weight:700}.admin-editor-group__header{display:flex;justify-content:space-between;align-items:center;gap:1rem}.admin-editor-group__header h3{margin:0;font-family:var(--font-display);font-size:1.15rem}.admin-editor-card{padding:1rem;border-radius:var(--radius-lg);border:1px solid var(--border);background:#ffffffb8}.admin-editor-card__top{display:flex;justify-content:space-between;align-items:center;gap:1rem}.admin-editor-card__top strong{font-family:var(--font-display);font-size:1rem}.admin-table{border-top:1px solid var(--border);padding-top:.75rem}.admin-table__header,.admin-table__row{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(90px,.8fr) minmax(90px,.8fr);gap:.75rem;align-items:center}.admin-table__header{color:var(--ink-muted);font-size:.82rem;text-transform:uppercase;letter-spacing:.08em}.admin-table__row{padding:.75rem 0;border-top:1px solid rgba(23,32,51,.08)}.danger-button{border:1px solid rgba(180,35,24,.18);border-radius:999px;padding:.5rem .8rem;background:#b4231814;color:var(--danger);font-weight:700}.login-card{width:min(880px,calc(100% - 2rem));display:grid;grid-template-columns:1.1fr .9fr;overflow:hidden;border:1px solid var(--border);background:#fffbf5f2}.login-card__intro{padding:2.5rem;background:radial-gradient(circle at top right,rgba(32,92,147,.18),transparent 34%),linear-gradient(160deg,#ffffffd6,#f4efe8f5)}.login-form{padding:2.5rem;display:grid;gap:1rem;background:#fffffffa}.login-form label{display:grid;gap:.45rem}.login-form input{border:1px solid rgba(23,32,51,.16);border-radius:14px;padding:.85rem 1rem;background:#fbfdff}.login-form button{background:linear-gradient(135deg,#205c93,#172033);color:#fff;font-weight:700}.login-form button:hover,.secondary-button:hover{transition:transform .18s ease,box-shadow .18s ease;box-shadow:0 10px 24px #1720331a}@keyframes rise-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}@media (max-width: 1024px){.profile-hero,.profile-content-grid,.dashboard-grid,.profile-switcher,.highlight-strip,.skill-grid,.admin-grid,.admin-form__grid,.admin-editor-grid{grid-template-columns:1fr}.rail-card{position:static}}@media (max-width: 860px){.topbar,.timeline-card__header,.project-card__header,.login-card{grid-template-columns:1fr;flex-direction:column}.timeline-card__meta{text-align:left}.page-shell{width:min(100%,calc(100% - 1rem));padding-top:1rem}.profile-hero__main,.profile-hero__accent,.rail-card,.dashboard-card,.skill-card,.timeline-card,.project-card,.login-card__intro,.login-form{padding:1.2rem}}
