:root{color-scheme:light;--bg: #fffdfb;--surface: #faf7f2;--surface-strong: #fff4e9;--text-1: #0a0a0a;--text-2: #6a6a68;--text-3: #9a968f;--text-4: #d4cec4;--accent: #ff8c42;--accent-soft: rgba(255, 140, 66, .12);--border: #ece5dc;--radius-soft: 8px;--font-mono: "JetBrains Mono", "IBM Plex Mono", "SFMono-Regular", "Menlo", monospace;--section-gap: 76px;--container: 768px}*,*:before,*:after{box-sizing:border-box}html{font-family:var(--font-mono);background:var(--bg);color:var(--text-1);font-size:12px;line-height:1.6;scroll-behavior:smooth;-webkit-font-smoothing:antialiased}body{margin:0;min-height:100vh;background:radial-gradient(circle at top right,rgba(255,140,66,.08),transparent 28%),linear-gradient(180deg,#fffaf5e6,#fff)}a{color:inherit;text-decoration:none}button{font:inherit;appearance:none;border:0;background:transparent}img,canvas{display:block;max-width:100%}::selection{background:var(--accent);color:#fff}.page-shell{position:relative;z-index:1}.container{width:min(calc(100% - 2rem),var(--container));margin:0 auto}.full-bleed{margin-inline:calc(50% - 50vw);padding-inline:calc(50vw - 50% + 1rem)}.site-nav,.site-footer{position:relative;z-index:2}.site-nav{border-bottom:1px solid var(--border);backdrop-filter:blur(12px);background:#fffdfbe0}.nav-inner,.footer-inner{min-height:56px;display:flex;align-items:center;justify-content:space-between;gap:1rem}.brand-link,.nav-links,.footer-links{display:flex;align-items:center;gap:.8rem}.brand-avatar,.profile-avatar{border-radius:999px;border:1px solid var(--border)}.brand-avatar{width:20px;height:20px}.nav-link{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-2);transition:color .16s ease}.nav-link:hover,.nav-link.active{color:var(--text-1)}.button-shimmer,.hero-cta,.contact-modal-copy,.contact-card-button{cursor:pointer}.button-shimmer,.hero-cta{position:relative;overflow:hidden;border:0;border-radius:var(--radius-soft);background:var(--accent);color:#fff;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;transition:opacity .16s ease,transform .16s ease}.button-shimmer{padding:8px 18px}.button-shimmer:after{content:"";position:absolute;inset:0;transform:translate(-120%);background:linear-gradient(90deg,transparent,rgba(255,255,255,.32),transparent);transition:transform .48s ease}.button-shimmer:hover:after{transform:translate(120%)}.button-shimmer:hover,.hero-cta:hover,.contact-modal-copy:hover{opacity:.92}.hero-section{position:relative;isolation:isolate}.hero-stream,.hero-stream canvas{position:absolute;inset:0}.hero-stream{pointer-events:none;overflow:hidden}.hero-glow{position:absolute;width:260px;height:260px;border-radius:999px;background:radial-gradient(circle,rgba(255,140,66,.08) 0%,rgba(255,140,66,.03) 38%,transparent 72%);filter:blur(28px);transform:translate(-50%,-50%);pointer-events:none;opacity:0;transition:opacity .22s ease;z-index:0}.hero-glow.active{opacity:1}.hero-content{position:relative;z-index:1;padding:calc(var(--section-gap) + 10px) 0 var(--section-gap)}.hero-eyebrow,.section-title,.contact-hint,.footer-copy,.contact-modal-kicker{color:var(--text-3);text-transform:uppercase;letter-spacing:.12em}.hero-eyebrow{margin:0 0 14px;color:var(--accent);font-size:10px}.hero-title,.detail-title,.profile-title{margin:0;font-size:clamp(30px,5vw,44px);line-height:1.08;letter-spacing:-.04em;font-weight:800}.hero-subtitle,.page-copy,.faq-answer,.detail-summary{max-width:680px;color:var(--text-2);font-size:12px;line-height:1.85}.hero-cta,.text-link{display:inline-flex;align-items:center;gap:.45rem;margin-top:24px;padding:8px 20px}.section-block{padding-top:var(--section-gap)}.section-padding-bottom{padding-bottom:80px}.section-title{margin-bottom:16px;font-size:10px}.section-title.first{padding-top:0}.section-title.compact{margin-bottom:8px}.compact-top{padding-top:22px}.list-row{position:relative;display:flex;align-items:center;gap:14px;padding:15px 0;border-bottom:1px solid var(--border);transition:transform .2s ease}.list-row:first-child{border-top:1px solid var(--border)}.list-row:before{content:"";position:absolute;inset:0 -16px;background:var(--surface);opacity:0;transition:opacity .2s ease;z-index:-1}.list-row:hover:before{opacity:1}.list-row:hover{transform:translate(4px)}.static-row{cursor:default}.row-icon{flex:0 0 auto;width:28px;height:28px;display:grid;place-items:center;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-soft);font-size:13px}.row-main{min-width:0;flex:1;display:grid;gap:3px}.row-title{font-size:12px;font-weight:700;color:var(--text-1)}.row-description{color:var(--text-2)}.row-context{color:var(--text-3);font-size:10px;letter-spacing:.05em;text-transform:uppercase}.row-meta{flex:0 0 auto;color:var(--accent);font-size:10px;letter-spacing:.05em;text-transform:uppercase}.row-meta.dimmed{color:var(--text-3)}.row-arrow{flex:0 0 auto;color:var(--text-4);transition:color .16s ease,transform .16s ease}.list-row:hover .row-arrow,.contact-card:hover .row-arrow{color:var(--accent);transform:translate(2px)}.contact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.simple-stack{display:grid}.contact-card{width:100%;border:1px solid var(--border);border-radius:10px;background:#ffffffb8;padding:18px;display:flex;align-items:center;gap:14px;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}.contact-card:hover{border-color:#ff8c4259;box-shadow:0 12px 30px #ff8c4214;transform:translateY(-2px)}.contact-card-button{text-align:left}.contact-content{min-width:0;flex:1}.contact-value{font-size:13px;font-weight:700}.contact-hint{margin-top:3px;font-size:10px}.about-shell,.detail-shell,.skills-shell,.not-found-shell{padding:var(--section-gap) 0 88px}.profile-header{display:flex;align-items:center;gap:18px}.profile-avatar{width:56px;height:56px}.back-link{display:inline-flex;align-items:center;gap:6px;margin-bottom:32px;color:var(--text-3);font-size:11px;text-transform:uppercase;letter-spacing:.06em}.back-link:before{content:"←";transition:transform .14s ease}.back-link:hover:before{transform:translate(-2px)}.faq-list{border-bottom:1px solid var(--border)}.faq-item{padding:16px 0;border-top:1px solid var(--border)}.faq-question{margin-bottom:6px;font-size:13px;font-weight:700}.detail-summary{margin-top:16px}.detail-meta-line{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:16px}.detail-type-chip,.detail-updated{display:inline-flex;align-items:center;min-height:24px;padding:0 10px;border-radius:999px;border:1px solid var(--border);font-size:10px;letter-spacing:.05em;text-transform:uppercase}.detail-type-chip{color:var(--accent);background:var(--accent-soft)}.detail-updated{color:var(--text-3);background:#ffffffb8}.detail-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:24px;border-block:1px solid var(--border)}.detail-stat{padding:24px 16px;text-align:center}.detail-stat:not(:last-child){border-right:1px solid var(--border)}.detail-stat-value{font-size:24px;font-weight:800;letter-spacing:-.04em}.detail-stat-label{margin-top:8px;color:var(--text-3);font-size:10px;letter-spacing:.06em;text-transform:uppercase}.detail-closing{margin-bottom:24px}.content-body{color:var(--text-2);font-size:12px;line-height:1.9}.content-body>:first-child{margin-top:0}.content-body>:last-child{margin-bottom:0}.content-body h2,.content-body h3{margin:2.2em 0 .7em;color:var(--text-1);line-height:1.3}.content-body h2{font-size:16px}.content-body h3{font-size:14px}.content-body p,.content-body ul,.content-body ol,.content-body blockquote{margin:0 0 1.15em}.content-body ul,.content-body ol{padding-left:1.2rem}.content-body li+li{margin-top:.45em}.content-body blockquote{margin-left:0;padding:12px 14px;border-left:2px solid var(--accent);background:#ff8c420f;color:var(--text-2)}.content-body img{width:100%;margin:1.5em 0;border:1px solid var(--border);border-radius:12px;background:#ffffffb3}.contact-modal{position:fixed;inset:0;display:none;align-items:center;justify-content:center;background:#0a0a0a59;backdrop-filter:blur(10px);z-index:10}.contact-modal.active{display:flex}.contact-modal-card{position:relative;width:min(360px,calc(100vw - 32px));padding:44px 36px;border-radius:20px;background:linear-gradient(180deg,#fffffffa,#fff7f0fa);border:1px solid rgba(255,140,66,.16);box-shadow:0 24px 80px #0a0a0a29;text-align:center}.contact-modal-close{position:absolute;top:14px;right:14px;width:30px;height:30px;display:grid;place-items:center;border:0;border-radius:999px;background:transparent;color:var(--text-3)}.contact-modal-title{font-size:16px;font-weight:700;letter-spacing:-.02em}.contact-modal-qr{margin:24px auto 18px;padding:12px;width:min(210px,62vw);border-radius:20px;background:linear-gradient(180deg,#fff,#fff9f3);border:1px solid rgba(255,140,66,.14)}.contact-modal-hint{color:var(--text-2);font-size:11px;line-height:1.75}.contact-modal-copy{margin-top:18px;border:1px solid var(--border);border-radius:var(--radius-soft);padding:8px 20px;background:transparent;color:var(--text-2)}.site-footer{padding-bottom:40px}.footer-inner{min-height:auto;padding-top:24px;border-top:1px solid var(--border);align-items:flex-start}.footer-copy{font-size:10px}.page-orbs{position:fixed;inset:0;overflow:hidden;pointer-events:none;z-index:0}.orb{position:absolute;border-radius:999px;filter:blur(100px);opacity:.8}.orb-one{width:360px;height:360px;top:-130px;right:-120px;background:#ff8c421f}.orb-two{width:460px;height:460px;bottom:-140px;left:-120px;background:#7c7fff14}.orb-three{width:220px;height:220px;bottom:24%;right:-80px;background:#ffe2c34d}.event-horizon-wrap{position:fixed;inset-inline:0;bottom:0;height:260px;pointer-events:none;z-index:0;mask-image:linear-gradient(to bottom,transparent 0%,black 40%,black 100%)}.event-horizon-wrap canvas{width:100%;height:100%}@media(max-width:768px){:root{--section-gap: 52px}.contact-grid,.detail-stats{grid-template-columns:1fr}.detail-stat:not(:last-child){border-right:0;border-bottom:1px solid var(--border)}.footer-inner,.nav-inner,.contact-card{flex-wrap:wrap}.nav-links{gap:.6rem}.brand-link span,.row-meta{max-width:40vw}.hero-title,.detail-title,.profile-title{font-size:clamp(26px,8vw,36px)}.list-row:hover{transform:none}.list-row:before{inset:0}}.skill-management-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.skill-panel,.skill-card{border:1px solid var(--border);border-radius:var(--radius-soft);background:#ffffffb8;box-shadow:0 14px 42px #ff8c420d}.skill-panel{padding:18px}.skill-panel h2,.skill-card h2{margin:0;color:var(--text-1);letter-spacing:-.03em}.skill-panel h2{font-size:13px}.skill-panel p,.skill-card p{margin:10px 0 0;color:var(--text-2);line-height:1.8}.skill-card-stack{display:grid;gap:14px}.skill-hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin-top:24px}.skill-hero-actions .hero-cta,.skill-hero-actions .skill-link,.skill-actions .skill-primary-action{margin-top:0}.skill-card{padding:20px}.skill-card-head,.skill-actions{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.skill-domain,.skill-mini-title{color:var(--text-3);font-size:10px;letter-spacing:.12em;text-transform:uppercase}.skill-card h2{margin-top:4px;font-size:18px}.skill-status{flex:0 0 auto;display:inline-flex;align-items:center;min-height:24px;padding:0 10px;border:1px solid var(--border);border-radius:999px;color:var(--accent);background:var(--accent-soft);font-size:10px;letter-spacing:.06em;text-transform:uppercase}.status-legacy .skill-status{color:var(--text-3);background:#ffffffb3}.skill-subgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:18px;padding-top:18px;border-top:1px solid var(--border)}.skill-subgrid ul{margin:8px 0 0;padding-left:1.1rem;color:var(--text-2);line-height:1.85}.skill-link{margin-top:16px;padding-inline:0;color:var(--accent)}.skill-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}.skill-tags span{display:inline-flex;padding:5px 9px;border:1px solid var(--border);border-radius:999px;color:var(--text-2);background:#ffffffad;font-size:10px}.skill-actions{justify-content:flex-start;margin-top:2px}.skill-primary-action{flex:0 0 auto}@media(max-width:720px){.skill-management-grid,.skill-subgrid{grid-template-columns:1fr}.skill-card-head,.skill-actions{display:grid}.skill-hero-actions{align-items:stretch}}
