:root{--menu-height:30px;--radius-window:14px;--text:#f4f5f8;--line:#fff3;--sidebar:#f1f5ff8f;--content:#f8fbffd6;--menu:#e5ebf699;--dock:#eff5ff5c;--shadow-window:0 34px 76px #0b0d1661;--font-ui:"SF Pro Display", "Segoe UI", "Inter", sans-serif}*{box-sizing:border-box}html,body,#root{width:100%;height:100%;font-family:var(--font-ui);margin:0;overflow:hidden}.mac-root{width:100%;height:100%;color:var(--text);position:relative}.wallpaper-layer{background:radial-gradient(circle at 14% 24%,#6abdffc7,#0000 42%),radial-gradient(circle at 85% 14%,#ffb470b8,#0000 44%),radial-gradient(circle at 78% 78%,#945fffa6,#0000 44%),linear-gradient(135deg,#334674 0%,#243763 30%,#232c4b 58%,#1d1f31 100%);position:fixed;inset:0;transform:scale(1.04)}.grain-layer{opacity:.15;mix-blend-mode:soft-light;pointer-events:none;background-image:radial-gradient(circle at 1px 1px,#ffffff1f 1px,#0000 0);background-size:3px 3px;position:fixed;inset:0}.menu-bar{height:var(--menu-height);z-index:30;background:var(--menu);-webkit-backdrop-filter:saturate(145%)blur(18px);backdrop-filter:saturate(145%)blur(18px);border-bottom:1px solid #fff3;justify-content:space-between;align-items:center;padding:0 14px;display:flex;position:fixed;top:0;left:0;right:0;box-shadow:inset 0 1px #ffffff61}.menu-left,.menu-right{align-items:center;gap:8px;display:flex}.logo{background-image:url(/assets/logo-BcBmjVnS.png);background-position:50%;background-size:cover;place-items:center;width:16px;height:16px;display:grid;box-shadow:inset 0 1px 2px #ffffff29}.menu-app-name{color:#14171d;margin:0 10px 0 2px;font-size:13px;font-weight:650}.menu-item,.menu-icon-button{color:#1b1f2a;background:0 0;border:0;font-family:inherit}.menu-item{letter-spacing:-.01em;cursor:default;border-radius:6px;height:22px;padding:0 7px;font-size:12px;font-weight:540}.menu-item:hover,.menu-icon-button:hover{background:#ffffff5c}.menu-icon-button{cursor:pointer;border-radius:6px;place-items:center;width:22px;height:22px;display:grid}.clock-label{color:#171b23;margin-left:2px;font-size:12px;font-weight:560}.desktop-space{z-index:4;width:100%;height:100%;padding:calc(var(--menu-height) + 22px) 22px 122px;position:relative}.desktop-shortcuts{top:calc(var(--menu-height) + 18px);gap:12px;width:96px;display:grid;position:absolute;right:18px}.desktop-icon{cursor:default;background:0 0;border:0;justify-items:center;gap:6px;display:grid}.desktop-icon.is-clickable{cursor:pointer}.desktop-icon-glyph-wrap{background:linear-gradient(#ffffff8c,#fff3);border:1px solid #ffffff5c;border-radius:12px;place-items:center;width:42px;height:42px;display:grid;box-shadow:inset 0 1px #ffffffa6,0 8px 14px #090e1b42}.desktop-icon-glyph-wrap.blue{background:linear-gradient(#8bc2ffeb,#4a87ffeb)}.desktop-icon-glyph-wrap.red{background:linear-gradient(#ff8f8feb,#e55959eb)}.desktop-icon-glyph-wrap.violet{background:linear-gradient(#bca8ffeb,#8465ffeb)}.desktop-icon-glyph{color:#f6fbff;filter:drop-shadow(0 2px 4px #0a0e1847)}.desktop-icon-label{color:#f7f8ff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);text-shadow:0 2px 7px #00000040;background:#161a2566;border-radius:7px;padding:2px 8px;font-size:11px;font-weight:520}.hero-section{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:5;text-align:center;background:linear-gradient(145deg,#1e2c504d,#11172924);border:1px solid #cbdbff59;border-radius:20px;gap:14px;width:min(560px,100% - 44px);padding:28px;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 20px 52px #05091454}.hero-kicker{font-size:clamp(20px,2vw,34px);font-weight:430;line-height:1.28;font-family:"Inter", var(--font-ui);font-variation-settings:"wght" 430;letter-spacing:-.016em;color:#f1f6fff5;margin:0}.hero-title{font-size:clamp(66px,11vw,98px);font-style:italic;font-weight:420;line-height:.95;font-family:"Inter", var(--font-ui);font-variation-settings:"wght" 420;color:#f6fafff2;text-shadow:0 9px 28px #050c1e47;margin:0}.hero-kicker .hero-letter,.hero-title .hero-letter{will-change:font-variation-settings;display:inline-block}.finder-window{border-radius:var(--radius-window);border:1px solid var(--line);width:100%;height:100%;box-shadow:var(--shadow-window);-webkit-backdrop-filter:blur(34px)saturate(145%);backdrop-filter:blur(34px)saturate(145%);grid-template-columns:232px 1fr;display:grid;overflow:hidden}.finder-shell{z-index:25;-webkit-user-select:none;user-select:none;touch-action:none;width:min(100vw - 44px,980px);height:min(74vh,620px);position:fixed;transform:translate(-50%,-50%)}.finder-shell.snap-bounce{animation:.18s ease-out finderSnapBounce}@keyframes finderSnapBounce{0%{transform:translate(-50%,-50%)scale(1)}55%{transform:translate(-50%,-50%)scale(1.01)}to{transform:translate(-50%,-50%)scale(1)}}.finder-shell.is-dragging,.finder-shell.is-dragging .finder-window,.finder-shell.is-dragging .finder-header{cursor:grabbing}.finder-header{isolation:isolate;cursor:default;position:relative}.finder-header:active{cursor:default}.finder-drag-area{z-index:0;cursor:grab;position:absolute;inset:0 128px 0 0}.finder-drag-area:active{cursor:grabbing}.finder-header:before{content:"";opacity:0;z-index:-1;background:linear-gradient(#ffffff24,#ffffff05);border-radius:12px;transition:opacity .14s;position:absolute;inset:-8px -10px}.finder-window:hover .finder-header:before,.finder-shell.is-dragging .finder-header:before{opacity:1}.finder-window button,.finder-window input,.finder-window .finder-file-row,.finder-window .finder-icon-item{-webkit-user-select:none;user-select:none}.finder-shell.is-closing{pointer-events:none}.finder-sidebar{background:var(--sidebar);color:#273045;border-right:1px solid #8c98b838;padding:12px 12px 14px}.traffic-lights{align-items:center;gap:8px;margin:2px 0 16px;display:flex}.traffic{border:0;border-radius:50%;width:12px;height:12px;padding:0;box-shadow:0 1px 2px #0a0d1559}.traffic.red{background:#ff5f57}.traffic.yellow{background:#febc2e}.traffic.green{background:#27c840}.sidebar-section-label{text-transform:uppercase;letter-spacing:.04em;color:#64728f;margin:0 0 8px;padding:0 8px;font-size:11px}.sidebar-list{gap:3px;display:grid}.sidebar-item{color:#36425c;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:8px;height:30px;padding:0 10px;font-size:13px;font-weight:560;display:flex}.sidebar-item:hover{background:#5e77aa24}.sidebar-item.active{color:#21386c;background:linear-gradient(#5885ff4a,#4571ff3b)}.sidebar-icon-wrap{color:#44506a;background:#7583a42e;border-radius:7px;place-items:center;width:20px;height:20px;display:grid}.sidebar-icon-wrap.active{color:#eff5ff;background:linear-gradient(#5885ffd9,#4571ffb8)}.tag-list{gap:7px;margin-top:2px;padding:0 8px;display:grid}.tag-item{color:#4b5670;align-items:center;gap:7px;font-size:13px;font-weight:530;display:inline-flex}.tag-dot{border-radius:50%;width:8px;height:8px;display:inline-block}.tag-dot.red{background:#ff6474}.tag-dot.orange{background:#ffad51}.tag-dot.blue{background:#6ea0ff}.finder-content{background:var(--content);color:#252f45;grid-template-rows:auto 1fr;min-height:0;padding:20px;display:grid;overflow:hidden}.finder-header{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.finder-header h1{letter-spacing:-.025em;color:#1f2740;margin:0;font-size:30px;line-height:1.1}.finder-header p{color:#67738f;margin:4px 0 0;font-size:13px}.finder-header-actions{gap:6px;display:flex}.header-icon-btn{color:#4f5c78;cursor:pointer;background:#ffffffb3;border:1px solid #8c97b14d;border-radius:9px;place-items:center;width:30px;height:30px;display:grid}.header-icon-btn:hover{background:#fff}.project-grid{overscroll-behavior:contain;scrollbar-gutter:stable;background:#94a1c038;border-radius:10px;grid-auto-rows:min-content;gap:1px;min-height:0;display:grid;overflow:hidden auto}.finder-grid--details{grid-template-columns:1fr}.finder-grid--icons{background:#ffffff80;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:10px;padding:14px}.finder-file-header,.finder-file-row{grid-template-columns:minmax(220px,2fr) minmax(120px,1fr) minmax(160px,1.1fr) 80px;align-items:center;column-gap:14px;padding:8px 12px;font-size:12px;display:grid}.finder-file-header{z-index:2;color:#51607d;text-transform:uppercase;letter-spacing:.03em;background:#eef2faf5;font-weight:620;position:sticky;top:0}.finder-file-row{text-align:left;color:#2a3550;cursor:default;background:#ffffffe0;border:0}.finder-file-row.is-clickable,.finder-icon-item.is-clickable{cursor:pointer}.finder-file-row:disabled,.finder-icon-item:disabled,.desktop-icon:disabled{opacity:.74}.finder-file-row:hover{background:#dfe8fad9}.finder-file-name{align-items:center;gap:8px;font-weight:560;display:inline-flex}.finder-file-icon-wrap{background:linear-gradient(#ffffffe6,#e6edfbd9);border:1px solid #6c7ea43d;border-radius:6px;place-items:center;width:22px;height:22px;display:grid;box-shadow:inset 0 1px #ffffffbf}.finder-file-icon.folder{color:#4a7bff}.finder-file-icon.file{color:#6a7694}.finder-icon-item{color:#2a3550;cursor:default;background:0 0;border:0;border-radius:12px;justify-items:center;gap:8px;padding:10px 8px;display:grid}.finder-icon-item:hover{background:#dfe8fa99}.finder-icon-tile{background:#ffffffeb;border:1px solid #8c97b12e;border-radius:18px;place-items:center;width:72px;height:72px;display:grid;box-shadow:0 10px 22px #080a101f}.finder-icon-glyph-wrap{background:linear-gradient(#fffffff0,#e0e9f9e0);border:1px solid #7284a83d;border-radius:14px;place-items:center;width:48px;height:48px;display:grid;box-shadow:inset 0 1px #ffffffdb,0 8px 16px #0d142524}.finder-icon-glyph-wrap.folder{background:linear-gradient(#f3fafff5,#d6e6ffe6)}.finder-icon-name{text-align:center;word-break:break-word;max-width:100%;font-size:12px;font-weight:560;line-height:1.2}.about-shell{z-index:25;-webkit-user-select:none;user-select:none;touch-action:none;width:min(100vw - 44px,700px);height:min(70vh,580px);position:fixed;transform:translate(-50%,-50%)}.about-shell.is-dragging,.about-shell.is-dragging .about-window{cursor:grabbing}.about-shell.is-closing{pointer-events:none}.about-window{border-radius:var(--radius-window);border:1px solid var(--line);width:100%;height:100%;box-shadow:var(--shadow-window);-webkit-backdrop-filter:blur(34px)saturate(145%);backdrop-filter:blur(34px)saturate(145%);flex-direction:column;display:flex;overflow:hidden}.about-header{background:var(--sidebar);cursor:grab;border-bottom:1px solid #8c98b838;align-items:center;gap:12px;min-height:44px;padding:12px 16px;display:flex;position:relative}.about-header:active{cursor:grabbing}.about-header-content{flex:1;min-width:0}.about-header h1{color:#273045;margin:0;font-size:18px;font-weight:600;line-height:1.2}.about-header p{color:#6a7694;margin:2px 0 0;font-size:12px;line-height:1.2}.about-content{color:#273045;background:#f8fbffd6;flex:1;padding:20px;overflow-y:auto}.about-intro{margin-bottom:24px}.about-intro p{color:#2d3e54;margin:0;font-size:14px;line-height:1.6}.about-skills{gap:16px;margin-bottom:20px;display:grid}.skill-group{background:#fff9;border:1px solid #8c98b826;border-radius:10px;align-items:flex-start;gap:12px;padding:12px;transition:background .2s;display:flex}.skill-group:hover{background:#fffc}.skill-icon{color:#fff;background:linear-gradient(135deg,#62c3ff,#4f86ff);border-radius:8px;flex-shrink:0;place-items:center;width:32px;height:32px;display:grid}.skill-content h3{color:#1f2635;margin:0 0 4px;font-size:13px;font-weight:600}.skill-content p{color:#6a7694;margin:0;font-size:12px;line-height:1.4}.about-footer{border-top:1px solid #8c98b826;margin-top:auto;padding-top:12px}.about-footer p{color:#6a7694;margin:0;font-size:12px;font-style:italic;line-height:1.6}.contact-shell{z-index:25;-webkit-user-select:none;user-select:none;touch-action:none;width:min(100vw - 44px,640px);height:min(66vh,520px);position:fixed;transform:translate(-50%,-50%)}.contact-shell.is-dragging,.contact-shell.is-dragging .contact-window{cursor:grabbing}.contact-shell.is-closing{pointer-events:none}.contact-window{border-radius:var(--radius-window);border:1px solid var(--line);width:100%;height:100%;box-shadow:var(--shadow-window);-webkit-backdrop-filter:blur(34px)saturate(145%);backdrop-filter:blur(34px)saturate(145%);flex-direction:column;display:flex;overflow:hidden}.contact-header{background:var(--sidebar);cursor:grab;border-bottom:1px solid #8c98b838;align-items:center;gap:12px;min-height:44px;padding:12px 16px;display:flex;position:relative}.contact-header:active{cursor:grabbing}.contact-header-content{flex:1;min-width:0}.contact-header h1{color:#273045;margin:0;font-size:18px;font-weight:600;line-height:1.2}.contact-header p{color:#6a7694;margin:2px 0 0;font-size:12px;line-height:1.2}.contact-content{color:#273045;background:#f8fbffd6;flex:1;gap:16px;padding:20px;display:grid;overflow-y:auto}.contact-intro,.contact-footer{background:#fff9;border:1px solid #8c98b826;border-radius:12px;align-items:flex-start;gap:12px;padding:14px;display:flex}.contact-intro h2{color:#1f2635;margin:0 0 4px;font-size:15px;line-height:1.2}.contact-intro p,.contact-footer p{color:#6a7694;margin:0;font-size:13px;line-height:1.5}.contact-links{gap:10px;display:grid}.contact-link{color:#233049;background:linear-gradient(#ffffffdb,#f0f5fdcc);border:1px solid #8c98b829;border-radius:14px;align-items:center;gap:12px;padding:14px;text-decoration:none;transition:transform .16s,background .16s,box-shadow .16s;display:flex}.contact-link:hover{background:#fffffff5;transform:translateY(-1px);box-shadow:0 8px 16px #0d142514}.contact-link-icon{color:#fff;background:linear-gradient(135deg,#62c3ff,#4f86ff);border-radius:12px;flex-shrink:0;place-items:center;width:36px;height:36px;display:grid}.contact-link-copy{gap:2px;min-width:0;display:grid}.contact-link-copy strong{font-size:14px;font-weight:620}.contact-link-copy span{color:#6a7694;word-break:break-word;font-size:12px}.contact-window-item{will-change:transform, opacity, filter}.trash-window .contact-content{gap:14px}.trash-list{gap:10px;display:grid}.trash-item{color:#233049;background:#ffffffb8;border:1px solid #8c98b829;border-radius:14px;grid-template-columns:36px 1fr 36px;align-items:center;gap:12px;padding:14px;display:grid}.trash-item-icon,.trash-item-action{border-radius:12px;place-items:center;width:36px;height:36px;display:grid}.trash-item-icon{color:#4a566f;background:linear-gradient(135deg,#d8deea,#b8c2d6)}.trash-item-copy{gap:2px;min-width:0;display:grid}.trash-item-copy strong{font-size:14px;font-weight:620}.trash-item-copy span{color:#6a7694;font-size:12px}.trash-item-action{color:#4f86ff;cursor:pointer;background:#4f86ff1f;border:0}.trash-window-item{will-change:transform, opacity, filter}.dock-wrapper{z-index:40;position:fixed;bottom:10px;left:50%;transform:translate(-50%)}.dock{background:var(--dock);-webkit-backdrop-filter:blur(20px)saturate(150%);backdrop-filter:blur(20px)saturate(150%);border:1px solid #ffffff4d;border-radius:24px;align-items:flex-end;gap:8px;height:78px;padding:10px;display:flex;box-shadow:0 20px 34px #080a105c,inset 0 1px #ffffff6b}.dock-item{color:#2f3a55;cursor:pointer;border:0;border-radius:14px;place-items:center;width:50px;height:50px;text-decoration:none;display:grid;position:relative;box-shadow:inset 0 1px 1px #fffc,0 4px 8px #1b24403d}.dock-icon-surface{background:linear-gradient(#fffffff2,#dce5f7e6);border:1px solid #ffffffad;border-radius:11px;place-items:center;width:38px;height:38px;display:grid;box-shadow:inset 0 1px #ffffffe6,0 8px 12px #161e332e}.dock-icon-surface-projects{background:linear-gradient(#8bc2ff,#4a87ff)}.dock-icon-surface-about{background:linear-gradient(#7ee0ff,#42a9ff)}.dock-icon-surface-contact{background:linear-gradient(#8adf9b,#4fb97c)}.dock-icon-surface-trash{background:linear-gradient(#d9dfec,#aab5ca)}.dock-icon-surface-github{background:linear-gradient(#69789b,#3f4f71)}.dock-icon-surface-linkedin{background:linear-gradient(#67c4ff,#2f84ff)}.dock-icon-glyph{object-fit:contain;color:#f6fbff;filter:brightness(0)invert()drop-shadow(0 2px 4px #0c12203d);width:24px;height:24px;display:block}.dock-item.active{background:linear-gradient(#ffffffeb,#deeaffe0)}.dock-running-dot{background:#dbe7ff;border-radius:50%;width:4px;height:4px;position:absolute;bottom:-6px;left:50%;transform:translate(-50%)}.dock-divider{background:#ffffff4d;width:1px;height:38px;margin:0 2px 2px}.dock-tooltip{white-space:nowrap;color:#f8f9ff;opacity:0;pointer-events:none;background:#141822d9;border-radius:8px;padding:4px 8px;font-size:11px;font-weight:560;transition:all .18s;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%)translateY(3px)}.dock-item:hover .dock-tooltip{opacity:1;transform:translate(-50%)translateY(0)}.iphone-app{color:#f7fbff;background:radial-gradient(circle at top,#6ea6ff66,#0000 40%),radial-gradient(circle at 20% 20%,#ff7e6742,#0000 34%),linear-gradient(#101523 0%,#0a1020 52%,#050816 100%);min-height:100vh;position:relative;overflow:hidden}.iphone-wallpaper{filter:blur(18px);opacity:.9;background:radial-gradient(circle at 20% 20%,#68a4ff61,#0000 28%),radial-gradient(circle at 80% 30%,#78c27b3d,#0000 30%),radial-gradient(circle at 50% 80%,#ffffff14,#0000 34%);position:absolute;inset:0}.iphone-shell{z-index:1;place-items:center;min-height:100vh;padding:18px;display:grid;position:relative}.iphone-device{-webkit-backdrop-filter:blur(26px)saturate(140%);backdrop-filter:blur(26px)saturate(140%);background:#0a0e188c;border:10px solid #0c121fb8;border-radius:44px;width:min(100vw - 18px,430px);height:min(100vh - 24px,900px);position:relative;overflow:hidden;box-shadow:0 28px 80px #0000007a,inset 0 0 0 1px #ffffff14}.iphone-notch{z-index:3;background:#070b14;border-radius:0 0 22px 22px;width:160px;height:32px;position:absolute;top:0;left:50%;transform:translate(-50%);box-shadow:0 8px 26px #0000004d}.iphone-camera{background:radial-gradient(circle at 35% 35%,#7cb4ff,#111a31 70%);border-radius:50%;width:10px;height:10px;position:absolute;top:11px;left:24px}.iphone-speaker{background:#ffffff14;border-radius:999px;width:70px;height:7px;position:absolute;top:12px;left:50%;transform:translate(-50%)}.iphone-status-bar{z-index:2;letter-spacing:.02em;color:#f7fbfff2;justify-content:space-between;align-items:center;padding:14px 20px 0;font-size:12px;font-weight:560;display:flex;position:absolute;top:0;left:0;right:0}.iphone-status-icons{align-items:center;gap:8px;display:flex}.iphone-signal,.iphone-wifi{opacity:.85;background:linear-gradient(#fffffff5,#d2e1ffb8);border-radius:999px;width:18px;height:12px;display:inline-flex}.iphone-battery{font-size:11px}.iphone-home{flex-direction:column;justify-content:space-between;height:100%;padding:58px 20px 26px;transition:filter .22s,opacity .22s,transform .22s;display:flex;position:relative}.iphone-home.is-dimmed{opacity:.72;filter:blur(2px);transform:scale(.985)}.iphone-hero{z-index:1;text-shadow:0 10px 28px #00000040;gap:8px;padding:12px 6px 0;display:grid;position:relative}.iphone-kicker{text-transform:uppercase;letter-spacing:.16em;color:#d1e0ffd1;margin:0;font-size:13px}.iphone-hero h1{margin:0;font-size:clamp(38px,7vw,48px);line-height:.95}.iphone-description{color:#ecf3ffdb;max-width:30ch;margin:0;font-size:14px;line-height:1.55}.iphone-app-grid{z-index:1;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px 10px;padding:8px 0 0;display:grid;position:relative}.iphone-app-icon{color:inherit;background:0 0;border:0;justify-items:center;gap:8px;padding:0;display:grid}.iphone-app-icon-surface,.iphone-dock-icon-surface{color:#fffffff5;background:linear-gradient(145deg, color-mix(in srgb, var(--app-accent) 88%, white 12%), #ffffff1a);place-items:center;display:grid;box-shadow:inset 0 1px #ffffff2e,0 12px 24px #00000038}.iphone-app-icon-surface{border-radius:20px;width:68px;height:68px}.iphone-app-label{text-align:center;color:#f7fbffeb;max-width:8ch;font-size:12px;line-height:1.2}.iphone-dock{z-index:1;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#0b121e61;border:1px solid #ffffff1f;border-radius:30px;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:auto;padding:12px;display:grid;position:relative;box-shadow:0 18px 40px #0000003d}.iphone-dock-icon{background:0 0;border:0;padding:0}.iphone-dock-icon-surface{border-radius:18px;width:58px;height:58px;margin:0 auto}.iphone-dock-icon.is-active .iphone-dock-icon-surface{box-shadow:inset 0 1px #ffffff2e,0 0 0 2px #ffffff26,0 16px 28px #00000047}.iphone-sheet{z-index:4;-webkit-backdrop-filter:blur(26px)saturate(140%);backdrop-filter:blur(26px)saturate(140%);opacity:0;pointer-events:none;background:#0c122085;border:1px solid #ffffff1f;border-radius:36px;flex-direction:column;transition:opacity .22s,transform .22s;display:flex;position:absolute;inset:62px 12px 12px;overflow:hidden;transform:translateY(24px)scale(.96);box-shadow:0 26px 70px #0000006b}.iphone-sheet.is-open{opacity:1;pointer-events:auto;transform:translateY(0)scale(1)}.iphone-sheet-glass{pointer-events:none;background:radial-gradient(circle at top,#78aaff2e,#0000 42%),linear-gradient(#ffffff14,#0000 42%);position:absolute;inset:0}.iphone-sheet-header{z-index:1;grid-template-columns:36px 1fr 36px;align-items:center;gap:10px;padding:18px 16px 14px;display:grid;position:relative}.iphone-sheet-kicker{text-transform:uppercase;letter-spacing:.16em;color:#d8e5ffb8;margin:0 0 2px;font-size:11px}.iphone-sheet-header h2{margin:0;font-size:22px;line-height:1.1}.iphone-sheet-back,.iphone-sheet-action{color:#f7fbfff5;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff14;border:0;border-radius:12px;width:36px;height:36px}.iphone-sheet-body{z-index:1;flex:1;padding:10px 16px 20px;position:relative;overflow:auto}.iphone-card-stack,.iphone-about-panel,.iphone-contact-panel,.iphone-resume-panel,.iphone-files-panel,.iphone-trash-panel{gap:12px;display:grid}.iphone-card{background:#ffffff14;border:1px solid #ffffff14;border-radius:22px;justify-content:space-between;gap:16px;padding:14px 16px;display:flex}.iphone-card-title,.iphone-card-subtitle{margin:0}.iphone-card-title{font-size:15px;font-weight:600}.iphone-card-subtitle{color:#dee8ffbd;margin-top:4px;font-size:12px}.iphone-card-meta{color:#dee8ffd1;align-self:center;font-size:12px}.iphone-about-panel,.iphone-resume-panel,.iphone-trash-panel{background:#ffffff14;border:1px solid #ffffff14;border-radius:22px;padding:14px}.iphone-about-panel p,.iphone-resume-panel p,.iphone-trash-panel p{color:#eff5ffe6;margin:0;line-height:1.55}.iphone-skill-list{flex-wrap:wrap;gap:8px;display:flex}.iphone-skill-list span{background:#ffffff14;border:1px solid #ffffff14;border-radius:999px;padding:8px 12px;font-size:12px}.iphone-contact-panel{gap:10px}.iphone-contact-link,.iphone-primary-action{color:#f7fbff;background:#ffffff14;border:1px solid #ffffff1f;border-radius:18px;justify-content:center;align-items:center;gap:10px;width:100%;padding:14px 16px;display:inline-flex}.iphone-contact-link{text-decoration:none}.iphone-primary-action{font:inherit}.iphone-files-panel{gap:10px}.iphone-folder-row{background:#ffffff14;border:1px solid #ffffff14;border-radius:18px;padding:14px 16px}.file-viewer-overlay{z-index:60;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);opacity:0;pointer-events:none;background:#090d1773;place-items:center;padding:18px;transition:opacity .18s;display:grid;position:fixed;inset:0}.file-viewer-overlay.is-open{opacity:1;pointer-events:auto}.file-viewer-window{background:#f8fbfff2;border:1px solid #ffffff2e;border-radius:22px;grid-template-rows:auto 1fr;width:min(96vw,1040px);height:min(88vh,860px);display:grid;overflow:hidden;box-shadow:0 36px 90px #0508107a}.file-viewer-header{color:#233049;background:linear-gradient(#f0f5fdfa,#e6edf8f5);border-bottom:1px solid #8c98b838;justify-content:space-between;align-items:start;gap:16px;padding:16px 18px;display:flex}.file-viewer-header h2{margin:0;font-size:20px;line-height:1.1}.file-viewer-kicker{text-transform:uppercase;letter-spacing:.14em;color:#6c7994;margin:0 0 4px;font-size:11px}.file-viewer-subtitle{color:#61708d;margin:6px 0 0;font-size:13px}.file-viewer-actions{align-items:center;gap:8px;display:flex}.file-viewer-action{color:#465573;cursor:pointer;background:#ffffffb8;border:1px solid #8c98b83d;border-radius:10px;place-items:center;width:34px;height:34px;text-decoration:none;display:grid}.file-viewer-action:hover{background:#fff}.file-viewer-body{background:#dfe8f5;min-height:0}.file-viewer-frame{background:#fff;border:0;width:100%;height:100%}.iphone-home-indicator{background:#ffffff80;border:0;border-radius:999px;width:120px;height:5px;margin:10px auto 14px}@media (width<=1100px){.desktop-space{padding:calc(var(--menu-height) + 16px) 12px 120px}.finder-shell{width:min(100vw - 24px,980px);height:min(76vh,620px)}.finder-window{grid-template-columns:200px 1fr}.desktop-shortcuts{right:8px}}@media (width<=900px){.menu-left .menu-item:nth-of-type(n+4),.clock-label{display:none}.desktop-shortcuts{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;width:auto;margin-bottom:10px;position:static}.desktop-icon{justify-items:start}.desktop-icon-label{margin-left:4px}.finder-window{grid-template-columns:1fr;width:100%;height:calc(100% - 185px);min-height:480px}.finder-shell{width:calc(100vw - 24px);height:calc(100vh - 60px)}.hero-section{width:calc(100% - 28px);padding:20px}.finder-sidebar{display:none}.finder-file-header,.finder-file-row{grid-template-columns:minmax(180px,2fr) minmax(110px,1fr) 110px}.finder-file-header span:last-child,.finder-file-row span:last-child{display:none}}@media (width<=650px){.menu-left .menu-item{display:none}.menu-app-name{margin-right:0}.dock{gap:5px;height:74px;padding:8px}.dock-item{border-radius:12px;width:44px;height:44px}.finder-content{padding:12px}.hero-section{width:calc(100% - 20px);padding:16px}.finder-header h1{font-size:24px}.finder-file-header,.finder-file-row{grid-template-columns:1fr;row-gap:4px}.finder-file-header span:not(:first-child),.finder-file-row span:not(:first-child){color:#6a7694;font-size:11px}.finder-grid--icons{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-shell{width:calc(100vw - 24px);height:calc(100vh - 60px)}.contact-content{padding:14px}.contact-link{padding:12px}.file-viewer-overlay{padding:10px}.file-viewer-window{border-radius:18px;width:100%;height:92vh}.file-viewer-header{padding:14px 14px 12px}.file-viewer-header h2{font-size:18px}}
