.container{max-width:760px;margin:0 auto;padding:6rem 1.5rem 4rem}section{margin-bottom:6rem}.lang-switch{z-index:100;background:var(--switcher-bg);border:1px solid var(--card-border);-webkit-backdrop-filter:blur(16px);border-radius:9999px;gap:.25rem;padding:.3rem;display:flex;position:fixed;top:1.5rem;right:1.5rem}.lang-switch button{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:9999px;padding:.4rem 1rem;font-size:.85rem;font-weight:600;transition:all .3s cubic-bezier(.4,0,.2,1)}.lang-switch button.active{background:var(--link-bg-hover);color:var(--text-main);box-shadow:0 2px 8px var(--shadow-color)}.game-score{z-index:100;color:var(--accent);pointer-events:none;text-shadow:0 0 10px rgba(var(--accent-rgb), .5);font-family:monospace;font-size:1.1rem;font-weight:800;display:none;position:fixed;top:1.5rem;left:1.5rem}.like-under-avatar{background:var(--link-bg);color:var(--text-main);border:1px solid var(--card-border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:9999px;align-items:center;gap:.4rem;margin-top:1rem;margin-bottom:1.5rem;padding:.5rem 1.2rem;font-size:.85rem;transition:all .3s;display:inline-flex}.like-under-avatar:hover{background:var(--link-bg-hover);border-color:var(--card-border-hover);transform:translateY(-2px)}.like-under-avatar:active{transform:translateY(0)}.like-under-avatar.liked{color:var(--accent-2);border-color:var(--accent-2)}.visitor-counter{z-index:-1;color:var(--text-muted);opacity:.4;pointer-events:none;-webkit-user-select:none;user-select:none;align-items:center;gap:.35rem;font-size:.8rem;display:flex;position:fixed;top:1.6rem;left:50%;transform:translate(-50%)}.stat-count{text-align:center;min-width:1.2rem;font-weight:600}.plus-one-counter{z-index:100;color:var(--text-muted);align-items:center;gap:.4rem;font-size:.85rem;display:flex;position:fixed;top:1.6rem;left:1rem}.plus-one-btn{background:var(--link-bg);color:var(--text-main);border:1px solid var(--card-border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:9999px;padding:.35rem .8rem;font-weight:600;transition:all .2s}.plus-one-btn:hover{background:var(--link-bg-hover);border-color:var(--card-border-hover);transform:translateY(-2px)}.plus-one-btn:active{transform:translateY(0)}.last-updated-fixed{z-index:-1;color:var(--text-muted);opacity:.4;pointer-events:none;-webkit-user-select:none;user-select:none;font-size:.8rem;position:fixed;bottom:1.25rem;left:50%;transform:translate(-50%)}.tagline{color:var(--text-muted);min-height:1.8rem;font-size:1rem;font-weight:300}.cursor{background:var(--accent);vertical-align:middle;width:2px;height:1.1em;margin-left:2px;animation:1s infinite blink;display:inline-block}.links{flex-wrap:wrap;justify-content:center;gap:1rem;margin-top:2.5rem;display:flex}.links a{background:var(--link-bg);color:var(--text-main);border:1px solid var(--card-border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:9999px;align-items:center;gap:.5rem;padding:.6rem 1.5rem;font-size:.9rem;text-decoration:none;transition:all .3s;display:flex}.links a:hover{background:var(--link-bg-hover);border-color:var(--card-border-hover);transform:translateY(-2px)}h2{color:var(--text-main);align-items:center;gap:.75rem;margin-bottom:1.5rem;font-size:1.5rem;font-weight:600;display:flex}.card{background:var(--card-bg);border:1px solid var(--card-border);-webkit-backdrop-filter:blur(20px);box-shadow:0 4px 24px -1px var(--card-shadow);border-radius:1.25rem;padding:2rem;transition:transform .3s,border-color .3s}.card:hover{border-color:var(--card-border-hover)}.card p{color:var(--text-muted);text-align:justify;font-size:1rem}.hero{text-align:center;flex-direction:column;justify-content:center;align-items:center;margin-bottom:8rem;display:flex}.avatar-frame{justify-content:center;align-items:center;width:220px;height:220px;margin-bottom:2rem;display:flex;position:relative}.progress-ring{background:conic-gradient(var(--accent) calc(var(--progress,0) * 1%), var(--card-border) 0);pointer-events:none;z-index:-1;opacity:1;border-radius:50%;transition:opacity .5s;position:absolute;inset:-4px;-webkit-mask:radial-gradient(#0000 62%,#000 63%);mask:radial-gradient(#0000 62%,#000 63%)}.progress-ring:before{content:"";background:conic-gradient(from 0deg, transparent 0%, var(--accent) 60%, transparent 100%);border-radius:50%;animation:1.2s linear infinite spin-ring;position:absolute;inset:0;-webkit-mask:radial-gradient(#0000 62%,#000 63%);mask:radial-gradient(#0000 62%,#000 63%)}[data-theme=light] .progress-ring:before{background:conic-gradient(#0000 0%,#0ea5e9 60%,#0000 100%)}[data-theme=light] .progress-ring{background:conic-gradient(#0ea5e9 calc(var(--progress,0) * 1%), var(--card-border) 0)}.progress-ring.loaded{opacity:0;visibility:hidden;transition:opacity .5s,visibility .5s}.avatar-container{justify-content:center;align-items:center;width:190px;height:190px;display:flex;position:relative}.avatar-container:after{content:"";z-index:-1;opacity:.65;filter:blur(18px);background:radial-gradient(circle,#c084fcb3 0%,#818cf866 35%,#0000 70%);border-radius:50%;transition:opacity .3s;position:absolute;inset:-4px}.avatar-container:hover:after{opacity:1;filter:blur(24px)}[data-theme=light] .avatar-container:after,[data-theme=light] .avatar-container:hover:after{display:none!important}.vinyl{z-index:1;background:radial-gradient(circle,#18181b 0 22%,#0000 23%),repeating-radial-gradient(circle,#111827 0 2px,#0f172a 3px 4px);border-radius:50%;width:180px;height:180px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:inset 0 0 0 2px #ffffff0a,0 10px 30px #00000080}.vinyl:before{content:"";opacity:.8;pointer-events:none;background:repeating-conic-gradient(from 12deg,#0000 0deg 2deg,#ffffff08 2deg 2.4deg),repeating-conic-gradient(from 78deg,#0000 0deg 3deg,#ffffff05 3deg 3.3deg);border-radius:50%;position:absolute;inset:0}.vinyl:after{content:"";opacity:.9;pointer-events:none;background:radial-gradient(circle at 35% 35%,#ffffff0a 0 1px,#0000 2px),radial-gradient(circle at 65% 70%,#ffffff08 0 1px,#0000 2px),radial-gradient(circle at 50% 85%,#ffffff08 0 1px,#0000 2px),radial-gradient(circle at 25% 60%,#ffffff06 0 1px,#0000 2px);border-radius:50%;position:absolute;inset:0}.avatar-container.playing .vinyl{animation:5s linear infinite spin}[data-theme=light] .vinyl{background:radial-gradient(circle,#fff 0 22%,#0000 23%),repeating-radial-gradient(circle,#fff 0 2px,#f8fafc 3px 4px);box-shadow:inset 0 0 0 2px #0000000a,0 10px 30px #0000001f}[data-theme=light] .vinyl:before{opacity:.8;background:repeating-conic-gradient(from 12deg,#0000 0deg 2deg,#00000008 2deg 2.4deg),repeating-conic-gradient(from 78deg,#0000 0deg 3deg,#00000005 3deg 3.3deg)}[data-theme=light] .vinyl:after{opacity:.9;background:radial-gradient(circle at 35% 35%,#0000000a 0 1px,#0000 2px),radial-gradient(circle at 65% 70%,#00000008 0 1px,#0000 2px),radial-gradient(circle at 50% 85%,#00000008 0 1px,#0000 2px),radial-gradient(circle at 25% 60%,#00000006 0 1px,#0000 2px)}.tonearm-wrap{z-index:3;transform-origin:80px 24px;pointer-events:none;transform-box:border-box;--tonearm-color:#f8fafc;--tonearm-contrast:#09090b;width:160px;height:160px;transition:transform .5s;position:absolute;top:-75px;right:50px;transform:rotate(25deg)}[data-theme=light] .tonearm-wrap{--tonearm-color:#09090b;--tonearm-contrast:#f8fafc}.tonearm-wrap svg{width:100%;height:100%;overflow:visible}.tonearm-path{filter:drop-shadow(0 1px 2px #0006)}.needle{filter:drop-shadow(0 0 4px #f8fafc99)}.bulb{opacity:0;transition:opacity .3s}.avatar-container.playing .bulb{opacity:1;filter:drop-shadow(0 0 3px #ef4444)drop-shadow(0 0 6px #ef4444b3)}.avatar-container.playing .tonearm-wrap{transform:rotate(0)}.avatar{object-fit:cover;border:2px solid var(--card-border);background-color:var(--avatar-bg);cursor:pointer;z-index:2;filter:brightness(.7)contrast(1.1);-webkit-user-select:none;user-select:none;border-radius:50%;width:110px;height:110px;transition:transform .4s cubic-bezier(.34,1.56,.64,1);position:relative}.note{color:var(--accent);pointer-events:none;opacity:0;z-index:6;text-shadow:0 0 8px rgba(var(--accent-rgb), .5);-webkit-user-select:none;user-select:none;font-size:1.2rem;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)scale(.4)}[data-theme=light] .note{color:#0ea5e9;text-shadow:0 0 8px #0ea5e966}.avatar:hover{transform:scale(1.05)}.hero h1{letter-spacing:-.02em;color:var(--text-main);margin-bottom:1rem;font-size:3.5rem;font-weight:800}.intro-line{color:var(--text-main);margin-bottom:.5rem;font-size:1.1rem;font-weight:400}.skills-grid{flex-wrap:wrap;gap:.75rem;margin-top:.5rem;display:flex}.skill-tag{color:var(--text-muted);background:var(--link-bg);border:1px solid var(--card-border);cursor:default;-webkit-user-select:none;user-select:none;border-radius:9999px;padding:.4rem 1.25rem;font-size:.9rem;font-weight:500;transition:all .3s cubic-bezier(.4,0,.2,1)}.skill-tag:hover{color:var(--text-main);background:rgba(var(--accent-rgb), .1);border-color:var(--accent);box-shadow:0 4px 12px rgba(var(--accent-rgb), .2);transform:translateY(-2px)}.thesis-title{color:var(--text-main);margin-bottom:.75rem;font-size:1.25rem;font-weight:600;line-height:1.5}.thesis-meta{color:var(--text-muted);border-bottom:1px solid var(--card-border);margin-bottom:1.5rem;padding-bottom:1.5rem;font-size:.9rem}.abstract{color:var(--text-muted);text-align:justify;margin-bottom:2rem;font-size:.95rem;line-height:1.8}.btn{background:var(--text-main);color:var(--bg);border-radius:.75rem;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-size:.95rem;font-weight:600;text-decoration:none;transition:all .2s;display:inline-flex}.btn:hover{background:var(--text-muted);box-shadow:0 10px 25px var(--shadow-color);transform:translateY(-2px)}.btn-group{flex-wrap:wrap;gap:.75rem;display:flex}.btn-secondary{color:var(--text-main);border:1px solid var(--card-border);background:0 0}.btn-secondary:hover{background:var(--surface-hover);border-color:var(--card-border-hover);box-shadow:none}footer{text-align:center;color:var(--text-muted);border-top:1px solid var(--card-border);margin-top:4rem;padding-top:2rem;font-size:.85rem}@media (width<=640px){.hero h1{font-size:2.25rem}.container{padding:5rem 1.25rem 3.5rem}.card{padding:1.5rem}.thesis-title{font-size:1.15rem}.lang-switch{top:1rem;right:1rem}.game-score{font-size:.95rem;top:1rem;left:1rem}.last-updated-fixed{font-size:.75rem;bottom:.75rem}.links{gap:.75rem}.links a{padding:.55rem 1.25rem;font-size:.85rem}.hero{margin-bottom:5rem}section{margin-bottom:4rem}footer{margin-top:2rem;padding-top:1.5rem}.plus-one-counter{font-size:.8rem;top:4.2rem;left:.75rem}.plus-one-btn{padding:.3rem .65rem}.visitor-counter{padding:.3rem .7rem;font-size:.75rem;top:4.5rem}.like-under-avatar{margin-top:.75rem;margin-bottom:1.25rem}.theme-switch{top:4.5rem;right:1rem}}
