@import"https://fonts.googleapis.com/css2?family=Georama:ital,wght@0,100..900;1,100..900&family=Roboto+Mono:ital,wght@0,100..700;1,100..700&display=swap";@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1}}}@font-face{font-family:SF-Pro-Text;src:url(/fonts/SF-Pro.ttf)format("truetype");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:SF-Pro-Display;src:url(/fonts/SF-Pro.ttf)format("opentype")}@font-face{font-family:Big-Caslon;src:url(/fonts/BigCaslon.ttf)format("truetype");font-weight:400;font-style:normal;font-display:swap}@layer theme{:root,:host{--font-sans:"SF-Pro-Text", BlinkMacSystemFont, "SF Pro Text", "SF Pro Display", "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-gray-100:oklch(96.7% .003 264.542);--color-gray-950:oklch(13% .028 261.692);--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-2xl:42rem;--container-3xl:48rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height: 1.5 ;--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-wide:.025em;--leading-relaxed:1.625;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--radius-2xl:1rem;--radius-3xl:1.5rem;--drop-shadow-2xl:0 25px 25px #00000026;--ease-out:cubic-bezier(0, 0, .2, 1);--blur-md:12px;--blur-3xl:64px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--font-roboto:"Roboto Mono", monospace}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}main{width:100dvw;height:100dvh;overflow:hidden}nav{top:calc(var(--spacing) * 0);right:calc(var(--spacing) * 0);left:calc(var(--spacing) * 0);z-index:50;border-style:var(--tw-border-style);border-width:1px;border-color:#ffffff26;justify-content:space-between;align-items:center;display:flex;position:fixed}@supports (color:color-mix(in lab,red,red)){nav{border-color:color-mix(in oklab,var(--color-white) 15%,transparent)}}nav{background-color:#ffffff1a}@supports (color:color-mix(in lab,red,red)){nav{background-color:color-mix(in oklab,var(--color-white) 10%,transparent)}}nav{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a), 0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);-webkit-backdrop-filter:blur(24px)saturate(180%);border-bottom-style:var(--tw-border-style);border-color:#ffffff1a;border-bottom-width:1px}@supports (color:color-mix(in lab,red,red)){nav{border-color:color-mix(in oklab,var(--color-white) 10%,transparent)}}nav{padding-inline:calc(var(--spacing) * 4);padding-block:calc(var(--spacing) * 1);-webkit-user-select:none;user-select:none;height:28px;color:var(--text-color)}nav>div{min-width:calc(var(--spacing) * 0);align-items:center;display:flex}nav>div:first-child{gap:calc(var(--spacing) * 3)}nav>div:last-child{gap:calc(var(--spacing) * 3);flex-shrink:0}nav ul{min-width:calc(var(--spacing) * 0);align-items:center;gap:calc(var(--spacing) * 5);display:flex}nav p,nav li{white-space:nowrap}nav ul p{cursor:pointer;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));color:var(--text-color)}nav time{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:var(--text-color)}}@layer components{.icon{cursor:pointer;padding:calc(var(--spacing) * 1);transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));border-radius:.25rem}@media(hover:hover){.icon:hover{background-color:#ffffff26}@supports (color:color-mix(in lab,red,red)){.icon:hover{background-color:color-mix(in oklab,var(--color-white) 15%,transparent)}}}#welcome{--tw-translate-x: -50% ;--tw-translate-y: -50% ;translate:var(--tw-translate-x) var(--tw-translate-y);color:color-mix(in oklab,var(--color-white) 80%,transparent);-webkit-user-select:none;user-select:none;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;top:50%;left:50%}#welcome .small-screen{top:calc(var(--spacing) * 10);margin:calc(var(--spacing) * 7);border-radius:var(--radius-md);border-style:var(--tw-border-style);border-width:1px;border-color:#ffffff26;position:absolute}@supports (color:color-mix(in lab,red,red)){#welcome .small-screen{border-color:color-mix(in oklab,var(--color-white) 15%,transparent)}}#welcome .small-screen{background-color:#ffffff1a}@supports (color:color-mix(in lab,red,red)){#welcome .small-screen{background-color:color-mix(in oklab,var(--color-white) 10%,transparent)}}#welcome .small-screen{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a), 0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);-webkit-backdrop-filter:blur(24px)saturate(180%);padding:calc(var(--spacing) * 3)}@media(min-width:40rem){#welcome .small-screen{display:none}}#welcome .small-screen p{text-align:center;font-family:var(--font-roboto);color:#ffffffb3}@supports (color:color-mix(in lab,red,red)){#welcome .small-screen p{color:color-mix(in oklab,var(--color-white) 70%,transparent)}}#dock{z-index:50;--tw-translate-x: -50% ;translate:var(--tw-translate-x) var(--tw-translate-y);-webkit-user-select:none;user-select:none;z-index:9999999;position:fixed;bottom:clamp(12px,3vw,24px);left:50%}#dock .dock-container{border-radius:var(--radius-2xl);border-style:var(--tw-border-style);border-width:1px;border-color:#ffffff26;align-items:flex-end;display:flex;overflow:visible}@supports (color:color-mix(in lab,red,red)){#dock .dock-container{border-color:color-mix(in oklab,var(--color-white) 15%,transparent)}}#dock .dock-container{background-color:#ffffff1a}@supports (color:color-mix(in lab,red,red)){#dock .dock-container{background-color:color-mix(in oklab,var(--color-white) 10%,transparent)}}#dock .dock-container{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a), 0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);-webkit-backdrop-filter:blur(24px)saturate(180%);gap:clamp(6px,1.2vw,14px);padding:clamp(6px,1vw,10px)}#dock .tooltip{-webkit-backdrop-filter:blur(22px)saturate(180%);box-shadow:0 14px 40px #00000038,inset 0 1px #ffffff24;background:var(--tooltip-bg)!important;color:var(--tooltip-text)!important;font-size:14px!important;font-weight:500!important;line-height:1!important;font-family:var(--font-sans)!important;opacity:1!important;border-radius:999px!important}#dock .tooltip:after{content:"";clip-path:polygon(100% 100%,0 100%,100% 0);width:10px;height:10px;position:absolute;bottom:-5px;left:50%;transform:translate(-50%)rotate(45deg);background:var(--tooltip-arrow)!important}#dock .dock-icon{cursor:pointer;transform-origin:bottom;will-change:transform;flex-shrink:0;justify-content:center;align-items:center;width:clamp(44px,5vw,64px);height:clamp(44px,5vw,64px);display:flex}#dock .dock-icon img{object-fit:contain;pointer-events:none;width:100%;height:100%}#window-controls{gap:calc(var(--spacing) * 2);display:flex}#window-controls .close{width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5);cursor:pointer;background-color:#ff6157;border-radius:3.40282e38px}#window-controls .minimize{width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5);cursor:pointer;background-color:#ffc030;border-radius:3.40282e38px}#window-controls .maximize{width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5);cursor:pointer;background-color:#2acb42;border-radius:3.40282e38px}#window-controls .disabled{filter:grayscale();opacity:.5;pointer-events:none}#window-header{border-top-left-radius:var(--radius-lg);border-top-right-radius:var(--radius-lg);padding-inline:calc(var(--spacing) * 4);padding-block:calc(var(--spacing) * 3);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));-webkit-user-select:none;user-select:none;background:var(--window-header-bg);border-bottom:1px solid var(--window-border);color:var(--window-muted);-webkit-backdrop-filter:blur(20px)saturate(180%);justify-content:space-between;align-items:center;display:flex}#safari{border-radius:var(--radius-xl);--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);--tw-drop-shadow-size:drop-shadow(0 25px 25px var(--tw-drop-shadow-color,#00000026));--tw-drop-shadow:drop-shadow(var(--drop-shadow-2xl));filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);background:var(--window-bg);color:var(--window-text);border:1px solid var(--window-border);-webkit-backdrop-filter:blur(24px)saturate(180%);width:min(900px,100vw - 32px);position:absolute;top:clamp(48px,10vh,160px);left:clamp(16px,8vw,180px);overflow:hidden}#safari .search{align-items:center;gap:calc(var(--spacing) * 3);border-radius:var(--radius-lg);padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 2);background:var(--window-header-bg);border:1px solid var(--window-border);color:var(--window-text);width:min(66%,520px);display:flex}#safari .search input{--tw-outline-style:none;width:100%;color:var(--window-text);background-color:#0000;outline-style:none}#safari .search input::placeholder{color:var(--window-muted)}#safari .blog{max-width:var(--container-3xl);padding:calc(var(--spacing) * 10);color:var(--window-text);background:0 0;margin-inline:auto}#safari .blog h2{margin-bottom:calc(var(--spacing) * 10);font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height));--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold);color:var(--window-text)}#safari .blog-post{gap:calc(var(--spacing) * 5);grid-template-columns:repeat(12,minmax(0,1fr));display:grid}#safari .blog-post img{border-radius:var(--radius-md);object-fit:cover;width:100%;height:100%}#safari .blog-post .content{grid-column:span 10/span 10}:where(#safari .blog-post .content>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}#safari .blog-post .content p{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));color:var(--window-muted)}#safari .blog-post .content h3{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);color:var(--window-text)}#safari .blog-post .content a{align-items:center;gap:calc(var(--spacing) * 3);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));display:flex}@media(hover:hover){#safari .blog-post .content a:hover{text-decoration-line:underline}}#safari .blog-post .content a{color:#3b82f6}#terminal{border-radius:var(--radius-xl);--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);--tw-drop-shadow-size:drop-shadow(0 25px 25px var(--tw-drop-shadow-color,#00000026));--tw-drop-shadow:drop-shadow(var(--drop-shadow-2xl));filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);color:#e5e7eb;background:#020407;border:1px solid #ffffff1f;width:min(660px,100vw - 32px);height:min(580px,100vh - 110px);position:absolute;top:clamp(48px,8vh,100px);left:clamp(16px,7vw,120px);overflow:hidden}#terminal #window-header{background:#111827;border-bottom:1px solid #ffffff14}#terminal #window-header h2{text-align:center;width:100%;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold);color:#d1d5db}.terminal-ai{background:radial-gradient(circle at 0 0,#22c55e1f,#0000 32%),#020407;flex-direction:column;height:calc(100% - 48px);font-family:Roboto Mono,monospace;display:flex}.terminal-output{flex:1;min-height:0;padding:22px 26px;font-size:15px;line-height:1.7;overflow-y:auto}.terminal-line{color:#d1d5db;margin-bottom:20px}.prompt{color:#22c55e;font-weight:700}.terminal-hero{background:#22c55e0f;border:1px solid #22c55e38;border-radius:14px;margin-bottom:24px;padding:18px}.terminal-hero p{color:#22c55e;letter-spacing:.16em;margin-bottom:6px;font-size:12px}.terminal-hero h3{color:#f9fafb;margin-bottom:6px;font-size:20px;font-weight:700}.terminal-hero span{color:#9ca3af;font-size:13px}.terminal-message{color:#d1d5db;white-space:pre-wrap;margin-top:14px}.terminal-message.bot{color:#a7f3d0;padding-left:18px}.terminal-message.system{color:#9ca3af}.bot-label{color:#60a5fa;font-weight:700}.system-label{color:#fbbf24;font-weight:700}.terminal-input-row{background:#00000094;border-top:1px solid #ffffff14;align-items:center;gap:12px;height:56px;padding:0 26px;font-size:15px;display:flex}.terminal-input-row input{color:#e5e7eb;background:0 0;border:none;outline:none;flex:1;font-family:Roboto Mono,monospace}.terminal-input-row input::placeholder{color:#6b7280}#contact{border-radius:var(--radius-xl);--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);--tw-drop-shadow-size:drop-shadow(0 25px 25px var(--tw-drop-shadow-color,#00000026));--tw-drop-shadow:drop-shadow(var(--drop-shadow-2xl));filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);background:var(--window-bg);width:min(520px,100vw - 32px);height:min(700px,100vh - 110px);color:var(--window-text);border:1px solid var(--window-border);-webkit-backdrop-filter:blur(24px)saturate(180%);position:absolute;top:clamp(44px,7vh,80px);left:clamp(16px,35vw,520px);overflow:hidden}#contact #window-header{position:relative}#contact #window-header h2{text-align:center;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold);color:var(--window-text);position:absolute;left:50%;transform:translate(-50%)}.contact-card{text-align:center;color:#fff;background:radial-gradient(circle at top,#ffffff73,#0000 28%),linear-gradient(#c8e8ec,#8a92bd 48%,#4b3a72);height:calc(100% - 48px);padding:32px 28px;overflow-y:auto}.contact-avatar{background:#ffffff2e;border:2px solid #ffffff38;border-radius:50%;width:108px;height:108px;margin:0 auto 22px;overflow:hidden;box-shadow:inset 0 1px 2px #fff6,0 10px 30px #0000002e}.contact-avatar img{object-fit:cover;width:100%;height:100%}.contact-card h3{margin-bottom:8px;font-size:38px;font-weight:700;line-height:1.05}.contact-role{color:#ffffffb8;font-size:15px}.contact-actions{justify-content:center;gap:14px;margin:28px 0 22px;display:flex}.contact-actions a{color:#fff;background:#4347868c;border-radius:50%;place-items:center;width:52px;height:52px;transition:transform .25s,background .25s;display:grid}.contact-actions a:hover{background:#434786c7;transform:translateY(-3px)scale(1.04)}.contact-info-card{text-align:left;-webkit-backdrop-filter:blur(20px);background:#4144808c;border-radius:24px;padding:20px}.contact-info-card .label{color:#fffffff2;text-transform:lowercase;margin-bottom:4px;font-size:13px;font-weight:700}.contact-info-card a,.contact-info-card p{color:#ffffffc2;font-size:15px;line-height:1.5}.contact-info-card a:hover{text-decoration:underline}.contact-info-card .divider{background:#ffffff1f;height:1px;margin:16px 0}.contact-socials{flex-direction:column;gap:12px;margin-top:18px;display:flex}.contact-socials a{color:#fff;text-align:center;border-radius:18px;justify-content:center;align-items:center;gap:14px;padding:14px 16px;transition:transform .25s,filter .25s;display:flex}.contact-socials a:hover{filter:brightness(1.05);transform:translateY(-2px)}.contact-socials img{object-fit:contain;width:20px;height:20px}.contact-socials span{font-size:14px;font-weight:600}.command-bar{z-index:999;-webkit-backdrop-filter:blur(22px)saturate(180%);background:#141820b8;border:1px solid #ffffff24;border-radius:12px;align-items:center;gap:8px;padding:8px;display:flex;position:fixed;top:42px;left:20px;box-shadow:0 10px 30px #0000002e}.command-bar button{color:#ffffffd1;border-radius:8px;align-items:center;gap:8px;padding:7px 10px;font-size:13px;transition:all .2s;display:flex}.command-bar button:hover{color:#fff;background:#ffffff1a}.command-bar .keycap{color:#ffffffb8;background:#ffffff1f;border:1px solid #ffffff2e;border-radius:6px;padding:2px 7px;font-family:Roboto Mono,monospace;font-size:11px}.shortcut-backdrop{z-index:999999999;-webkit-backdrop-filter:blur(12px);background:#00000052;justify-content:center;align-items:center;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.shortcut-modal{color:#fff;-webkit-backdrop-filter:blur(28px)saturate(180%);background:#111827d1;border:1px solid #ffffff1f;border-radius:22px;width:min(760px,100vw - 32px);padding:34px 38px;animation:.22s modalUp;position:relative;box-shadow:0 30px 90px #00000061,inset 0 1px #ffffff14}.shortcut-close{color:#ffffff8c;border-radius:999px;justify-content:center;align-items:center;width:34px;height:34px;transition:all .2s;display:flex;position:absolute;top:22px;right:24px}.shortcut-close:hover{color:#fff;background:#ffffff14}.shortcut-modal h2{letter-spacing:-.03em;margin-bottom:28px;font-size:32px;font-weight:800}.shortcut-grid.two-column{grid-template-columns:repeat(2,1fr);gap:18px 48px;display:grid}.shortcut-row{align-items:center;gap:16px;display:flex}.shortcut-row p{color:#ffffffc7;font-size:18px;line-height:1.4}.shortcut-key{color:#ffffffe0;background:#ffffff14;border:1px solid #ffffff1f;border-radius:8px;justify-content:center;align-items:center;min-width:54px;padding:6px 10px;font-family:Roboto Mono,monospace;font-size:15px;font-weight:600;display:inline-flex;box-shadow:inset 0 1px #ffffff0f,0 2px 8px #00000029}.shortcut-tip{color:#ffffff6b;border-top:1px solid #ffffff14;margin-top:32px;padding-top:20px;font-size:15px}.light .shortcut-backdrop{background:#ffffff2e}.light .shortcut-modal{color:#111827;background:#ffffffb8;border:1px solid #00000014;box-shadow:0 24px 70px #0000002e,inset 0 1px #fff6}.light .shortcut-row p,.light .shortcut-tip{color:#111827b8}.light .shortcut-key{color:#111827;background:#0000000a;border:1px solid #00000014}.light .shortcut-close{color:#00000073}.light .shortcut-close:hover{color:#111827;background:#0000000f}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalUp{0%{opacity:0;transform:translateY(10px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}#jupyter{border-radius:var(--radius-xl);--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);--tw-drop-shadow-size:drop-shadow(0 25px 25px var(--tw-drop-shadow-color,#00000026));--tw-drop-shadow:drop-shadow(var(--drop-shadow-2xl));filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);background:var(--jupyter-bg);width:min(600px,100vw - 32px);height:min(670px,100vh - 90px);color:var(--jupyter-text);border:1px solid var(--jupyter-border);-webkit-backdrop-filter:blur(24px)saturate(180%);position:absolute;top:clamp(48px,7vh,90px);left:clamp(16px,8vw,130px);overflow:hidden}#jupyter #window-header{background:var(--jupyter-bg);border-bottom:1px solid var(--jupyter-border);cursor:grab;position:relative}#jupyter #window-header:active{cursor:grabbing}#jupyter #window-header h2{text-align:center;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold);color:var(--jupyter-text);position:absolute;left:50%;transform:translate(-50%)}.jupyter-body{background:var(--jupyter-bg);height:calc(100% - 48px);color:var(--jupyter-text);padding:24px 32px;overflow-y:auto}.notebook-title{margin-bottom:28px}.notebook-title h1{color:var(--jupyter-text);letter-spacing:-.03em;margin-bottom:10px;font-size:30px;font-weight:800}.notebook-title p{color:var(--jupyter-muted);max-width:720px;font-size:17px;line-height:1.55}.notebook-description{color:var(--jupyter-muted);max-width:760px;margin-top:18px;font-size:15px;line-height:1.8}.notebook-cell{margin-bottom:18px}.cell-top{justify-content:space-between;align-items:center;height:36px;padding:0 12px;display:flex}.cell-top span{color:#f59e0b;font-family:Roboto Mono,monospace;font-size:14px;font-weight:700}.cell-top button{color:#fbbf24;cursor:pointer;background:#f59e0b1f;border:1px solid #f59e0b33;border-radius:999px;padding:5px 12px;font-size:12px;font-weight:700;transition:all .2s}.cell-top button:hover{background:#f59e0b2e;transform:translateY(-1px)}.notebook-cell pre{background:var(--jupyter-code);color:var(--jupyter-text);white-space:pre-wrap;border-left:4px solid #d97706;border-radius:14px;padding:18px 20px;font-family:Roboto Mono,monospace;font-size:15px;line-height:1.65;overflow-x:auto}.cell-output{background:var(--jupyter-output);border:1px solid var(--jupyter-border);color:var(--jupyter-text);border-radius:16px;margin-top:12px;padding:18px 20px}.output-note{color:var(--jupyter-muted);margin-bottom:14px;font-size:14px;font-weight:600}.cell-output table{border-collapse:collapse;width:100%;font-size:13px}.cell-output th,.cell-output td{text-align:left;border-bottom:1px solid var(--jupyter-border);padding:12px 10px}.cell-output th{color:#f59e0b;font-weight:700}.stats-grid{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.stats-grid div{background:var(--jupyter-panel);border:1px solid var(--jupyter-border);border-radius:16px;padding:16px}.stats-grid span{color:var(--jupyter-muted);margin-bottom:8px;font-size:12px;display:block}.stats-grid strong{color:var(--jupyter-text);font-size:21px;font-weight:800}.metric-switcher{flex-wrap:wrap;gap:12px;margin-bottom:18px;display:flex}.metric-switcher button{color:#38bdf8;text-transform:capitalize;cursor:pointer;background:#3b82f624;border:none;border-radius:999px;padding:8px 16px;font-size:13px;font-weight:700;transition:all .2s}.metric-switcher button:hover{transform:translateY(-1px)}.metric-switcher button.active{color:#22c55e;background:#22c55e2e}.chart-box{height:260px;margin-top:10px}.insight{color:var(--jupyter-text);margin-bottom:14px;font-size:15px;line-height:1.8}.jupyter-body::-webkit-scrollbar{width:8px}.jupyter-body::-webkit-scrollbar-thumb{background:#ffffff1f;border-radius:999px}.light .jupyter-body::-webkit-scrollbar-thumb{background:#00000024}.dark #finder{background:#242426e0}.dark #finder .content{background:#ffffff08}.dark #finder .finder-body{background:0 0}#finder{border-radius:var(--radius-xl);--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);--tw-drop-shadow-size:drop-shadow(0 25px 25px var(--tw-drop-shadow-color,#00000026));--tw-drop-shadow:drop-shadow(var(--drop-shadow-2xl));filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);color:var(--window-text);border:1px solid var(--window-border);-webkit-backdrop-filter:blur(24px)saturate(180%);background:#fffffff5;width:min(768px,100vw - 32px);position:absolute;top:clamp(48px,8vh,96px);left:clamp(16px,10vw,160px);overflow:hidden}#finder .finder-body{color:var(--window-text);background:0 0}#finder .sidebar{width:calc(var(--spacing) * 48);flex-direction:column;display:flex}:where(#finder .sidebar>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}#finder .sidebar{padding:calc(var(--spacing) * 5);background:var(--window-header-bg);border-right:1px solid var(--window-border)}#finder .sidebar h3{margin-bottom:calc(var(--spacing) * 1);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:var(--window-muted)}:where(#finder .sidebar ul>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 1) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1) * calc(1 - var(--tw-space-y-reverse)))}#finder .sidebar ul .active{color:#60a5fa;background:#3b82f638}#finder .sidebar ul .not-active{color:var(--window-text)}#finder .sidebar ul .not-active:hover{background:#ffffff1a}#finder .sidebar ul li{cursor:pointer;align-items:center;gap:calc(var(--spacing) * 2);border-radius:var(--radius-md);padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 2);transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));display:flex}#finder .content{max-width:var(--container-2xl);padding:calc(var(--spacing) * 8);color:var(--window-text);background:#ffffff2e;flex:1;position:relative}#finder .content li{align-items:center;gap:calc(var(--spacing) * 3);flex-direction:column;display:flex;position:absolute}#finder .content li img{width:calc(var(--spacing) * 16);height:calc(var(--spacing) * 16);object-fit:contain;object-position:center;position:relative}@media(hover:hover){#finder .content li img:is(:where(.group):hover *){--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x) var(--tw-scale-y)}}#finder .content li img{filter:drop-shadow(0 4px 10px #00000026)}#finder .content li p{width:calc(var(--spacing) * 40);text-align:center;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:var(--window-text)}#txtfile{border-radius:var(--radius-xl);--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);--tw-drop-shadow-size:drop-shadow(0 25px 25px var(--tw-drop-shadow-color,#00000026));--tw-drop-shadow:drop-shadow(var(--drop-shadow-2xl));filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);background:var(--window-bg);color:var(--window-text);border:1px solid var(--window-border);-webkit-backdrop-filter:blur(24px)saturate(180%);width:min(448px,100vw - 32px);position:absolute;top:clamp(64px,14vh,144px);right:clamp(16px,8vw,128px);overflow:hidden}#txtfile h2{text-align:center;width:100%;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold);color:var(--window-text)}.text-scroll{scrollbar-width:auto;scrollbar-color:#9ca3af transparent}.text-scroll::-webkit-scrollbar{width:10px}.text-scroll::-webkit-scrollbar-track{background:0 0}.text-scroll::-webkit-scrollbar-thumb{background:#9ca3af;border-radius:999px}.text-scroll::-webkit-scrollbar-thumb:hover{background:#6b7280}#resume{border-radius:var(--radius-xl);--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);--tw-drop-shadow-size:drop-shadow(0 25px 25px var(--tw-drop-shadow-color,#00000026));--tw-drop-shadow:drop-shadow(var(--drop-shadow-2xl));filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);background:var(--window-bg);color:var(--window-text);border:1px solid var(--window-border);-webkit-backdrop-filter:blur(24px)saturate(180%);width:fit-content;height:fit-content;position:absolute;top:clamp(48px,8vh,64px);left:clamp(16px,55vw,720px);overflow:hidden}#resume #window-header h2{text-align:center;width:100%;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold);color:var(--window-text)}#resume #window-header p{color:var(--window-muted)}#imgfile{border-radius:var(--radius-xl);--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);--tw-drop-shadow-size:drop-shadow(0 25px 25px var(--tw-drop-shadow-color,#00000026));--tw-drop-shadow:drop-shadow(var(--drop-shadow-2xl));filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);background:var(--window-bg);color:var(--window-text);border:1px solid var(--window-border);-webkit-backdrop-filter:blur(24px)saturate(180%);width:min(560px,100vw - 32px);position:absolute;top:clamp(72px,12vh,160px);left:clamp(16px,8vw,180px);overflow:hidden}#imgfile #window-header h2{text-align:center;width:100%;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold);color:var(--window-text)}#imgfile #window-header p{color:var(--window-muted)}#imgfile .preview{padding:calc(var(--spacing) * 3);background:#f3f4f6;justify-content:center;align-items:center;max-height:min(70vh,620px);display:flex}#imgfile .preview img{border-radius:var(--radius-md);object-fit:contain;object-position:center;width:100%;max-height:calc(70vh - 32px)}#textEditor{border-radius:var(--radius-xl);--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);--tw-drop-shadow-size:drop-shadow(0 25px 25px var(--tw-drop-shadow-color,#00000026));--tw-drop-shadow:drop-shadow(var(--drop-shadow-2xl));filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);background:var(--window-bg);color:var(--window-text);border:1px solid var(--window-border);-webkit-backdrop-filter:blur(24px)saturate(180%);width:min(480px,100vw - 32px);height:min(500px,100vh - 110px);position:absolute;top:clamp(60px,9vh,100px);right:clamp(16px,6vw,100px);overflow:hidden}#textEditor #window-header{position:relative}#textEditor #window-header h2{text-align:center;width:100%;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold);color:var(--window-text);position:absolute;left:50%;transform:translate(-50%)}.text-editor-content{flex-direction:column;width:100%;height:100%;display:flex;overflow:hidden}.text-editor-toolbar{color:#8a867e;background:#f2efe8;border-bottom:1px solid #0000001a;align-items:center;gap:14px;height:34px;padding:0 16px;font-size:11px;display:flex}.text-editor-toolbar .sep{background:#00000024;width:1px;height:14px}.text-editor-toolbar .pill{color:#6b6760;background:#e2dfd8;border-radius:999px;padding:2px 8px;font-family:Roboto Mono,monospace;font-size:10px}.text-editor-page{background:repeating-linear-gradient(#0000,#0000 27px,#00000009 27px 28px),#faf8f4;flex:1;min-height:0;padding:36px 42px 44px;position:relative;overflow-y:auto}.text-editor-page:before{content:"";background:#788cb433;width:1px;position:absolute;top:0;bottom:0;left:56px}.text-editor-text{color:#2c2a26;z-index:1;padding-left:18px;font-family:Roboto Mono,monospace;font-size:13.5px;line-height:28px;position:relative}.text-editor-text .meta{color:#9a958d;margin-bottom:24px;font-size:11.5px;line-height:20px}.profile-block{align-items:center;gap:18px;margin-bottom:28px;display:flex}.profile-block img{object-fit:cover;border:1px solid #00000014;border-radius:14px;width:92px;height:92px;box-shadow:0 4px 14px #00000014}.profile-info h3{color:#2c2a26;margin-bottom:4px;font-family:SF-Pro-Display,sans-serif;font-size:20px;font-weight:600}.profile-info p{color:#8a867e;letter-spacing:.02em;font-size:13px}.text-editor-text span{color:#3b82f6}.text-editor-text .section-head{color:#6b6760;letter-spacing:.12em;text-transform:uppercase;margin:28px 0 4px;font-size:11px;font-style:italic}.text-editor-text .divider{color:#c9c4bc;letter-spacing:.05em;margin:6px 0 10px;font-size:12px}.text-editor-text .body{color:#3a3730}.text-editor-text .tags small{color:#6b6760;background:#0000000d;border:1px solid #00000014;border-radius:4px;margin:1px 2px;padding:1px 7px;font-size:11px;display:inline-block}.text-editor-text .eof{color:#9b9690}.text-editor-text .cursor{opacity:.7;vertical-align:-2px;background:#3b82f6;width:7px;height:14px;animation:1.1s step-end infinite blink;display:inline-block}.text-editor-statusbar{color:#9b9690;background:#eae7e0;border-top:1px solid #0000001a;align-items:center;gap:14px;height:24px;padding:0 14px;font-size:10.5px;display:flex}@keyframes blink{0%,to{opacity:.7}50%{opacity:0}}#home{z-index:0;position:relative}#home ul li{-webkit-user-select:none;user-select:none;flex-direction:column;align-items:center;display:flex;position:absolute}#home ul img{border-radius:var(--radius-md);padding:calc(var(--spacing) * 1)}@media(hover:hover){#home ul img:is(:where(.group):hover *){background-color:#0307121a}@supports (color:color-mix(in lab,red,red)){#home ul img:is(:where(.group):hover *){background-color:color-mix(in oklab,var(--color-gray-950) 10%,transparent)}}}#home ul p{max-width:calc(var(--spacing) * 40);border-radius:var(--radius-md);padding-inline:calc(var(--spacing) * 2);padding-block:calc(var(--spacing) * .5);text-align:center;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold);color:var(--color-white);transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;background-color:#0000;transition-duration:.15s}@media(hover:hover){#home ul p:is(:where(.group):hover *){color:var(--color-white);background-color:#0a84ff}}}@layer utilities{.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.inset-0{inset:calc(var(--spacing) * 0)}.top-5{top:calc(var(--spacing) * 5)}.top-8{top:calc(var(--spacing) * 8)}.top-10{top:calc(var(--spacing) * 10)}.top-20{top:calc(var(--spacing) * 20)}.top-28{top:calc(var(--spacing) * 28)}.top-40{top:calc(var(--spacing) * 40)}.top-52{top:calc(var(--spacing) * 52)}.top-54{top:calc(var(--spacing) * 54)}.top-\[5vh\]{top:5vh}.top-\[17vh\]{top:17vh}.top-\[29vh\]{top:29vh}.right-20{right:calc(var(--spacing) * 20)}.right-72{right:calc(var(--spacing) * 72)}.right-80{right:calc(var(--spacing) * 80)}.left-1\/2{left:50%}.left-5{left:calc(var(--spacing) * 5)}.left-7{left:calc(var(--spacing) * 7)}.left-10{left:calc(var(--spacing) * 10)}.left-20{left:calc(var(--spacing) * 20)}.left-80{left:calc(var(--spacing) * 80)}.left-\[20vw\]{left:20vw}.left-\[22vw\]{left:22vw}.z-\[99999\]{z-index:99999}.z-\[99999999999999999\]{z-index:2147483647}.col-span-2{grid-column:span 2/span 2}.mx-auto{margin-inline:auto}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-5{margin-top:calc(var(--spacing) * 5)}.mt-10{margin-top:calc(var(--spacing) * 10)}.mt-auto{margin-top:auto}.mr-\[-8px\]{margin-right:-8px}.mb-1{margin-bottom:calc(var(--spacing) * 1)}.mb-\[0vh\]{margin-bottom:0}.ml-5{margin-left:calc(var(--spacing) * 5)}.ml-10{margin-left:calc(var(--spacing) * 10)}.ml-\[-8px\]{margin-left:-8px}.flex-center{justify-content:center;align-items:center;display:flex}.block{display:block}.flex{display:flex}.hidden{display:none}.h-6{height:calc(var(--spacing) * 6)}.h-12{height:calc(var(--spacing) * 12)}.h-40{height:calc(var(--spacing) * 40)}.h-\[4px\]{height:4px}.h-\[16px\]{height:16px}.h-\[50px\]{height:50px}.h-\[500px\]{height:500px}.h-full{height:100%}.max-h-96{max-height:calc(var(--spacing) * 96)}.max-h-\[280px\]{max-height:280px}.max-h-\[400px\]{max-height:400px}.min-h-0{min-height:calc(var(--spacing) * 0)}.w-4{width:calc(var(--spacing) * 4)}.w-44{width:calc(var(--spacing) * 44)}.w-80{width:calc(var(--spacing) * 80)}.w-\[16px\]{width:16px}.w-\[50px\]{width:50px}.w-full{width:100%}.max-w-2xl{max-width:var(--container-2xl)}.max-w-\[280px\]{max-width:280px}.max-w-full{max-width:100%}.flex-1{flex:1}.shrink-0{flex-shrink:0}.-translate-x-1\/2{--tw-translate-x: -50% ;translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-3{--tw-translate-y:calc(var(--spacing) * -3);translate:var(--tw-translate-x) var(--tw-translate-y)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.cursor-pointer{cursor:pointer}.flex-col{flex-direction:column}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-1{gap:calc(var(--spacing) * 1)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-5{gap:calc(var(--spacing) * 5)}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-6>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 6) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 6) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-8>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 8) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 8) * calc(1 - var(--tw-space-y-reverse)))}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.overflow-y-scroll{overflow-y:scroll}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-3xl{border-radius:var(--radius-3xl)}.rounded-full{border-radius:3.40282e38px}.rounded-md{border-radius:var(--radius-md)}.rounded-xl{border-radius:var(--radius-xl)}.glass{border-style:var(--tw-border-style);border-width:1px;border-color:#ffffff26}@supports (color:color-mix(in lab,red,red)){.glass{border-color:color-mix(in oklab,var(--color-white) 15%,transparent)}}.glass{background-color:#ffffff1a}@supports (color:color-mix(in lab,red,red)){.glass{background-color:color-mix(in oklab,var(--color-white) 10%,transparent)}}.glass{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a), 0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);-webkit-backdrop-filter:blur(24px)saturate(180%)}.border{border-style:var(--tw-border-style);border-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-white\/10{border-color:#ffffff1a}@supports (color:color-mix(in lab,red,red)){.border-white\/10{border-color:color-mix(in oklab,var(--color-white) 10%,transparent)}}.bg-black{background-color:var(--color-black)}.bg-black\/20{background-color:#0003}@supports (color:color-mix(in lab,red,red)){.bg-black\/20{background-color:color-mix(in oklab,var(--color-black) 20%,transparent)}}.bg-gray-100{background-color:var(--color-gray-100)}.bg-transparent{background-color:#0000}.bg-white{background-color:var(--color-white)}.bg-white\/10{background-color:#ffffff1a}@supports (color:color-mix(in lab,red,red)){.bg-white\/10{background-color:color-mix(in oklab,var(--color-white) 10%,transparent)}}.bg-white\/15{background-color:#ffffff26}@supports (color:color-mix(in lab,red,red)){.bg-white\/15{background-color:color-mix(in oklab,var(--color-white) 15%,transparent)}}.bg-white\/20{background-color:#fff3}@supports (color:color-mix(in lab,red,red)){.bg-white\/20{background-color:color-mix(in oklab,var(--color-white) 20%,transparent)}}.bg-cover{background-size:cover}.bg-center{background-position:50%}.object-contain{object-fit:contain}.object-cover{object-fit:cover}.p-2{padding:calc(var(--spacing) * 2)}.p-5{padding:calc(var(--spacing) * 5)}.p-6{padding:calc(var(--spacing) * 6)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-5{padding-inline:calc(var(--spacing) * 5)}.py-1{padding-block:calc(var(--spacing) * 1)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.pt-40{padding-top:calc(var(--spacing) * 40)}.pt-\[45vh\]{padding-top:45vh}.pb-10{padding-bottom:calc(var(--spacing) * 10)}.text-center{text-align:center}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.whitespace-nowrap{white-space:nowrap}.text-\[color\:var\(--text-color\)\]{color:var(--text-color)}.text-\[var\(--window-text\)\]{color:var(--window-text)}.text-black{color:var(--color-black)}.text-white{color:var(--color-white)}.text-white\/40{color:#fff6}@supports (color:color-mix(in lab,red,red)){.text-white\/40{color:color-mix(in oklab,var(--color-white) 40%,transparent)}}.text-white\/50{color:#ffffff80}@supports (color:color-mix(in lab,red,red)){.text-white\/50{color:color-mix(in oklab,var(--color-white) 50%,transparent)}}.text-white\/60{color:#fff9}@supports (color:color-mix(in lab,red,red)){.text-white\/60{color:color-mix(in oklab,var(--color-white) 60%,transparent)}}.text-white\/85{color:#ffffffd9}@supports (color:color-mix(in lab,red,red)){.text-white\/85{color:color-mix(in oklab,var(--color-white) 85%,transparent)}}.opacity-60{opacity:.6}.opacity-95{opacity:.95}.shadow-2xl{--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a), 0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-blur-3xl{--tw-backdrop-blur:blur(var(--blur-3xl));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.backdrop-blur-md{--tw-backdrop-blur:blur(var(--blur-md));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}@media(hover:hover){.group-hover\:block:is(:where(.group):hover *){display:block}}.placeholder\:text-white\/40::placeholder{color:#fff6}@supports (color:color-mix(in lab,red,red)){.placeholder\:text-white\/40::placeholder{color:color-mix(in oklab,var(--color-white) 40%,transparent)}}@media(hover:hover){.hover\:scale-105:hover{--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x) var(--tw-scale-y)}.hover\:bg-white\/10:hover{background-color:#ffffff1a}@supports (color:color-mix(in lab,red,red)){.hover\:bg-white\/10:hover{background-color:color-mix(in oklab,var(--color-white) 10%,transparent)}}}}html,body{width:100dvw;height:100dvh;color:var(--text-color);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:color .5s;overflow:hidden}body{background-position:50%;background-repeat:no-repeat;background-size:cover;transition:background-image .6s ease-in-out}:root{--text-color:#000000d9;--icon-filter:none}.light{--text-color:#000000d9;--icon-filter:none;--tooltip-bg:#bebec6e0;--tooltip-text:#000000e0;--tooltip-arrow:#b9b9c0f5;--window-bg:#ffffffeb;--window-header-bg:#f9fafb;--window-border:#e5e7eb;--window-text:#111827;--window-muted:#9ca3af;--terminal-green:#00a154;--jupyter-bg:#f8fafc;--jupyter-panel:#fff;--jupyter-code:#f3f4f6;--jupyter-output:#fff;--jupyter-text:#111827;--jupyter-muted:#6b7280;--jupyter-border:#e5e7eb}.dark{--text-color:#ffffffd9;--icon-filter:invert(1);--tooltip-bg:#3c3c4194;--tooltip-text:#ffffffd1;--tooltip-arrow:#3c3c41c7;--window-bg:#1c1c1eb8;--window-header-bg:#2c2c2eb8;--window-border:#ffffff1f;--window-text:#ffffffe0;--window-muted:#ffffff73;--terminal-green:#34d399;--jupyter-bg:#252b36;--jupyter-panel:#202632;--jupyter-code:#1b2029;--jupyter-output:#202632;--jupyter-text:#f3f4f6;--jupyter-muted:#ffffff85;--jupyter-border:#ffffff1f}.welcome-date{letter-spacing:-.02em;color:#ffffffe0;text-shadow:0 2px 12px #00000038;font-family:Big-Caslon,sans-serif;font-size:22px;font-weight:500}.welcome-time{letter-spacing:-.06em;color:#fffffff5;text-shadow:0 4px 28px #00000038;font-family:Big-Caslon;font-size:clamp(72px,10vw,118px);font-weight:600;line-height:.95}.wallpaper-wrapper{z-index:-1;position:fixed;inset:0}.wallpaper{opacity:0;background-position:50%;background-size:cover;transition:opacity .8s ease-in-out;position:absolute;inset:0}.wallpaper.active{opacity:1}body:before{content:"";pointer-events:none;background:radial-gradient(circle at 20% 20%,#ffffff1f,#0000 45%);position:fixed;inset:0}.icon-auto{filter:var(--icon-filter);transition:filter .5s}.clock{padding-inline:calc(var(--spacing) * 2);padding-block:calc(var(--spacing) * 1);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));white-space:nowrap;text-align:center;font-variant-numeric:tabular-nums;min-width:max-content}.animate-spotlight{animation:.2s spotlightFade}@keyframes spotlightFade{0%{opacity:0;transform:translateY(-10px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@media(max-width:1100px){nav{padding-inline:calc(var(--spacing) * 3)}nav>div:first-child{gap:calc(var(--spacing) * 2)}nav ul{gap:calc(var(--spacing) * 3)}nav ul p,.clock{font-size:13px}}@media(max-width:900px){nav>div:first-child>ul{display:none}nav>div:first-child{max-width:45vw}nav>div:first-child p{text-overflow:ellipsis;overflow:hidden}.clock{padding-inline:4px;font-size:12px}}@media(max-width:640px){nav{height:32px}nav>div:last-child{display:none}nav>div:first-child{justify-content:center;width:100%;max-width:none}#dock{--tw-translate-x: -50% ;translate:var(--tw-translate-x) var(--tw-translate-y);width:fit-content;display:block;position:fixed;bottom:12px;left:50%}#dock .dock-container{border-radius:18px;justify-content:flex-start;gap:6px;width:fit-content;margin:0 auto;padding:5px 8px;overflow:visible}#dock .dock-icon{width:44px;height:44px}#welcome .small-screen{display:block}.command-bar{display:none}}.light{--window-bg:#f8f8fafb;--window-header-bg:#f5f5f7fa;--window-border:#00000014;--window-text:#111827;--window-muted:#8b8f98}.dark{--window-bg:#202022f5;--window-header-bg:#2a2a2dfa;--window-border:#ffffff1a;--window-text:#ffffffe6;--window-muted:#ffffff8c}#finder,#safari,#contact,#txtfile,#resume,#imgfile,#textEditor,#jupyter{background:var(--window-bg)!important;color:var(--window-text)!important;border:1px solid var(--window-border)!important;-webkit-backdrop-filter:none!important;box-shadow:0 24px 70px #0000002e,0 8px 24px #00000014!important}#window-header,#finder #window-header,#safari #window-header,#contact #window-header,#txtfile #window-header,#resume #window-header,#imgfile #window-header,#textEditor #window-header,#jupyter #window-header{background:var(--window-header-bg)!important;border-bottom:1px solid var(--window-border)!important;color:var(--window-muted)!important;-webkit-backdrop-filter:none!important}#finder{background:#f8f8fafc!important}#finder .finder-body{background:0 0!important}#finder .sidebar{background:#f3f4f6!important;border-right:1px solid #00000012!important}#finder .content{color:var(--window-text)!important;background:#fafafa!important}.dark #finder{background:#202022fa!important}.dark #finder .sidebar{background:#2a2a2dfa!important;border-right:1px solid #ffffff14!important}.dark #finder .content{background:#242426fa!important}#textEditor{background:#f7f4ee!important}#textEditor #window-header{background:#f1f1f2!important}#jupyter,#jupyter #window-header{background:var(--jupyter-bg)!important}nav,#dock .dock-container,.command-bar{-webkit-backdrop-filter:blur(24px)saturate(180%)}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}:root{--react-pdf-annotation-layer: 1;--annotation-unfocused-field-background: url("data:image/svg+xml;charset=UTF-8,<svg width='1px' height='1px' xmlns='http://www.w3.org/2000/svg'><rect width='100%' height='100%' style='fill:rgba(0, 54, 255, 0.13);'/></svg>");--input-focus-border-color: Highlight;--input-focus-outline: 1px solid Canvas;--input-unfocused-border-color: transparent;--input-disabled-border-color: transparent;--input-hover-border-color: black;--link-outline: none}@media screen and (forced-colors:active){:root{--input-focus-border-color: CanvasText;--input-unfocused-border-color: ActiveText;--input-disabled-border-color: GrayText;--input-hover-border-color: Highlight;--link-outline: 1.5px solid LinkText}.annotationLayer .textWidgetAnnotation :is(input,textarea):required,.annotationLayer .choiceWidgetAnnotation select:required,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:required{outline:1.5px solid selectedItem}.annotationLayer .linkAnnotation:hover{-webkit-backdrop-filter:invert(100%);backdrop-filter:invert(100%)}}.annotationLayer{position:absolute;top:0;left:0;pointer-events:none;transform-origin:0 0;z-index:3}.annotationLayer[data-main-rotation="90"] .norotate{transform:rotate(270deg) translate(-100%)}.annotationLayer[data-main-rotation="180"] .norotate{transform:rotate(180deg) translate(-100%,-100%)}.annotationLayer[data-main-rotation="270"] .norotate{transform:rotate(90deg) translateY(-100%)}.annotationLayer canvas{position:absolute;width:100%;height:100%}.annotationLayer section{position:absolute;text-align:initial;pointer-events:auto;box-sizing:border-box;margin:0;transform-origin:0 0}.annotationLayer .linkAnnotation{outline:var(--link-outline)}.textLayer.selecting~.annotationLayer section{pointer-events:none}.annotationLayer :is(.linkAnnotation,.buttonWidgetAnnotation.pushButton)>a{position:absolute;font-size:1em;top:0;left:0;width:100%;height:100%}.annotationLayer :is(.linkAnnotation,.buttonWidgetAnnotation.pushButton)>a:hover{opacity:.2;background:#ff0;box-shadow:0 2px 10px #ff0}.annotationLayer .textAnnotation img{position:absolute;cursor:pointer;width:100%;height:100%;top:0;left:0}.annotationLayer .textWidgetAnnotation :is(input,textarea),.annotationLayer .choiceWidgetAnnotation select,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input{background-image:var(--annotation-unfocused-field-background);border:2px solid var(--input-unfocused-border-color);box-sizing:border-box;font:calc(9px * var(--total-scale-factor)) sans-serif;height:100%;margin:0;vertical-align:top;width:100%}.annotationLayer .textWidgetAnnotation :is(input,textarea):required,.annotationLayer .choiceWidgetAnnotation select:required,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:required{outline:1.5px solid red}.annotationLayer .choiceWidgetAnnotation select option{padding:0}.annotationLayer .buttonWidgetAnnotation.radioButton input{border-radius:50%}.annotationLayer .textWidgetAnnotation textarea{resize:none}.annotationLayer .textWidgetAnnotation :is(input,textarea)[disabled],.annotationLayer .choiceWidgetAnnotation select[disabled],.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input[disabled]{background:none;border:2px solid var(--input-disabled-border-color);cursor:not-allowed}.annotationLayer .textWidgetAnnotation :is(input,textarea):hover,.annotationLayer .choiceWidgetAnnotation select:hover,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:hover{border:2px solid var(--input-hover-border-color)}.annotationLayer .textWidgetAnnotation :is(input,textarea):hover,.annotationLayer .choiceWidgetAnnotation select:hover,.annotationLayer .buttonWidgetAnnotation.checkBox input:hover{border-radius:2px}.annotationLayer .textWidgetAnnotation :is(input,textarea):focus,.annotationLayer .choiceWidgetAnnotation select:focus{background:none;border:2px solid var(--input-focus-border-color);border-radius:2px;outline:var(--input-focus-outline)}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) :focus{background-image:none;background-color:transparent}.annotationLayer .buttonWidgetAnnotation.checkBox :focus{border:2px solid var(--input-focus-border-color);border-radius:2px;outline:var(--input-focus-outline)}.annotationLayer .buttonWidgetAnnotation.radioButton :focus{border:2px solid var(--input-focus-border-color);outline:var(--input-focus-outline)}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before,.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after,.annotationLayer .buttonWidgetAnnotation.radioButton input:checked:before{background-color:CanvasText;content:"";display:block;position:absolute}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before,.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after{height:80%;left:45%;width:1px}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before{transform:rotate(45deg)}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after{transform:rotate(-45deg)}.annotationLayer .buttonWidgetAnnotation.radioButton input:checked:before{border-radius:50%;height:50%;left:30%;top:20%;width:50%}.annotationLayer .textWidgetAnnotation input.comb{font-family:monospace;padding-left:2px;padding-right:0}.annotationLayer .textWidgetAnnotation input.comb:focus{width:103%}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input{appearance:none}.annotationLayer .popupTriggerArea{height:100%;width:100%}.annotationLayer .fileAttachmentAnnotation .popupTriggerArea{position:absolute}.annotationLayer .popupWrapper{position:absolute;font-size:calc(9px * var(--total-scale-factor));width:100%;min-width:calc(180px * var(--total-scale-factor));pointer-events:none}.annotationLayer .popup{position:absolute;max-width:calc(180px * var(--total-scale-factor));background-color:#ff9;box-shadow:0 calc(2px * var(--total-scale-factor)) calc(5px * var(--total-scale-factor)) #888;border-radius:calc(2px * var(--total-scale-factor));padding:calc(6px * var(--total-scale-factor));margin-left:calc(5px * var(--total-scale-factor));cursor:pointer;font:message-box;white-space:normal;word-wrap:break-word;pointer-events:auto}.annotationLayer .popup>*{font-size:calc(9px * var(--total-scale-factor))}.annotationLayer .popup h1{display:inline-block}.annotationLayer .popupDate{display:inline-block;margin-left:calc(5px * var(--total-scale-factor))}.annotationLayer .popupContent{border-top:1px solid rgba(51,51,51,1);margin-top:calc(2px * var(--total-scale-factor));padding-top:calc(2px * var(--total-scale-factor))}.annotationLayer .richText>*{white-space:pre-wrap;font-size:calc(9px * var(--total-scale-factor))}.annotationLayer .highlightAnnotation,.annotationLayer .underlineAnnotation,.annotationLayer .squigglyAnnotation,.annotationLayer .strikeoutAnnotation,.annotationLayer .freeTextAnnotation,.annotationLayer .lineAnnotation svg line,.annotationLayer .squareAnnotation svg rect,.annotationLayer .circleAnnotation svg ellipse,.annotationLayer .polylineAnnotation svg polyline,.annotationLayer .polygonAnnotation svg polygon,.annotationLayer .caretAnnotation,.annotationLayer .inkAnnotation svg polyline,.annotationLayer .stampAnnotation,.annotationLayer .fileAttachmentAnnotation{cursor:pointer}.annotationLayer section svg{position:absolute;width:100%;height:100%;top:0;left:0}.annotationLayer .annotationTextContent{position:absolute;width:100%;height:100%;opacity:0;color:transparent;-webkit-user-select:none;user-select:none;pointer-events:none}.annotationLayer .annotationTextContent span{width:100%;display:inline-block}:root{--react-pdf-text-layer: 1;--highlight-bg-color: rgba(180, 0, 170, 1);--highlight-selected-bg-color: rgba(0, 100, 0, 1)}@media screen and (forced-colors:active){:root{--highlight-bg-color: Highlight;--highlight-selected-bg-color: ButtonText}}[data-main-rotation="90"]{transform:rotate(90deg) translateY(-100%)}[data-main-rotation="180"]{transform:rotate(180deg) translate(-100%,-100%)}[data-main-rotation="270"]{transform:rotate(270deg) translate(-100%)}.textLayer{position:absolute;text-align:initial;inset:0;overflow:hidden;line-height:1;text-size-adjust:none;forced-color-adjust:none;transform-origin:0 0;z-index:2}.textLayer :is(span,br){color:transparent;position:absolute;white-space:pre;cursor:text;margin:0;transform-origin:0 0}.textLayer span.markedContent{top:0;height:0}.textLayer .highlight{margin:-1px;padding:1px;background-color:var(--highlight-bg-color);border-radius:4px}.textLayer .highlight.appended{position:initial}.textLayer .highlight.begin{border-radius:4px 0 0 4px}.textLayer .highlight.end{border-radius:0 4px 4px 0}.textLayer .highlight.middle{border-radius:0}.textLayer .highlight.selected{background-color:var(--highlight-selected-bg-color)}.textLayer br::selection{background:transparent}.textLayer .endOfContent{display:block;position:absolute;inset:100% 0 0;z-index:-1;cursor:default;-webkit-user-select:none;user-select:none}.textLayer.selecting .endOfContent{top:0}.hiddenCanvasElement{position:absolute;top:0;left:0;width:0;height:0;display:none}
