.theme-toggle{display:inline-flex;width:48px;height:48px;flex:0 0 48px;align-items:center;justify-content:center;padding:0;border:1px solid var(--edge,rgba(43,42,40,.2));border-radius:999px;color:var(--text,#2b2a28);background:var(--glass,rgba(255,255,255,.72));box-shadow:0 4px 14px var(--shadow,rgba(20,25,40,.12));cursor:pointer}.theme-toggle:focus-visible{outline:2px solid var(--accent,#2f5fe0);outline-offset:3px}@media (hover:hover) and (pointer:fine){.theme-toggle:hover{background:var(--glass-strong,rgba(255,255,255,.9))}}@media (prefers-reduced-transparency:reduce){.home-page .theme-toggle{background:var(--opaque-toggle,var(--surface));border-color:var(--opaque-edge,var(--edge));-webkit-backdrop-filter:none;backdrop-filter:none}@media (hover:hover) and (pointer:fine){.home-page .theme-toggle:hover{background:var(--opaque-toggle-hover,var(--surface))}}}@supports not (backdrop-filter:blur(1px)){.home-page .theme-toggle{background:var(--opaque-toggle,var(--surface));border-color:var(--opaque-edge,var(--edge));-webkit-backdrop-filter:none;backdrop-filter:none}@media (hover:hover) and (pointer:fine){.home-page .theme-toggle:hover{background:var(--opaque-toggle-hover,var(--surface))}}}html.theme-transition .home-page,html.theme-transition .bento-tile,html.theme-transition .bento-link,html.theme-transition .bento-chips li,html.theme-transition .bento-tags li,html.theme-transition .project-panel,html.theme-transition .theme-toggle{transition:background-color .25s ease,border-color .25s ease,color .25s ease,box-shadow .25s ease}@media (prefers-reduced-motion:reduce){html.theme-transition .home-page,html.theme-transition .bento-tile,html.theme-transition .bento-link,html.theme-transition .bento-chips li,html.theme-transition .bento-tags li,html.theme-transition .project-panel,html.theme-transition .theme-toggle{transition:none}}body,html{margin:0;padding:0;height:100%;font-family:Georgia,serif;background-color:#f4efe4;color:#2b2a28}:root{--paper:#f4efe4;--paper-raised:#fbf8f1;--graphite:#2b2a28;--graphite-soft:#6b675f;--line:#3a3631;--clay:#d9785c;--moss:#7fa37a;--sky:#8db4c9;--butter:#e8c768;--plum:#a98ab0;--focus:#1f5fbf}*,*:before,*:after{box-sizing:border-box}button,a,input{font:inherit}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--focus);outline-offset:3px}body{overflow-x:hidden}.hamburger{position:fixed;top:20px;left:20px;font-size:30px;cursor:pointer;background-color:transparent;border:none;color:#333;padding:10px;z-index:1100;transition:transform .2s ease}.hamburger:hover{transform:scale(1.2)}.sidebar{position:fixed;top:0;left:0;width:250px;height:100%;background-color:#fff;color:#333;transform:translate(-100%);transition:transform .4s ease;z-index:1000;box-shadow:2px 0 5px #0000001a;padding-top:60px}.sidebar.open{transform:translate(0)}.sidebar ul{list-style-type:none;padding:20px;margin:0}.sidebar ul li{padding:15px 10px}.sidebar ul li a{color:#333;text-decoration:none;font-size:20px;display:block;transition:background-color .3s}.sidebar ul li a:hover,.sidebar ul li a.active{background-color:#e0e0e0;border-radius:4px}.sidebar ul li a.active{font-weight:700}.overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#0000004d;z-index:900;cursor:pointer;display:none}.sidebar.open+.overlay{display:block}.app-content{padding:2rem;margin-top:60px}.main-page,.about-page,.projects-page,.contact-page{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:calc(100vh - 60px);text-align:center}h1{font-size:3rem;margin-bottom:1rem}p{font-size:1.2rem;max-width:800px;line-height:1.6;color:#333}.navigation-buttons{position:fixed;bottom:20px;left:50%;transform:translate(-50%);display:flex;gap:20px;z-index:100}.nav-button{width:50px;height:50px;background-color:#fff;color:#333;border:1px solid #cccccc;border-radius:10px;font-size:24px;cursor:pointer;display:flex;justify-content:center;align-items:center;box-shadow:0 4px 6px #0000001a;transition:background-color .3s ease,transform .3s ease}.nav-button:hover{background-color:#e0e0e0;transform:scale(1.05)}
