:root{--color-white: #ffffff;--color-black: #000000;--color-paper: #fdfdf6;--color-paper-lines: #e6e6e6;--color-ink-primary: #2c2c2c;--color-ink-secondary: #555555;--color-highlight: #fffaaa;--color-success: #4CAF50;--color-success-hover: #45a049;--color-error: #d32f2f;--color-error-hover: #a3372f;--color-gray-100: #f8f9fa;--color-gray-200: #f0f0f0;--color-gray-300: #e0e0e0;--color-gray-400: #dddddd;--color-gray-800: #1a1a1a;--color-glass-bg: rgba(255, 255, 255, .25);--color-glass-bg-dark: rgba(26, 26, 26, .7);--color-glass-border: rgba(255, 255, 255, .45);--color-glass-border-dark: rgba(255, 255, 255, .15);--color-glass-shadow: rgba(0, 0, 0, .12);--glass-blur-amount: 5px;--glass-saturation: 200%;--border-width: 2px;--border-radius-imperfect: 5px;--font-family-hand: "Barlow Condensed", sans-serif;--font-family-sans: "Barlow Condensed", sans-serif;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--spacing-2xl: 48px}::-webkit-scrollbar{width:12px;height:12px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#00000026;border-radius:10px;border:3px solid transparent;background-clip:content-box}::-webkit-scrollbar-thumb:hover{background:#0000004d;border:3px solid transparent;background-clip:content-box}::-webkit-scrollbar-corner{background:transparent}body{background-color:var(--color-paper);background-image:linear-gradient(var(--color-paper-lines) 1px,transparent 1px),linear-gradient(90deg,var(--color-paper-lines) 1px,transparent 1px);background-size:20px 20px;color:var(--color-ink-primary);font-family:var(--font-family-hand);margin:0;height:100vh;overflow:hidden}.doodle-box{border:1px solid var(--color-glass-shadow);border-radius:var(--border-radius-imperfect);padding:var(--spacing-md);background:#fff;box-shadow:2px 3px #0000001a;transition:transform .1s ease}.doodle-btn{cursor:pointer;background:var(--color-highlight);font-weight:700}.doodle-btn:active{transform:scale(.98)}@keyframes flash-re-render{0%{box-shadow:0 0 10px 2px #ff4500}50%{box-shadow:0 0 10px 4px #f0f}to{box-shadow:0 0 0 0 transparent}}.re-render-highlight{animation:flash-re-render .5s ease-out}:root{--breakpoint-phone: 768px;--breakpoint-tablet: 1024px;--taskbar-height: 48px;--taskbar-height-mobile: 56px;--grid-size-mobile: 60px;--icon-size-mobile: 40px;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 10px;--spacing-lg: 12px;--spacing-xl: 16px;--spacing-2xl: 20px}@media (max-width: 767px){.hide-on-phone{display:none!important}}@media (min-width: 1024px){.hide-on-desktop{display:none!important}}@media (max-width: 1023px){.hide-on-mobile{display:none!important}}.cookie-consent{position:fixed;bottom:-100%;right:20px;max-width:360px;background:var(--color-glass-bg-dark);backdrop-filter:blur(var(--glass-blur-amount)) saturate(var(--glass-saturation));-webkit-backdrop-filter:blur(var(--glass-blur-amount)) saturate(var(--glass-saturation));border:1px solid var(--color-glass-border-dark);border-radius:12px;box-shadow:0 8px 32px var(--color-glass-shadow);z-index:10000;transition:bottom .3s cubic-bezier(.4,0,.2,1)}.cookie-consent--visible{bottom:20px}.cookie-consent__content{padding:20px}.cookie-consent__text{margin:0 0 16px;font-size:14px;line-height:1.5;color:var(--color-white);opacity:.9;font-family:var(--font-family-sans)}.cookie-consent__buttons{display:flex;gap:8px}.cookie-consent__button{flex:1;padding:10px 16px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;font-family:var(--font-family-sans)}.cookie-consent__button--accept{background:var(--color-success);color:var(--color-white)}.cookie-consent__button--accept:hover{background:var(--color-success-hover);transform:translateY(-1px);box-shadow:0 4px 12px var(--color-glass-shadow)}.cookie-consent__button--decline{background:var(--color-glass-border-dark);color:var(--color-white);opacity:.9;border:1px solid var(--color-glass-border-dark)}.cookie-consent__button--decline:hover{background:var(--color-glass-border);transform:translateY(-1px)}.cookie-consent__button:active{transform:translateY(0)}@media (max-width: 768px){.cookie-consent{left:10px;right:10px;bottom:-100%;max-width:none;border-radius:12px 12px 0 0}.cookie-consent--visible{bottom:0}.cookie-consent__content{padding:16px}.cookie-consent__text{font-size:13px;margin-bottom:12px}.cookie-consent__buttons{flex-direction:column}.cookie-consent__button{width:100%}}.window-content{padding:0}.projects,.education,.experience,.stack,.contacts,.email-form{padding:var(--spacing-md);max-height:100%}.project-card,.edu-card,.exp-card{background:var(--color-paper);border:1px solid var(--color-glass-shadow);border-radius:8px;padding:var(--spacing-md);margin-bottom:var(--spacing-md);transition:transform .2s,box-shadow .2s}.project-card:hover,.edu-card:hover,.exp-card:hover{transform:translateY(-2px);box-shadow:4px 4px 0 var(--color-glass-shadow)}.project-card h3,.edu-card h3,.exp-card h3{margin:0 0 8px;font-size:1.1rem;color:var(--color-ink-primary)}.project-card p,.edu-card p,.exp-card p{margin:4px 0;color:var(--color-ink-secondary);line-height:1.5}.exp-card .company{font-weight:700;color:var(--color-ink-primary)}.exp-card .period{font-size:.9rem;color:var(--color-ink-secondary);font-style:italic}.tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.tag{background:var(--color-highlight);border:1px solid var(--color-glass-shadow);padding:2px 8px;border-radius:12px;font-size:.85rem}.stack{display:flex;flex-direction:column;gap:var(--spacing-lg)}.stack-category{animation:fadeIn .5s ease-in}.stack-category h3{margin:0 0 var(--spacing-md) 0;font-size:1rem;color:var(--color-ink-primary);border-bottom:1px solid var(--color-glass-shadow);padding-bottom:4px}.stack-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:var(--spacing-sm)}.stack-item{display:flex;flex-direction:column;align-items:center;gap:8px;padding:12px;border:1px solid var(--color-glass-shadow);border-radius:8px;background:var(--color-paper);transition:transform .2s ease,box-shadow .2s ease;opacity:0;animation:fadeInUp .4s ease forwards}.stack-item:hover{transform:translateY(-4px);box-shadow:4px 4px 0 var(--color-ink-primary)}.stack-icon{font-size:40px;line-height:1;display:flex;align-items:center;justify-content:center;width:48px;height:48px}.stack-icon svg{width:100%;height:100%}.stack-item span{font-size:.85rem;text-align:center;color:var(--color-ink-primary)}.contacts{display:flex;flex-direction:column;gap:var(--spacing-sm)}.contact-item{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-sm);border:1px solid var(--color-glass-shadow);border-radius:8px;transition:all .2s ease;text-decoration:none;color:var(--color-ink-primary)}.contact-item:hover{background:var(--color-highlight);border-color:var(--color-glass-shadow);transform:translate(4px)}.contact-item .icon{font-size:24px}.contact-item .info{flex:1}.contact-item .label{font-weight:700;display:block;margin-bottom:2px}.contact-item .value{font-size:.9rem;color:var(--color-ink-secondary)}.email-form{display:flex;flex-direction:column;gap:var(--spacing-md)}.form-field{display:flex;flex-direction:column;gap:6px}.form-field label{font-weight:700;font-size:.9rem;color:var(--color-ink-primary)}.form-field input,.form-field textarea{padding:8px 12px;border:1px solid var(--color-glass-shadow);border-radius:4px;font-family:var(--font-family-hand);font-size:.9rem;background:var(--color-white);transition:border-color .2s,box-shadow .2s}.form-field input:focus,.form-field textarea:focus{outline:none;border-color:var(--color-glass-shadow);box-shadow:0 0 0 3px var(--color-glass-shadow)}.form-field textarea{min-height:120px;resize:vertical}.form-field.error input,.form-field.error textarea{border-color:var(--color-error)}.form-error{color:var(--color-error);font-size:.85rem;margin-top:4px}.form-actions{display:flex;gap:var(--spacing-sm);justify-content:flex-end}.btn{padding:8px 20px;border:1px solid var(--color-glass-shadow);border-radius:4px;background:var(--color-highlight);font-family:var(--font-family-hand);font-weight:700;font-size:.9rem;cursor:pointer;transition:all .2s}.btn:hover{transform:translateY(-2px);box-shadow:2px 2px 0 var(--color-glass-shadow)}.btn:active{transform:translateY(0);box-shadow:none}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{background:var(--color-white)}.form-success{padding:var(--spacing-md);background:var(--color-success);color:var(--color-white);border-radius:8px;text-align:center;font-weight:700}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.settings-content{padding:16px}.settings-section{margin-bottom:24px}.settings-section-title{font-weight:600;font-size:15px;text-transform:uppercase;letter-spacing:.5px;color:#888;margin-bottom:12px;padding-bottom:6px;border-bottom:1px solid rgba(0,0,0,.06)}.settings-option{display:flex;align-items:center;gap:10px;padding:6px 8px;cursor:pointer;border-radius:6px;transition:background .15s ease}.settings-option:hover{background:#4285f40f}.settings-option input[type=radio]{margin:0;accent-color:#4285F4;cursor:pointer;width:16px;height:16px}.settings-option label{cursor:pointer;-webkit-user-select:none;user-select:none;font-size:15px;line-height:1.4}.os-background-container{position:absolute;top:0;left:0;width:100%;height:100%;z-index:0;pointer-events:none;overflow:hidden}.os-background-canvas{width:100%;height:100%;display:block}.os-taskbar{height:48px;background:var(--color-glass-bg);backdrop-filter:blur(var(--glass-blur-amount)) saturate(var(--glass-saturation));-webkit-backdrop-filter:blur(var(--glass-blur-amount)) saturate(var(--glass-saturation));border-top:1px solid var(--color-glass-border);display:flex;align-items:center;padding:0 var(--spacing-md);gap:var(--spacing-lg);z-index:99999;box-shadow:0 -2px 10px var(--color-glass-shadow)}.os-start-btn{font-weight:700;padding:1.8px var(--spacing-xl);background:#ffffff80;border:1px solid var(--color-glass-border);border-radius:4px;cursor:pointer;display:flex;align-items:center;transition:all .2s ease;box-shadow:0 1px 3px var(--color-glass-shadow)}.os-start-btn:hover{background:#fffc;box-shadow:0 2px 6px var(--color-glass-shadow);transform:translateY(-1px)}.os-start-btn.active{background:var(--color-glass-bg);box-shadow:inset 0 2px 4px var(--color-glass-shadow);transform:translateY(0)}.os-task-list{flex:1;display:flex;gap:var(--spacing-sm);overflow-x:auto}.os-task-item{padding:6px var(--spacing-lg);border:1px solid var(--color-glass-border);border-radius:4px;background:#ffffff80;cursor:pointer;max-width:160px;min-width:100px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;-webkit-user-select:none;user-select:none;font-size:.9rem;transition:all .2s;display:flex;align-items:center}.os-task-item:hover{background:var(--color-gray-200)}.os-task-item.active{background:#ffffffe6;color:var(--color-ink-primary);box-shadow:inset 0 2px 5px var(--color-glass-shadow);border-color:#fffc}.os-system-tray{display:flex;align-items:center;gap:var(--spacing-xl);padding-left:var(--spacing-xl);border-left:2px solid var(--color-gray-400)}.system-icons{display:flex;gap:var(--spacing-lg)}.system-icon{transition:transform .2s ease,filter .2s ease;-webkit-user-select:none;user-select:none}.system-icon:hover{transform:scale(1.15);filter:brightness(1.2)}.os-min-all-btn{width:10px;height:40px;border-left:1px solid var(--color-glass-border);cursor:pointer;margin-left:var(--spacing-md);transition:background .2s ease}.os-min-all-btn:hover{background:linear-gradient(to right,transparent,var(--color-gray-300))}.os-start-menu{position:absolute;bottom:56px;left:8px;width:250px;padding:10px;display:flex;flex-direction:column;gap:5px;z-index:10001;background:#ffffffd9;backdrop-filter:blur(var(--glass-blur-amount)) saturate(var(--glass-saturation));-webkit-backdrop-filter:blur(var(--glass-blur-amount)) saturate(var(--glass-saturation));border:1px solid var(--color-glass-border);border-radius:12px;box-shadow:0 4px 24px var(--color-glass-shadow)}@media (max-width: 1023px){.os-taskbar{position:fixed;bottom:0;left:0;right:0;width:100%;height:var(--taskbar-height-mobile);z-index:99999}.os-task-list{overflow-x:auto;scrollbar-width:none}.os-task-list::-webkit-scrollbar{display:none}.os-task-item{flex-shrink:1;min-width:80px;max-width:120px}}@media (max-width: 767px){.os-start-btn{padding:6px var(--spacing-lg);font-size:.85rem}.os-start-btn span:last-child{display:none}.os-task-item{min-width:60px;max-width:90px;font-size:.75rem;padding:4px var(--spacing-sm)}.system-icons{gap:var(--spacing-sm)}.system-icon{font-size:14px}.os-system-tray{gap:var(--spacing-md);padding-left:var(--spacing-md)}.os-system-tray span{font-size:.8rem}.os-min-all-btn{width:8px;margin-left:6px}}.os-shortcut{width:90px;height:100px;display:flex;flex-direction:column;align-items:center;justify-content:center;margin:var(--spacing-md);border:1px solid transparent;cursor:pointer;border-radius:8px;transition:background .1s,transform .1s}.os-shortcut:hover{background:var(--color-glass-shadow)}.os-shortcut:active{transform:scale(.95)}.os-shortcut.selected{background:var(--color-glass-shadow);border:1px dashed var(--color-ink-primary);box-shadow:2px 2px 0 var(--color-glass-shadow)}.os-shortcut-icon{width:48px;height:48px;margin-bottom:var(--spacing-sm)}.os-shortcut-icon svg{width:100%;height:100%;fill:none;stroke:var(--color-ink-primary);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.os-shortcut-label{text-align:center;font-size:.9rem;font-weight:500;color:var(--color-ink-primary);-webkit-user-select:none;user-select:none;background:var(--color-glass-bg);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);padding:2px var(--spacing-xs);border-radius:4px}.os-window{position:absolute;display:flex;flex-direction:column;background:var(--color-glass-bg);backdrop-filter:blur(var(--glass-blur-amount)) saturate(var(--glass-saturation));-webkit-backdrop-filter:blur(var(--glass-blur-amount)) saturate(var(--glass-saturation));border:1px solid var(--color-glass-border);border-radius:12px;box-shadow:0 12px 32px var(--color-glass-shadow);transform-origin:top left}.os-window.dragging{z-index:999999!important}.os-window.resizing{-webkit-user-select:none;user-select:none}.os-window.resizing .os-window-content{pointer-events:none}.os-window.focused{box-shadow:0 12px 48px var(--color-glass-shadow);z-index:100}.os-window.minimized{display:none}.os-window.maximized{top:0!important;left:0!important;width:100%!important;height:100%!important;border-radius:0;transform:none;box-shadow:none}.os-titlebar{height:40px;display:flex;align-items:center;justify-content:space-between;padding:0 var(--spacing-md);border-bottom:1px solid var(--color-glass-border);border-radius:12px 12px 0 0;-webkit-user-select:none;user-select:none;background:var(--color-glass-border-dark);cursor:grab}.os-titlebar:active{cursor:grabbing}.os-titlebar-title{font-weight:700;font-size:.9rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.os-titlebar-controls{display:flex;gap:var(--spacing-sm)}.os-control-btn{width:16px;height:16px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .1s,background-color .2s;background-color:var(--color-glass-border);border:1px solid var(--color-glass-border-dark);color:transparent}.os-control-btn svg{width:8px;height:8px;transition:color .2s}.os-titlebar-controls:hover .os-control-btn{color:var(--color-ink-primary)}.os-control-btn.close-btn{background-color:#ff5f56}.os-control-btn.minimize-btn{background-color:#ffbd2e}.os-control-btn.maximize-btn{background-color:#27c93f}.os-control-btn:hover{transform:scale(1.1)}.os-window-content{flex:1;overflow-y:auto;overflow-x:hidden;position:relative;background:transparent;padding:var(--spacing-md);border-radius:0 0 12px 12px}.resize-handle{position:absolute;z-index:1000}.resize-n{top:-4px;left:0;right:0;height:10px;cursor:ns-resize}.resize-s{bottom:-4px;left:0;right:0;height:10px;cursor:ns-resize}.resize-e{top:0;bottom:0;right:-4px;width:10px;cursor:ew-resize}.resize-w{top:0;bottom:0;left:-4px;width:10px;cursor:ew-resize}.resize-nw{top:-4px;left:-4px;width:15px;height:15px;cursor:nwse-resize}.resize-ne{top:-4px;right:-4px;width:15px;height:15px;cursor:nesw-resize}.resize-sw{bottom:-4px;left:-4px;width:15px;height:15px;cursor:nesw-resize}.resize-se{bottom:-4px;right:-4px;width:15px;height:15px;cursor:nwse-resize}::view-transition-group(*){animation-duration:.3s;animation-timing-function:cubic-bezier(.4,0,.2,1);border-radius:var(--border-radius-imperfect)}::view-transition-old(*),::view-transition-new(*){height:100%;width:100%;object-fit:none}@media (max-width: 1023px){.os-window:not(.minimized){position:fixed!important;top:0!important;left:0!important;right:0!important;bottom:var(--taskbar-height-mobile)!important;width:100%!important;height:auto!important;max-height:calc(100vh - var(--taskbar-height-mobile))!important;border-radius:0;transform:none!important;box-shadow:none}.os-window.maximized{bottom:var(--taskbar-height-mobile)!important;height:auto!important;max-height:calc(100vh - var(--taskbar-height-mobile))!important}.os-titlebar{cursor:default}}.os-desktop{width:100vw;height:100vh;position:relative;overflow:hidden;display:flex;flex-direction:column;-webkit-user-select:none;user-select:none}.os-workspace{flex:1;position:relative;padding:var(--spacing-2xl);z-index:1}@media (max-width: 1023px){.os-workspace{padding:var(--spacing-sm);padding-bottom:calc(var(--taskbar-height-mobile) + var(--spacing-sm))}}@media (max-width: 767px){.os-workspace{padding:var(--spacing-xs);padding-bottom:calc(var(--taskbar-height-mobile) + var(--spacing-xs))}}
