@font-face{font-family:LucidaGrande;src:url(/os/fonts/LucidaGrande.woff2) format("woff2");font-weight:400;font-display:swap}@font-face{font-family:LucidaGrande;src:url(/os/fonts/LucidaGrande-Bold.woff2) format("woff2");font-weight:700;font-display:swap}@font-face{font-family:Apple Garamond;src:url(/os/fonts/AppleGaramond.woff2) format("woff2");font-display:swap}@font-face{font-family:Monaco;src:url(/os/fonts/monacottf.woff2) format("woff2");font-display:swap}.os-root{--os-ui: "LucidaGrande", "Lucida Grande", "Hiragino Sans GB", ui-sans-serif, -apple-system, sans-serif;--os-display: "Apple Garamond", "EB Garamond", Garamond, Georgia, serif;--os-mono: "Monaco", ui-monospace, Menlo, monospace;--os-window: #ececec;--os-content: #ffffff;--os-ink: #1a1a1a;--os-dim: #4d4d4d;--os-faint: #808080;--os-line: #c2c2c2;--os-line-soft: #dcdcdc;--os-select: #3875d7;--os-select-grad: linear-gradient(#6a9ae6, #3875d7);--os-title-top: #ebebeb;--os-title-bottom: #cbcbcb;--os-title-inactive-top: #f6f6f6;--os-title-inactive-bottom: #e3e3e3;--os-sidebar: #e3e9ef;--os-menu-bg: rgba(250, 250, 250, .96);--os-bar-top: rgba(255, 255, 255, .86);--os-bar-bottom: rgba(230, 230, 230, .86);--os-shadow: 0 0 0 1px rgba(0, 0, 0, .28), 0 16px 42px rgba(0, 0, 0, .5);--os-shadow-quiet: 0 0 0 1px rgba(0, 0, 0, .2), 0 8px 22px rgba(0, 0, 0, .28);position:fixed;inset:0;overflow:hidden;color:var(--os-ink);font-family:var(--os-ui);font-size:13px;line-height:1.4;-webkit-font-smoothing:antialiased;user-select:none}:root[data-theme=dark] .os-root{--os-window: #3a3a3a;--os-content: #232323;--os-ink: #ececec;--os-dim: #c4c4c4;--os-faint: #939393;--os-line: #1a1a1a;--os-line-soft: #474747;--os-title-top: #565656;--os-title-bottom: #3c3c3c;--os-title-inactive-top: #484848;--os-title-inactive-bottom: #3a3a3a;--os-sidebar: #2e3136;--os-menu-bg: rgba(44, 44, 44, .96);--os-bar-top: rgba(60, 60, 60, .86);--os-bar-bottom: rgba(40, 40, 40, .86)}:where(.os-root) button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:default}:where(.os-root) a{color:inherit}.os-root :focus-visible{outline:3px solid rgba(56,117,215,.55);outline-offset:1px}.os-dragging,.os-dragging *{user-select:none!important}.os-dragging iframe{pointer-events:none}.os-root ::-webkit-scrollbar{width:15px;height:15px}.os-root ::-webkit-scrollbar-track{background:linear-gradient(90deg,#d8d8d8,#f3f3f3 40% 60%,#e2e2e2);box-shadow:inset 1px 0 #c4c4c4}.os-root ::-webkit-scrollbar-thumb{border:2px solid transparent;border-radius:8px;background:linear-gradient(90deg,#3b7fe0,#8ec0f8 45%,#5f9ef0 55%,#3070d8) padding-box;box-shadow:inset 0 0 0 1px #00287859}.os-root ::-webkit-scrollbar-corner{background:#ececec}.os-wallpaper{position:absolute;inset:0;background:var(--os-wallpaper) center / cover no-repeat,#5a5550}:root[data-theme=dark] .os-wallpaper{filter:brightness(.6)}.os-sky{position:absolute;inset:0;overflow:hidden;pointer-events:none}.os-sky>*{position:absolute;inset:0}.os-sky-tint{mix-blend-mode:multiply;transition:background-color 60s linear}.os-sky-gloom{background:linear-gradient(#464e5ce6,#6e747e99);mix-blend-mode:multiply;transition:opacity 3s ease}.os-sky-fog{inset:-10% -30%;background:radial-gradient(ellipse 40% 30% at 30% 60%,rgba(235,238,242,.55),transparent 70%),radial-gradient(ellipse 45% 35% at 75% 40%,rgba(235,238,242,.45),transparent 70%),linear-gradient(transparent,#e1e4e866);animation:os-fog-drift 60s ease-in-out infinite alternate}@keyframes os-fog-drift{to{transform:translate(12%)}}.os-sky-canvas{width:100%;height:100%}.os-sky-flash{background:#ebf0ffe6;mix-blend-mode:soft-light;opacity:0;animation:os-lightning .9s ease-out}@keyframes os-lightning{0%,to{opacity:0}6%{opacity:1}14%{opacity:.2}22%{opacity:.8}}.os-status .os-sky-status{display:flex;align-items:center;gap:3px;height:100%;font-size:12px;line-height:1;white-space:nowrap}.os-status .os-sky-status span{font-size:11px}.os-menubar{position:absolute;inset:0 0 auto;z-index:1000;height:22px;display:flex;align-items:center;justify-content:space-between;padding:0 8px 0 4px;background:linear-gradient(var(--os-bar-top),var(--os-bar-bottom));backdrop-filter:blur(18px) saturate(1.3);-webkit-backdrop-filter:blur(18px) saturate(1.3);box-shadow:0 1px #00000052,0 2px 6px #00000026;font-size:14px}.os-menus,.os-status{display:flex;align-items:center;height:100%}.os-menu{position:relative;display:flex;align-items:center;height:100%}.os-menu-title{height:22px;padding:0 10px;display:flex;align-items:center}.os-menu-title[data-open=true]{background:var(--os-select-grad);color:#fff}.os-logo{display:block;width:16px;height:16px}.os-menu-title[data-open=true] .os-logo{filter:brightness(0) invert(1)}.os-menu-appname{padding:0 10px 0 2px;font-weight:700}.os-menu-list{position:absolute;top:22px;left:0;min-width:230px;padding:4px 0;margin:0;list-style:none;background:var(--os-menu-bg);border-radius:0 0 5px 5px;box-shadow:0 0 0 1px #0000002e,0 10px 26px #00000059}.os-menu-list button{width:100%;display:flex;justify-content:space-between;gap:28px;padding:2px 20px;text-align:left;white-space:nowrap;font-size:14px}.os-menu-list button:hover:not(:disabled){background:var(--os-select-grad);color:#fff}.os-menu-list button:disabled{opacity:.4}.os-menu-list kbd{font:inherit;opacity:.6}.os-menu-divider{height:1px;margin:5px 0;background:#0000001f}.os-status{gap:2px;font-size:14px}.os-status button{height:22px;min-width:26px;padding:0 7px;display:grid;place-items:center}.os-status button:hover{background:#00000014}.os-status time{padding:0 6px;font-variant-numeric:tabular-nums}.os-desktop-icons{position:absolute;top:36px;right:14px;bottom:100px;margin:0;padding:0;list-style:none;display:flex;flex-direction:column;flex-wrap:wrap-reverse;align-content:flex-start;gap:10px}.os-desktop-icons button{width:96px;padding:4px;display:flex;flex-direction:column;align-items:center;gap:3px;border-radius:6px}.os-desktop-icons .os-icon{filter:drop-shadow(0 3px 5px rgba(0,0,0,.35))}.os-desktop-icons span{max-width:100%;padding:0 5px;border-radius:8px;color:#fff;font-size:12px;font-weight:700;text-shadow:0 1px 2px rgba(0,0,0,.9),0 0 6px rgba(0,0,0,.5)}.os-desktop-icons button[data-selected=true] .os-icon{background:#0000004d;border-radius:6px;box-shadow:0 0 0 2px #0000004d}.os-desktop-icons button[data-selected=true] span{background:var(--os-select);text-shadow:none}.os-window{position:absolute;display:flex;flex-direction:column;border-radius:6px 6px 4px 4px;background:var(--os-window);box-shadow:var(--os-shadow-quiet);overflow:hidden;transform-origin:center;will-change:transform}.os-genie-defs{position:absolute;width:0;height:0}.os-window[data-focused=true]{box-shadow:var(--os-shadow)}.os-titlebar{position:relative;flex:none;height:23px;display:grid;place-items:center;padding:0 78px;background:linear-gradient(var(--os-title-top),var(--os-title-bottom));box-shadow:inset 0 1px #ffffffb3;border-bottom:1px solid #9c9c9c}.os-window[data-focused=false] .os-titlebar{background:linear-gradient(var(--os-title-inactive-top),var(--os-title-inactive-bottom));border-bottom-color:#c8c8c8}.os-title{margin:0;overflow:hidden;max-width:100%;font-size:13px;font-weight:400;white-space:nowrap;text-overflow:ellipsis;text-shadow:0 1px 0 rgba(255,255,255,.6)}.os-window[data-focused=false] .os-title{color:var(--os-faint)}.os-controls{position:absolute;left:8px;top:50%;translate:0 -50%;display:flex;gap:8px}.os-control{position:relative;width:13px;height:13px;border-radius:50%;box-shadow:inset 0 0 0 1px #00000059,0 1px 1px #fff9}.os-control:before{content:"";position:absolute;top:1px;left:3px;right:3px;height:5px;border-radius:50%;background:linear-gradient(#fffffff2,#ffffff1a)}.os-close{background:radial-gradient(circle at 50% 75%,#ffb6a8,#e2322a 55%,#a61a13)}.os-min{background:radial-gradient(circle at 50% 75%,#fff0a8,#e9a92a 55%,#a86e0c)}.os-max{background:radial-gradient(circle at 50% 75%,#c8f5b0,#53b43c 55%,#2c7a1d)}.os-window[data-focused=false] .os-control{background:radial-gradient(circle at 50% 75%,#fbfbfb,#cfcfcf 55%,#a4a4a4)}.os-control:after{position:absolute;inset:0;display:grid;place-items:center;font:700 10px/1 var(--os-ui);color:#3c0000b3;opacity:0}.os-close:after{content:"×"}.os-min:after{content:"–"}.os-max:after{content:"+"}.os-controls:hover .os-control:after{opacity:1}.os-body{flex:1;min-height:0;display:flex}.os-resize{position:absolute;z-index:2}.os-resize-e{top:12px;bottom:12px;right:-3px;width:8px;cursor:ew-resize}.os-resize-w{top:12px;bottom:12px;left:-3px;width:8px;cursor:ew-resize}.os-resize-s{left:12px;right:12px;bottom:-3px;height:8px;cursor:ns-resize}.os-resize-se{right:-3px;bottom:-3px;width:16px;height:16px;cursor:nwse-resize}.os-resize-sw{left:-3px;bottom:-3px;width:16px;height:16px;cursor:nesw-resize}.os-loading{position:relative;width:24px;height:24px;margin:auto;animation:os-spin .9s steps(12) infinite;background:conic-gradient(from 0deg,#0000008c,#0000000d);mask:repeating-conic-gradient(#000 0 18deg,transparent 18deg 30deg),radial-gradient(circle,transparent 5px,#000 5.5px);mask-composite:intersect;border-radius:50%}.os-loading span{display:none}@keyframes os-spin{to{rotate:360deg}}.os-app{flex:1;min-width:0;display:flex;flex-direction:column;user-select:text}.os-scroll{flex:1;min-height:0;overflow:auto}.os-toolbar{position:relative;flex:none;height:36px;display:flex;align-items:center;gap:8px;padding:0 10px;margin-top:-1px;background:linear-gradient(var(--os-title-bottom),#bdbdbd);border-bottom:1px solid #8e8e8e;user-select:none}.os-window[data-focused=false] .os-toolbar{background:linear-gradient(var(--os-title-inactive-bottom),#dadada);border-bottom-color:#b5b5b5}:root[data-theme=dark] .os-toolbar{background:linear-gradient(var(--os-title-bottom),#333)}.os-toolbar-meta{margin-left:auto;overflow:hidden;color:var(--os-dim);font-size:11px;white-space:nowrap;text-overflow:ellipsis;text-shadow:0 1px 0 rgba(255,255,255,.5)}.os-root .os-button{position:relative;display:inline-flex;align-items:center;height:22px;padding:0 14px;border-radius:11px;background:linear-gradient(#fff,#f1f1f1 45%,#dedede 50%,#f4f4f4);box-shadow:inset 0 0 0 1px #00000059,0 1px 1px #00000026;color:#111;font-size:12px;text-decoration:none;white-space:nowrap}.os-root .os-button:active{background:linear-gradient(#c9dcf5,#9cc0ee 50%,#7fa9e8 50%,#b8d3f6)}.os-root .os-button-primary{background:linear-gradient(#bfe0ff,#5ea8f7 45%,#2e86f0 50%,#8cc4ff);box-shadow:inset 0 0 0 1px #002d828c,0 1px 1px #0003;color:#fff;text-shadow:0 -1px 0 rgba(0,40,120,.4);animation:os-throb 1.6s ease-in-out infinite alternate}@keyframes os-throb{to{filter:brightness(1.12) saturate(1.1)}}.os-icon-button{width:30px;justify-content:center;padding:0!important;font-size:14px!important}.os-segmented{display:inline-flex;border-radius:11px;box-shadow:inset 0 0 0 1px #00000059,0 1px 1px #00000026;background:linear-gradient(#fff,#f1f1f1 45%,#dedede 50%,#f4f4f4);overflow:hidden}.os-segmented button{height:22px;padding:0 14px;font-size:12px;color:#111}.os-segmented button+button{box-shadow:inset 1px 0 #00000040}.os-segmented button[aria-pressed=true]{background:linear-gradient(#bfe0ff,#5ea8f7 45%,#2e86f0 50%,#8cc4ff);color:#fff;text-shadow:0 -1px 0 rgba(0,40,120,.4)}.os-empty{display:grid;place-items:center;color:var(--os-faint)}.os-about .os-scroll,.os-project{background:var(--os-content)}.os-document{padding:30px 40px 40px;font-size:14px;line-height:1.65}.os-document h1{margin:0;font-family:var(--os-display);font-size:40px;font-weight:400;line-height:1.1}.os-document-meta{margin:4px 0 20px;color:var(--os-faint);font-size:12px}.os-document p{margin:0 0 12px}.os-document a,.os-prose a{color:#1a5cc8;text-decoration:underline}.os-document-sign{margin-top:22px!important;font-family:var(--os-display);font-size:20px;color:var(--os-dim)}.os-pages-canvas{padding:28px 24px 48px;background:#8e8e8e linear-gradient(#a3a3a3,#8a8a8a)}:root[data-theme=dark] .os-pages-canvas{background:#2a2a2a}.os-page{width:760px;min-height:983px;margin:0 auto;padding:56px 60px 60px;background:#fff;color:#1d1d1f;box-shadow:0 0 0 1px #0000002e,0 10px 30px #00000059;font-size:11.5px;line-height:1.55;user-select:text}.os-cv-header{padding-bottom:18px;margin-bottom:22px;border-bottom:2px solid #1d1d1f}.os-cv-header h1{margin:0;font-family:var(--os-display);font-size:46px;font-weight:400;letter-spacing:-.01em;line-height:1}.os-cv-role{margin:10px 0 0;color:#3875d7;font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.os-cv-where{margin:2px 0 0;color:#6e6e73}.os-cv-body{display:grid;grid-template-columns:196px 1fr;gap:34px}.os-page h2{margin:0 0 10px;padding-bottom:5px;border-bottom:1px solid #d2d2d7;color:#3875d7;font-size:9.5px;font-weight:700;letter-spacing:.18em;text-transform:uppercase}.os-page section+section{margin-top:22px}.os-page h3{margin:0;font-size:11.5px;font-weight:700}.os-page p{margin:0}.os-page a{color:inherit;text-decoration:none}.os-page a:hover{color:#3875d7}.os-cv-contact{margin:0;padding:0;list-style:none;overflow-wrap:anywhere}.os-cv-contact li+li{margin-top:3px}.os-cv-skill+.os-cv-skill,.os-cv-edu+.os-cv-edu{margin-top:10px}.os-cv-skill p,.os-cv-edu p{color:#424245}.os-cv-date{color:#86868b;font-size:10.5px;font-variant-numeric:tabular-nums;white-space:nowrap}.os-cv-profile{font-family:var(--os-display);font-size:15px;line-height:1.5;color:#1d1d1f}.os-cv-job+.os-cv-job{margin-top:18px}.os-cv-job-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px}.os-cv-job h3{font-size:13px}.os-cv-job-role{color:#424245;font-style:italic}.os-cv-job-summary{margin-top:4px!important;color:#1d1d1f}.os-cv-job ul{margin:6px 0 0;padding-left:14px;list-style:disc;color:#424245}.os-cv-job li+li{margin-top:3px}@media print{@page{margin:0}body *{visibility:hidden}.os-page,.os-page *{visibility:visible}.os-page{position:fixed;inset:0;zoom:1!important;box-shadow:none}}@media(max-width:767px){.os-pages-canvas{padding:0}.os-page{width:auto;min-height:0;padding:28px 22px;box-shadow:none}.os-cv-body{grid-template-columns:1fr;gap:22px}.os-cv-side{order:2}}.os-finder{flex-direction:row}.os-sidebar{flex:none;width:170px;padding:10px 0;background:var(--os-sidebar);border-right:1px solid #a5acb4;user-select:none}.os-sidebar-heading{margin:4px 12px;color:#6f7885;font-size:11px;font-weight:700;text-transform:uppercase;text-shadow:0 1px 0 rgba(255,255,255,.6)}.os-sidebar button{width:100%;display:flex;justify-content:space-between;padding:3px 12px 3px 20px;text-align:left;font-size:12px}.os-sidebar button span{color:var(--os-faint)}.os-sidebar button[aria-pressed=true]{background:linear-gradient(#6d9be2,#3570cc);box-shadow:inset 0 1px #83aaea;color:#fff;font-weight:700}.os-sidebar button[aria-pressed=true] span{color:#fffc}.os-finder-main{flex:1;min-width:0;display:flex;flex-direction:column;background:var(--os-content)}.os-finder-grid{margin:0;padding:18px;list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));align-content:start;gap:16px 12px;user-select:none}.os-finder-grid button{width:100%;display:flex;flex-direction:column;align-items:center;gap:4px;padding:6px;border-radius:6px}.os-finder-thumb{width:100%;aspect-ratio:16 / 10;display:grid;place-items:center;overflow:hidden;background:#f4f4f4;box-shadow:0 0 0 1px #00000040,0 3px 8px #00000040;color:var(--os-faint);font-weight:700}.os-finder-thumb img{width:100%;height:100%;object-fit:cover;object-position:top}.os-finder-name{padding:0 6px;border-radius:8px;font-size:12px;font-weight:700}.os-finder-meta{color:var(--os-faint);font-size:11px}.os-finder-grid button[data-selected=true] .os-finder-thumb{box-shadow:0 0 0 3px #3875d799,0 3px 8px #00000040}.os-finder-grid button[data-selected=true] .os-finder-name{background:var(--os-select);color:#fff}.os-project{padding:20px 28px 36px;font-size:13px;line-height:1.65}.os-project-cover{display:block;width:100%;aspect-ratio:16 / 10;object-fit:cover;object-position:top;box-shadow:0 0 0 1px #00000040,0 4px 12px #00000040}.os-project h1{margin:20px 0 2px;font-family:var(--os-display);font-size:34px;font-weight:400;line-height:1.15}.os-project-lede{margin:0 0 16px;color:var(--os-dim)}.os-prose h2{margin:22px 0 6px;font-size:14px;font-weight:700}.os-prose p,.os-prose ul{margin:0 0 10px}.os-prose ul{padding-left:18px}.os-prose code{font-family:var(--os-mono);font-size:.9em}.os-browser iframe{flex:1;width:100%;border:0;background:#fff}.os-address{flex:1;min-width:0;height:22px;padding:0 10px;border:0;border-radius:3px;background:#fff;box-shadow:inset 0 1px 2px #00000059,0 1px #fff9;color:#111;font:12px var(--os-ui)}.os-address:focus{outline:none;box-shadow:inset 0 1px 2px #00000059,0 0 0 3px #3875d78c}.os-progress{position:absolute;left:0;right:0;bottom:-1px;height:2px;background:#3875d7;transform-origin:left;transform:scaleX(0);opacity:0}.os-progress[data-loading=true]{opacity:1;animation:os-load 2.4s cubic-bezier(.1,.7,.3,1) forwards}@keyframes os-load{to{transform:scaleX(.85)}}.os-terminal{background:#0a0a0af0;color:#e0e0e0;font-family:var(--os-mono);font-size:12px;line-height:1.5}.os-term-screen{padding:8px 10px 20px}.os-term-line{display:flex;flex-wrap:wrap;gap:0 7px;white-space:pre-wrap;word-break:break-word}.os-term-prompt{color:#7ee787;flex:none}.os-term-error{color:#ff8b7a}.os-root .os-term-line input:focus-visible{outline:none}.os-term-line input{flex:1;min-width:40px;padding:0;border:0;background:none;color:inherit;font:inherit;caret-color:#7ee787;outline:none}.os-term-table{display:grid;grid-template-columns:max-content 1fr;gap:0 18px}.os-term-table div{display:contents}.os-term-table b,.os-term-line b{color:#f2cc60;font-weight:400}.os-neofetch{display:flex;flex-wrap:wrap;gap:8px 22px;padding:6px 0}.os-neofetch pre{margin:0;color:#5fa8ff;font:inherit;line-height:1.2}.os-swatches{display:flex;gap:4px;margin-top:8px}.os-swatches span{width:18px;height:12px}.os-dock-wrap{position:absolute;left:50%;bottom:0;z-index:900;translate:-50% 0}.os-dock{display:flex;align-items:flex-end;gap:4px;height:60px;padding:0 10px 5px;border-radius:7px 7px 0 0;background:linear-gradient(#ffffff85,#ffffff47);backdrop-filter:blur(10px) saturate(1.4);-webkit-backdrop-filter:blur(10px) saturate(1.4);box-shadow:inset 0 1px #ffffffd9,0 0 0 1px #ffffff73,0 -2px 14px #0000002e}:root[data-theme=dark] .os-dock{background:linear-gradient(#5050508c,#28282873)}.os-dock-item{position:relative;flex:none;display:flex;align-items:flex-end;justify-content:center}.os-dock-icon{display:block;flex:none}.os-dock-icon .os-icon{display:block;width:100%;height:100%;filter:drop-shadow(0 2px 3px rgba(0,0,0,.3))}.os-dock-dot{position:absolute;bottom:-5px;left:50%;translate:-50% 0;width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent;border-bottom:4px solid #111}:root[data-theme=dark] .os-dock-dot{border-bottom-color:#eee}.os-dock-label{position:absolute;bottom:calc(100% + 10px);left:50%;translate:-50% 4px;padding:2px 12px;border-radius:11px;background:#000000b8;color:#fff;font-size:13px;font-weight:700;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .12s,translate .12s}.os-dock-item:hover .os-dock-label,.os-dock-item:focus-visible .os-dock-label{opacity:1;translate:-50% 0}.os-dock-divider{flex:none;align-self:stretch;width:1px;margin:8px 5px 0;background:linear-gradient(transparent,#00000059 30%,#00000059);box-shadow:1px 0 #ffffff80}.os-spotlight-backdrop{position:absolute;inset:0;z-index:2000}.os-spotlight{position:absolute;top:22px;right:6px;width:min(420px,94vw);overflow:hidden;border-radius:0 0 6px 6px;background:var(--os-menu-bg);box-shadow:0 0 0 1px #0003,0 12px 30px #0006}.os-spotlight input{width:calc(100% - 20px);height:26px;margin:10px;padding:0 12px 0 28px;border:0;border-radius:13px;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Ccircle cx='6.5' cy='6.5' r='4.5' fill='none' stroke='%23777' stroke-width='1.8'/%3E%3Cpath d='M10 10l4 4' stroke='%23777' stroke-width='1.8' stroke-linecap='round'/%3E%3C/svg%3E") 9px 50% / 13px no-repeat;box-shadow:inset 0 1px 2px #0006;color:#111;font:13px var(--os-ui);outline:none}.os-spotlight ul{margin:0;padding:4px 0;list-style:none;border-top:1px solid rgba(0,0,0,.12)}.os-spotlight li button{width:100%;display:flex;align-items:center;gap:8px;padding:3px 14px;text-align:left}.os-spotlight li svg,.os-spotlight li img{flex:none;width:20px;height:20px}.os-spotlight li[aria-selected=true] button{background:var(--os-select-grad);color:#fff}.os-spotlight-label{flex:none;font-size:13px}.os-spotlight-hint{overflow:hidden;opacity:.6;font-size:11px;white-space:nowrap;text-overflow:ellipsis}.os-boot{position:absolute;inset:0;z-index:5000;display:grid;place-content:center;justify-items:center;gap:36px;background:radial-gradient(circle at 50% 45%,#e4e4e4,#bdbdbd)}.os-boot-mark{width:110px;height:110px;background:url(/os/icons/apple.png) center / contain no-repeat;filter:grayscale(1) brightness(.55) contrast(1.2);font-size:0}.os-boot-bar{width:24px;height:24px;border-radius:50%;background:conic-gradient(from 0deg,#0009,#0000000d);mask:repeating-conic-gradient(#000 0 18deg,transparent 18deg 30deg),radial-gradient(circle,transparent 5px,#000 5.5px);mask-composite:intersect;animation:os-spin .9s steps(12) infinite}.os-boot-bar span{display:none}.os-sidebar-link{display:flex;justify-content:space-between;padding:3px 12px 3px 20px;font-size:12px;color:var(--os-ink);text-decoration:none}.os-sidebar-link:hover{background:#3875d71f}.os-sidebar-link span{color:var(--os-faint)}.os-sidebar .os-sidebar-heading+.os-sidebar-heading,.os-sidebar button+.os-sidebar-heading,.os-sidebar a+.os-sidebar-heading{margin-top:14px}.os-photo-library{padding:6px 16px 20px;background:var(--os-content);scroll-behavior:smooth}.os-photo-library h3{position:sticky;top:-6px;z-index:1;margin:0 -16px 8px;padding:8px 16px 6px;background:color-mix(in srgb,var(--os-content) 92%,transparent);backdrop-filter:blur(8px);font-size:13px;font-weight:700}.os-photo-library h3 span{margin-left:6px;color:var(--os-faint);font-size:11px;font-weight:400}.os-photo-library section+section{margin-top:14px}.os-photo-rows{margin:0;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:6px}.os-photo-rows li{flex:calc(var(--ar) * 1000) 1 calc(var(--ar) * var(--row));aspect-ratio:var(--ar);min-width:0}.os-photo-rows:after{content:"";flex:10000 1 0}.os-photo-rows button{display:block;width:100%;height:100%;overflow:hidden}.os-photo-rows img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .25s ease,filter .25s ease}.os-photo-rows button:hover img{transform:scale(1.04);filter:brightness(1.06)}.os-photo-rows button:focus-visible{outline-offset:-3px}.os-photo-bar{flex:none;height:30px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 12px;background:linear-gradient(#e2e2e2,#c9c9c9);border-top:1px solid #9c9c9c;color:var(--os-dim);font-size:11px}.os-photo-bar input{width:120px}.os-photo-viewer{background:#1a1a1a}.os-photo-stage{position:relative;flex:1;min-height:0}.os-photo-stage img{position:absolute;inset:16px;width:calc(100% - 32px);height:calc(100% - 32px);object-fit:contain;background:transparent!important;filter:drop-shadow(0 8px 22px rgba(0,0,0,.6))}.os-window-fitting{transition:left .35s cubic-bezier(.2,.8,.2,1),top .35s cubic-bezier(.2,.8,.2,1),width .35s cubic-bezier(.2,.8,.2,1),height .35s cubic-bezier(.2,.8,.2,1)}.os-photos-empty{gap:12px;align-content:center}.os-dashboard{position:absolute;inset:0;z-index:1500;display:grid;place-items:center;background:#00000073;overflow:auto}.os-dashboard-board{position:relative;width:min(940px,100%);height:560px}.os-dashboard-slot{position:absolute}.os-slot-clock{left:40px;top:30px}.os-slot-calendar{left:250px;top:40px}.os-slot-weather{right:40px;top:30px}.os-slot-github{left:120px;top:270px}.os-slot-sticky{right:90px;top:250px}.os-widget{color:#fff;font-size:12px;filter:drop-shadow(0 8px 16px rgba(0,0,0,.45))}.os-widget-title{margin:0 0 8px;font-weight:700;font-size:12px;opacity:.85}.os-widget-muted{margin:0;opacity:.6}.os-widget-clock{display:grid;justify-items:center;gap:6px}.os-widget-clock svg{width:160px;height:160px}.os-widget-clock span{font-weight:700;text-shadow:0 1px 3px rgba(0,0,0,.8)}.os-widget-calendar{display:flex;overflow:hidden;border-radius:12px;box-shadow:inset 0 0 0 1px #ffffff40}.os-cal-page{width:120px;display:flex;flex-direction:column;align-items:center;background:linear-gradient(#fff,#e9e9e9);color:#222}.os-cal-page span{width:100%;padding:5px 0;text-align:center;background:linear-gradient(#ef6a5b,#c9261b);color:#fff;font-weight:700}.os-cal-page strong{font-family:var(--os-display);font-size:72px;font-weight:400;line-height:1.2}.os-cal-month{width:190px;padding:8px 10px;background:linear-gradient(#4a4a4a,#232323)}.os-cal-month p{margin:0 0 6px;text-align:center;font-weight:700}.os-cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;text-align:center;font-size:11px}.os-cal-grid b{opacity:.6}.os-cal-grid span[data-today]{border-radius:3px;background:#d8302a;font-weight:700}.os-widget-weather{width:230px;padding:14px 16px;border-radius:14px;background:linear-gradient(#5aa4ea,#1f5fb3);box-shadow:inset 0 0 0 1px #ffffff4d,inset 0 1px #ffffff80}.os-weather-city{margin:0;font-weight:700;font-size:14px}.os-weather-now{display:flex;align-items:center;gap:10px;margin:4px 0}.os-weather-icon{font-size:40px}.os-weather-now strong{font-size:48px;font-weight:400;line-height:1}.os-weather-note{margin:0;opacity:.9}.os-widget-github{width:330px;padding:12px 14px;border-radius:12px;background:linear-gradient(#3c3c3cf2,#191919f2);box-shadow:inset 0 0 0 1px #fff3}.os-widget-github ul{margin:0;padding:0;list-style:none}.os-widget-github li{display:flex;justify-content:space-between;gap:10px;padding:5px 0;border-top:1px solid rgba(255,255,255,.1)}.os-widget-github li span{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.os-widget-github time{flex:none;opacity:.55}.os-widget-sticky{width:200px;min-height:170px;padding:14px;background:linear-gradient(#fff6a8,#f7e36a);color:#3a3000;font-family:"Marker Felt","Comic Sans MS",var(--os-ui);font-size:14px;line-height:1.45;box-shadow:inset 0 -12px 20px -16px #785a0080;rotate:2deg}.os-context-menu{position:fixed;z-index:1100;border-radius:5px}.os-expose{position:absolute;inset:0;z-index:9;background:#00000080}.os-expose-label{position:absolute;max-width:260px;padding:2px 10px;overflow:hidden;border-radius:10px;background:#0000009e;color:#fff;font-size:12px;font-weight:700;white-space:nowrap;text-overflow:ellipsis;transform:translate(-50%);pointer-events:none}.os-window[data-exposed]{cursor:pointer;box-shadow:0 10px 30px #00000073}.os-window[data-exposed]>*{pointer-events:none}.os-window[data-exposed]:hover{box-shadow:0 0 0 6px #78aaffd9,0 10px 30px #00000073}.os-screensaver{position:fixed;inset:0;z-index:4000;overflow:hidden;background:#000;cursor:none}.os-screensaver-slide{position:absolute;inset:0;display:grid;place-items:center}.os-screensaver-backdrop{position:absolute;inset:-60px;background:center / cover no-repeat;filter:blur(48px) brightness(.55) saturate(1.2)}.os-screensaver-slide img{position:relative;max-width:100%;max-height:100%;object-fit:contain;box-shadow:0 30px 80px #00000080}.os-screensaver-caption{position:absolute;left:40px;bottom:34px;z-index:1;display:flex;flex-direction:column;gap:2px;margin:0;color:#ffffffd9;font-size:13px;text-shadow:0 1px 6px rgba(0,0,0,.6)}.os-screensaver-caption strong{font-size:18px;font-weight:400;letter-spacing:.02em}.os-cursors{position:absolute;inset:0;z-index:1200;overflow:hidden;pointer-events:none}.os-cursor{position:absolute;filter:drop-shadow(0 1px 1.5px rgba(0,0,0,.35));transition:left .1s linear,top .1s linear,opacity .6s ease}.os-cursor[data-idle]{opacity:0}.os-online{display:flex;align-items:center;gap:4px;padding:0 7px;font-size:12px;font-variant-numeric:tabular-nums}.os-stickies{display:flex;flex-direction:column;height:100%;background:#f2efe6}:root[data-theme=dark] .os-stickies{background:#2c2b28}.os-stickies-wall{flex:1;display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));align-content:start;gap:22px;padding:22px}.os-stickies [data-color]{--paper: #fff59d;--edge: #f0dc5a}.os-stickies [data-color=blue]{--paper: #c9e8ff;--edge: #a3d2f5}.os-stickies [data-color=green]{--paper: #d4f5c0;--edge: #b0e08f}.os-stickies [data-color=pink]{--paper: #ffd6e5;--edge: #f7b3cc}.os-stickies [data-color=purple]{--paper: #e6d8ff;--edge: #cdb8f5}.os-stickies [data-color=gray]{--paper: #f1f1ef;--edge: #d9d9d4}.os-sticky{position:relative;display:flex;flex-direction:column;min-height:170px;padding:14px 14px 10px;background:linear-gradient(var(--paper),var(--edge));color:#3a3527;box-shadow:0 1px 1px #0000001f,0 8px 18px -6px #00000059;font-family:Marker Felt,Chalkboard SE,Bradley Hand,Comic Sans MS,cursive;font-size:15px;line-height:1.35;transform:rotate(var(--tilt, 0deg))}.os-sticky p{flex:1;margin:0;overflow-wrap:anywhere;white-space:pre-wrap}.os-sticky footer{display:flex;justify-content:space-between;gap:8px;margin-top:10px;font-size:12px;opacity:.7}.os-sticky-draft{grid-column:span 2;gap:8px;font-family:inherit}.os-sticky-draft textarea,.os-sticky-draft input{width:100%;border:0;background:#ffffff59;color:inherit;font:15px/1.35 Marker Felt,Chalkboard SE,Bradley Hand,Comic Sans MS,cursive;outline:none}.os-sticky-draft textarea{flex:1;min-height:110px;padding:6px;resize:none}.os-sticky-draft input{padding:4px 6px;font-size:13px}.os-sticky-draft .os-sticky-trap{position:absolute;left:-9999px}.os-sticky-colors{display:flex;gap:6px}.os-sticky-colors button{width:16px;height:16px;border-radius:50%;background:var(--paper);box-shadow:inset 0 0 0 1px #00000040}.os-sticky-colors button[aria-checked=true]{box-shadow:inset 0 0 0 1px #00000040,0 0 0 2px #3b7fe0}.os-sticky-actions{display:flex;align-items:center;gap:6px;font-family:Lucida Grande,system-ui,sans-serif;font-size:11px}.os-sticky-actions span{margin-right:auto;opacity:.6}.os-sticky-error{flex:0;font-size:12px;color:#a1261d}.os-stickies-empty{grid-column:1 / -1;margin:40px 0;text-align:center;color:var(--os-dim)}@media(max-width:767px){.os-sticky-draft{grid-column:1 / -1}}.os-back{display:none}@media(max-width:767px){.os-menus .os-menu:not(:first-child){display:none}.os-status time{font-size:12px}.os-desktop-icons{inset:34px 10px auto;display:grid;grid-template-columns:repeat(4,1fr);gap:14px 4px}.os-desktop-icons button{width:100%}.os-desktop-icons .os-icon{width:60px;height:60px}.os-desktop-icons span{font-size:11px}.os-window,.os-window[data-focused=true]{border-radius:0;box-shadow:none}.os-titlebar{height:44px;padding:0 90px}.os-title{font-size:15px;font-weight:700}.os-controls,.os-resize{display:none}.os-back{display:block;position:absolute;left:6px;top:50%;translate:0 -50%;padding:6px 10px;color:#1a5cc8;font-size:15px}.os-root[data-app-open] .os-dock-wrap{display:none}.os-dock-item:not([data-mobile]),.os-dock-divider{display:none}.os-dock{gap:14px;height:72px;padding:0 16px 8px}.os-dock-label{display:none}.os-finder-grid{grid-template-columns:repeat(auto-fill,minmax(130px,1fr))}.os-sidebar{display:none}.os-document,.os-project{padding:22px 20px 32px}.os-photo-bar input{display:none}.os-dashboard{place-items:start center;padding:40px 0}.os-dashboard-board{height:auto;display:flex;flex-direction:column;align-items:center;gap:24px}.os-dashboard-slot{position:static}.os-widget-github{width:min(330px,92vw)}}@media(prefers-reduced-motion:reduce){.os-progress[data-loading=true]{animation:none;transform:scaleX(.6)}.os-root .os-button-primary,.os-loading,.os-boot-bar{animation:none}}
