:root{--bg:#313338;--bg-elev:#ffffff0a;--text:#f5f5f7;--muted:#a1a1a6;--accent:#0a84ff;--ring:#0a84ff59;--card:#ffffff0d;--border:#ffffff14;--shadow:0 10px 30px #00000073;--radius-lg:18px;--radius-md:12px;--radius-sm:10px;--maxw:1080px;--lead:#d7d7db;--tag-color:#cfcfd4;--sao-active:#f5a623;--sao-active-glow:#f5a6234d;--sao-icon-bg:#50505080;--sao-icon-bg-hover:#64646499;--sao-menu-bg:#1e1e1ebf;--sao-text:#ffffffd9;--sao-text-muted:#ffffff80}:root.light{--bg:#f5f5f7;--bg-elev:#0000000a;--text:#1d1d1f;--muted:#4a4a4f;--accent:#0a84ff;--ring:#007aff59;--card:#fff;--border:#0000001f;--shadow:0 4px 16px #0000001a;--lead:#3d3d3f;--tag-color:#3d3d3f;--sao-menu-bg:#f0f0f5d1;--sao-icon-bg:#00000014;--sao-icon-bg-hover:#0000001f;--sao-text:#000000d9;--sao-text-muted:#00000073}::selection{color:var(--text);background:#e8849a59}::selection{color:var(--text);background:#e8849a59}:root.light ::selection{color:var(--text);background:#e8849a73}:root.light ::selection{color:var(--text);background:#e8849a73}*{box-sizing:border-box}html,body{height:100%}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,system-ui,Apple Color Emoji,Segoe UI Emoji;line-height:1.55}.nav{z-index:50;-webkit-backdrop-filter:saturate(180%)blur(18px);backdrop-filter:saturate(180%)blur(18px);background:color-mix(in hsl, var(--bg) 88%, transparent);border-bottom:1px solid var(--border);position:sticky;top:0}.nav-inner{max-width:var(--maxw);justify-content:space-between;align-items:center;gap:12px;margin:0 auto;padding:10px 20px;display:flex}.brand{letter-spacing:.2px;flex-shrink:0;align-items:center;gap:10px;font-weight:700;display:flex}.logo{background:linear-gradient(135deg, var(--accent), #34c759);border-radius:8px;width:32px;height:32px;box-shadow:inset 0 1px #ffffff38,0 6px 16px #0a84ff59}.logo-img{object-fit:contain;border-radius:6px;width:36px;height:36px;display:block}.nav-primary{align-items:center;gap:2px;display:flex}.nav-link{color:var(--text);opacity:.88;border-radius:9px;padding:7px 11px;font-size:14px;font-weight:500;text-decoration:none;transition:background .15s,color .15s,opacity .15s}.nav-link:hover{background:var(--bg-elev);opacity:1}.nav-link--active{background:var(--bg-elev);color:var(--accent);opacity:1}.nav-more{position:relative}.nav-more-btn{opacity:.88;background:0 0;border-color:#0000;border-radius:9px;align-items:center;gap:5px;padding:7px 11px;font-size:14px;font-weight:500;display:flex}.nav-more-btn:hover{background:var(--bg-elev);opacity:1;border-color:#0000;transform:none}.nav-more-btn[aria-expanded=true]{background:var(--bg-elev);border-color:var(--border);opacity:1}.nav-chevron{font-size:13px;font-style:normal;line-height:1;transition:transform .2s;display:inline-block}.nav-more-btn[aria-expanded=true] .nav-chevron{transform:rotate(90deg)}.nav-dropdown{z-index:60;background:color-mix(in hsl, var(--bg) 90%, transparent);-webkit-backdrop-filter:saturate(180%)blur(14px);border:1px solid var(--border);opacity:0;visibility:hidden;border-radius:14px;min-width:176px;padding:6px;transition:opacity .2s,transform .2s,visibility .2s;position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%)translateY(-6px);box-shadow:0 8px 32px #00000059}.nav-dropdown.is-open{opacity:1;visibility:visible;transform:translate(-50%)translateY(0)}.nav-dropdown-link{color:var(--text);opacity:.9;border-radius:9px;padding:9px 13px;font-size:14px;font-weight:500;text-decoration:none;transition:background .15s;display:block}.nav-dropdown-link:hover{background:var(--bg-elev);opacity:1}.nav-utils{flex-shrink:0;align-items:center;gap:8px;display:flex}.nav-hamburger{border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:36px;height:36px;padding:0;display:none}.nav-hamburger span{background:var(--text);transform-origin:50%;border-radius:2px;width:20px;height:2px;transition:transform .28s,opacity .2s;display:block}.nav-hamburger.is-open span:first-child{transform:translateY(7px)rotate(45deg)}.nav-hamburger.is-open span:nth-child(2){opacity:0;transform:scaleX(0)}.nav-hamburger.is-open span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.nav-backdrop{z-index:200;opacity:0;visibility:hidden;background:#0000008c;transition:opacity .3s,visibility .3s;position:fixed;inset:0}.nav-backdrop.is-open{opacity:1;visibility:visible}.nav-mobile{z-index:201;background:color-mix(in hsl, var(--bg) 96%, transparent);-webkit-backdrop-filter:saturate(180%)blur(20px);border-left:1px solid var(--border);flex-direction:column;width:min(300px,85vw);height:100dvh;transition:transform .3s;display:flex;position:fixed;top:0;right:0;transform:translate(100%);box-shadow:-8px 0 32px #00000059}.nav-mobile.is-open{transform:translate(0)}.nav-mobile-head{border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;padding:14px 18px;display:flex}.nav-mobile-title{color:var(--muted);font-size:13px;font-weight:600}.nav-mobile-close{padding:6px 10px;font-size:15px}.nav-mobile-body{flex-direction:column;flex:1;padding:8px 10px 24px;display:flex;overflow-y:auto}.nav-mobile-link{min-height:48px;color:var(--text);border-radius:10px;align-items:center;padding:0 12px;font-size:16px;font-weight:500;text-decoration:none;transition:background .15s;display:flex}.nav-mobile-link:hover{background:var(--bg-elev)}.nav-mobile-link--sec{color:var(--muted);font-size:14px}.nav-mobile-divider{background:var(--border);height:1px;margin:8px 0}@media (width<=1023px){.nav-primary{display:none}.nav-hamburger{display:flex}.nav-utils .btn{padding:8px 10px;font-size:13px}}@media (width<=480px){.nav-utils .btn:not(.nav-hamburger){padding:7px 9px}}.nav-mobile-link.nav-link--active{color:var(--accent);background:var(--bg-elev)}@media (prefers-reduced-motion:reduce){.nav-dropdown,.nav-mobile,.nav-backdrop,.nav-hamburger span{transition:none}}.sao-topbar{z-index:1000;background:var(--sao-menu-bg);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid #ffffff0f;height:56px;position:fixed;top:0;left:0;right:0;box-shadow:0 6px 28px #0000002e}.sao-topbar-inner{max-width:var(--maxw);justify-content:space-between;align-items:center;height:100%;margin:0 auto;padding:0 20px;display:flex}.sao-topbar-brand{color:var(--sao-text);align-items:center;gap:12px;text-decoration:none;display:inline-flex}.sao-avatar{border:2px solid var(--sao-active);width:36px;height:36px;box-shadow:0 0 12px var(--sao-active-glow), 0 0 24px #f5a6231a;border-radius:50%;justify-content:center;align-items:center;transition:box-shadow .3s,transform .2s;display:inline-flex;overflow:hidden}.sao-topbar-brand:hover .sao-avatar{box-shadow:0 0 18px var(--sao-active-glow), 0 0 36px #f5a62326;transform:scale(1.06)}.sao-avatar img{object-fit:cover;width:100%;height:100%;display:block}.sao-topbar-name{letter-spacing:.04em;text-transform:uppercase;font-size:15px;font-weight:700}.sao-trigger{background:var(--sao-icon-bg);cursor:pointer;border:1px solid #f5a6234d;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:40px;height:40px;padding:0;transition:background .2s,border-color .2s,box-shadow .2s;display:flex}.sao-trigger:hover{background:var(--sao-icon-bg-hover);border-color:var(--sao-active);box-shadow:0 0 12px var(--sao-active-glow)}.sao-trigger-line{background:var(--sao-active);transform-origin:50%;border-radius:2px;width:20px;height:2px;transition:transform .3s,opacity .2s;display:block}.sao-trigger[aria-expanded=true] .sao-trigger-line:first-child{transform:translateY(7px)rotate(45deg)}.sao-trigger[aria-expanded=true] .sao-trigger-line:nth-child(2){opacity:0;transform:scaleX(0)}.sao-trigger[aria-expanded=true] .sao-trigger-line:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.sao-panel{top:56px;right:max(16px, calc((100vw - var(--maxw)) / 2 + 20px));z-index:999;background:var(--sao-menu-bg);-webkit-backdrop-filter:blur(12px);opacity:0;transform-origin:top;pointer-events:none;visibility:hidden;border:1px solid #ffffff14;border-radius:14px;width:min(360px,100vw - 32px);min-width:280px;max-width:360px;padding:12px;transition:opacity .28s,transform .28s cubic-bezier(.34,1.3,.64,1),visibility .28s;position:fixed;transform:translateY(-12px)scaleY(.96);box-shadow:0 12px 40px #0006}.sao-panel.is-open{opacity:1;pointer-events:auto;visibility:visible;transform:translateY(0)scaleY(1)}.sao-panel-list{flex-direction:column;gap:6px;display:flex}.sao-item{opacity:0;transform:translate(-8px)}.sao-panel.is-open .sao-item{animation:.3s forwards sao-item-in}.sao-panel.is-open .sao-item:first-child{animation-delay:40ms}.sao-panel.is-open .sao-item:nth-child(2){animation-delay:80ms}.sao-panel.is-open .sao-item:nth-child(3){animation-delay:.12s}.sao-panel.is-open .sao-item:nth-child(4){animation-delay:.16s}.sao-panel.is-open .sao-item:nth-child(5){animation-delay:.2s}.sao-panel.is-open .sao-item:nth-child(6){animation-delay:.24s}.sao-panel.is-open .sao-item:nth-child(7){animation-delay:.28s}.sao-panel.is-open .sao-item:nth-child(8){animation-delay:.32s}.sao-panel.is-open .sao-item:nth-child(9){animation-delay:.36s}.sao-panel.is-open .sao-item:nth-child(10){animation-delay:.4s}.sao-panel.is-open .sao-item:nth-child(11){animation-delay:.44s}.sao-panel.is-open .sao-item:nth-child(12){animation-delay:.48s}.sao-panel.is-open .sao-item:nth-child(13){animation-delay:.52s}.sao-panel.is-open .sao-item:nth-child(14){animation-delay:.56s}.sao-icon-btn{width:100%;color:var(--sao-text);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:12px;align-items:center;gap:12px;padding:9px 10px;text-decoration:none;transition:background .2s,border-color .2s,box-shadow .2s,color .2s;display:flex}.sao-icon-btn svg{pointer-events:none}.sao-item-icon{background:var(--sao-icon-bg);width:28px;height:28px;color:var(--sao-text-muted);border:1px solid #ffffff0f;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;transition:inherit;display:inline-flex}.sao-item-text{letter-spacing:.01em;font-size:14px;font-weight:600}.sao-item-caret{color:var(--sao-text-muted);margin-left:auto;font-size:16px;line-height:1;transition:transform .2s,color .2s}.sao-icon-btn:hover{background:#ffffff0a;border-color:#f5a6232e;box-shadow:inset 0 0 0 1px #f5a6230f}.sao-icon-btn:hover .sao-item-icon{background:var(--sao-icon-bg-hover);color:var(--sao-text)}.sao-item.sao-active>.sao-icon-btn{background:#f5a6231f;border-color:#f5a6234d;box-shadow:0 0 18px #f5a6231f}.sao-item.sao-active>.sao-icon-btn .sao-item-icon{background:var(--sao-active);color:#fff;box-shadow:0 0 14px var(--sao-active-glow);border-color:#f5a62359}.sao-has-sub>.sao-icon-btn[aria-expanded=true] .sao-item-caret{color:var(--sao-active);transform:rotate(90deg)}.sao-separator{opacity:.8;background:linear-gradient(90deg,#f5a62300,#f5a62347,#f5a62300);height:1px;margin:4px 2px}.sao-sub{opacity:0;gap:6px;max-height:0;padding:0 0 0 50px;transition:max-height .24s,opacity .18s,padding-top .24s;display:grid;overflow:hidden}.sao-sub.is-open{opacity:1;max-height:220px;padding-top:6px}.sao-sub-link{color:var(--sao-text);background:#ffffff08;border:1px solid #0000;border-radius:10px;padding:8px 12px;font-size:13px;font-weight:500;text-decoration:none;transition:background .15s,border-color .15s;display:block}.sao-sub-link:hover{background:#ffffff14;border-color:#f5a62324}.sao-sub-toggle{color:var(--sao-text);background:#ffffff08;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:8px 12px;font-size:13px;font-weight:500;display:flex}.sao-sub-toggle .btn{border-radius:8px;padding:6px 10px}.sao-mobile-overlay{z-index:999;-webkit-backdrop-filter:blur(16px);opacity:0;visibility:hidden;background:#0a0a0ae6;flex-direction:column;justify-content:flex-start;align-items:center;transition:opacity .3s,visibility .3s;display:flex;position:fixed;inset:56px 0 0}.sao-mobile-overlay.is-open{opacity:1;visibility:visible}.sao-mobile-close{color:#fff;cursor:pointer;background:#ffffff1a;border:1px solid #ffffff1a;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;font-size:20px;transition:background .15s;display:flex;position:absolute;top:14px;right:16px}.sao-mobile-close:hover{background:#ffffff2e}.sao-mobile-body{flex-direction:column;gap:4px;width:min(360px,100vw - 24px);max-height:100%;padding:72px 0 24px;display:flex;overflow-y:auto}.sao-mobile-link{color:#ffffffd9;opacity:0;border-radius:12px;align-items:center;gap:14px;width:100%;min-height:52px;padding:12px 18px;font-size:17px;font-weight:500;text-decoration:none;transition:background .15s,color .15s;display:flex;transform:translateY(12px)}.sao-mobile-overlay.is-open .sao-mobile-link{animation:.35s forwards sao-mobile-in}.sao-mobile-link:hover,.sao-mobile-link.is-active{color:#fff;background:#ffffff14}.sao-mobile-link svg{opacity:.6;flex-shrink:0}.sao-mobile-link--sub{color:#fff9;min-height:44px;padding-left:36px;font-size:15px}.sao-mobile-group{letter-spacing:.08em;text-transform:uppercase;width:100%;color:var(--sao-active);opacity:0;padding:8px 18px 2px;font-size:11px;font-weight:700;display:block;transform:translateY(12px)}.sao-mobile-overlay.is-open .sao-mobile-group{animation:.35s forwards sao-mobile-in}.sao-mobile-divider{opacity:0;background:#ffffff14;width:calc(100% - 36px);height:1px;margin:6px 18px}.sao-mobile-overlay.is-open .sao-mobile-divider{animation:.35s forwards sao-mobile-in}.sao-mobile-settings{opacity:0;width:100%;padding:4px 0;transform:translateY(12px)}.sao-mobile-overlay.is-open .sao-mobile-settings{animation:.35s forwards sao-mobile-in}.sao-mobile-toggle-row{color:#fffc;justify-content:space-between;align-items:center;padding:10px 18px;font-size:16px;font-weight:500;display:flex}.sao-toggle-pill{color:#fff;cursor:pointer;background:#ffffff1a;border:1px solid #ffffff1a;border-radius:10px;padding:8px 14px;font-size:16px;transition:background .15s}.sao-toggle-pill:hover{background:#ffffff2e}@keyframes sao-item-in{to{opacity:1;transform:translate(0)}}@keyframes sao-mobile-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media (width<=768px){.sao-topbar-inner{padding:0 16px}.sao-panel,#toTop{display:none!important}}@media (width>=769px){.sao-mobile-overlay{display:none!important}}@media (prefers-reduced-motion:reduce){.sao-avatar,.sao-trigger,.sao-trigger-line,.sao-panel,.sao-icon-btn,.sao-item-icon,.sao-item-caret,.sao-sub,.sao-mobile-overlay,.sao-mobile-close{transition:none!important}.sao-panel.is-open .sao-item,.sao-mobile-link,.sao-mobile-group,.sao-mobile-divider,.sao-mobile-settings{opacity:1!important;animation:none!important;transform:none!important}}main{max-width:var(--maxw);margin:0 auto;padding:72px 20px 80px}section{margin:42px 0}.grid{gap:20px;display:grid}.grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}@media (width<=900px){.grid.cols-3{grid-template-columns:1fr 1fr}}@media (width<=680px){.grid.cols-2,.grid.cols-3{grid-template-columns:1fr}}.hero{border-radius:calc(var(--radius-lg) + 6px);border:1px solid var(--border);box-shadow:var(--shadow);isolation:isolate;background:linear-gradient(#ffffff0f,#ffffff05);margin-top:22px;padding:36px;position:relative;overflow:hidden}.hero:after{content:"";z-index:-1;filter:blur(24px);pointer-events:none;background:radial-gradient(600px 220px at 20% -10%,#0a84ff2e,#0000 60%),radial-gradient(500px 200px at 110% 40%,#ff453a24,#0000 60%);position:absolute;inset:-20%}h1{letter-spacing:-.02em;margin:0 0 8px;font-size:clamp(28px,5vw,46px)}.kicker{color:var(--muted);margin-bottom:6px;font-size:clamp(14px,2vw,16px)}.lead{color:var(--lead);max-width:60ch;font-size:clamp(16px,2.2vw,20px)}.cta{flex-wrap:wrap;gap:12px;margin-top:22px;display:flex}.btn{appearance:none;border:1px solid var(--border);background:var(--card);color:var(--text);cursor:pointer;border-radius:12px;padding:10px 14px;font-weight:600;transition:transform .18s,background .2s,border-color .2s}.btn:hover{border-color:color-mix(in hsl, var(--accent) 35%, var(--border));background:#ffffff17;transform:translateY(-1.5px)}.btn.primary{background:linear-gradient(180deg, color-mix(in hsl, var(--accent) 55%, #fff 0%), color-mix(in hsl, var(--accent) 45%, #000 0%));border-color:#0000}.btn.primary:hover{filter:saturate(1.1)brightness(1.05)}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:20px}.card h3{margin:0 0 8px;font-size:20px}.muted{color:var(--muted)}figure figcaption .muted{margin-top:2px;display:block}.list{margin:0;padding:0;list-style:none}.list li{border-bottom:1px dashed var(--border);padding:8px 0}.list li:last-child{border-bottom:none}.pill-row{flex-wrap:wrap;gap:10px;margin-top:8px;display:flex}.pill{border:1px solid var(--border);background:var(--bg-elev);color:var(--text);border-radius:999px;padding:8px 12px;font-weight:600;text-decoration:none}.pill:hover{background:#ffffff14}.gallery{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:18px;display:grid}figure{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-md);flex-direction:column;min-height:260px;margin:0;transition:transform .18s,box-shadow .18s;display:flex;position:relative;overflow:hidden}figure:hover{transform:translateY(-2px)}.badge{color:#fff;-webkit-backdrop-filter:saturate(160%)blur(6px);backdrop-filter:saturate(160%)blur(6px);border:1px solid #ffffff24;border-radius:50%;place-items:center;width:28px;height:28px;font-size:13px;font-weight:700;line-height:1;display:grid;position:absolute;top:10px;left:10px;box-shadow:0 8px 18px #00000059,inset 0 1px #ffffff38}.badge.gold{background:linear-gradient(#f5d26b,#d9a429)}.badge.silver{color:#1d1d1f;background:linear-gradient(#e8ecf1,#b9c0c8)}.badge.bronze{background:linear-gradient(#d9a273,#a86b3f)}figure img{object-fit:cover;aspect-ratio:16/9;background:#111;width:100%;height:180px;display:block}figure figcaption{min-height:clamp(110px,16vw,140px);padding:12px 14px 14px}.tags{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.tag{border:1px solid var(--border);color:var(--tag-color);background:#ffffff0a;border-radius:999px;padding:4px 8px;font-size:12px}video{border-top:1px solid var(--border);background:#000;width:100%;height:auto;display:block}.media-controls{border-top:1px solid var(--border);align-items:center;gap:10px;padding:10px;display:flex}.media-btn{background:var(--bg-elev);border:1px solid var(--border);cursor:pointer;border-radius:10px;padding:6px 10px;font-size:13px}.media-btn:hover{background:#ffffff1a}.video-wrapper{border-radius:12px;height:0;padding-bottom:56.25%;position:relative;overflow:hidden}.video-wrapper iframe{width:100%;height:100%;position:absolute;top:0;left:0}.legal{color:var(--text);font-size:13.5px;line-height:1.65}.legal h4{color:var(--text);margin:18px 0 8px;font-size:15px;font-weight:700}.legal h4:first-child{margin-top:0}.legal ul{margin:0 0 12px;padding-left:20px;list-style:outside}.legal li{margin-bottom:8px}.legal p{margin:0 0 8px}.accordion details{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--card)}.accordion summary{cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;padding:16px 18px;font-weight:700;list-style:none;display:flex}.accordion summary::-webkit-details-marker{display:none}.accordion .chev{transition:transform .2s}.accordion details[open] .chev{transform:rotate(90deg)}.accordion .content{padding:0 18px 16px}.accordion h4{margin:14px 0 6px;font-size:16px}.accordion .muted-note{color:var(--muted);margin:8px 0 0;font-size:13px}footer{color:var(--muted);text-align:center;margin:60px 0 20px;font-size:13px}#projekte-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}@media (width<=900px){#projekte-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=640px){#projekte-grid{grid-template-columns:1fr}}.proj-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow);flex-direction:column;gap:8px;padding:18px;transition:transform .18s,border-color .2s,box-shadow .2s;display:flex}.proj-card:hover{box-shadow:0 0 0 1px #0a84ff1a, var(--shadow);border-color:#0a84ff66;transform:translateY(-2px)}.proj-head{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.proj-name{margin:0;font-size:17px;font-weight:700;line-height:1.2}.proj-type-label{border:1px solid var(--border);color:var(--muted);white-space:nowrap;background:#ffffff0d;border-radius:999px;flex-shrink:0;padding:3px 8px;font-size:11px}.proj-desc{color:var(--muted);flex:1;margin:0;font-size:13.5px;line-height:1.5}.proj-stack{flex-wrap:wrap;gap:5px;display:flex}.s-tag{border:1px solid #0000;border-radius:999px;padding:3px 8px;font-size:11px;font-weight:600}.proj-bottom{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-top:auto;padding-top:2px;display:flex}.status-badge{border-radius:999px;padding:4px 10px;font-size:11px;font-weight:700}.s-finished{color:#34c759;background:#34c75926;border:1px solid #34c7594d}.s-in-development{color:#ff9f0a;background:#ff9f0a26;border:1px solid #ff9f0a4d}.s-active{color:#3b8bff;background:#0a84ff26;border:1px solid #0a84ff4d}.s-idea{color:var(--muted);border:1px solid var(--border);background:#ffffff0d}.proj-highlights{flex-wrap:wrap;gap:5px;display:flex}.hl-badge{border:1px solid var(--border);color:var(--tag-color);background:#ffffff0a;border-radius:999px;padding:2px 7px;font-size:11px}.proj-links{gap:6px;display:flex}.proj-link{background:var(--bg-elev);border:1px solid var(--border);color:var(--text);border-radius:8px;padding:5px 10px;font-size:12px;font-weight:600;text-decoration:none;transition:background .18s}.proj-link:hover{background:#ffffff1a}.ts-categories{flex-direction:column;gap:24px;display:flex}.ts-cat-label{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--border);margin:0 0 10px;padding-bottom:8px;font-size:11px;font-weight:700}.ts-grid{grid-template-columns:repeat(auto-fill,minmax(76px,1fr));gap:8px;display:grid}.ts-item{border-radius:var(--radius-md);background:var(--card);border:1px solid var(--border);cursor:default;text-align:center;flex-direction:column;align-items:center;gap:6px;padding:12px 8px;transition:transform .18s,box-shadow .18s,border-color .18s;display:flex}.ts-item:hover{border-color:#0a84ff4d;transform:scale(1.08);box-shadow:0 0 14px #0a84ff33}.ts-item img{object-fit:contain;width:28px;height:28px;display:block}.ts-fallback{width:28px;height:28px;color:var(--accent);text-align:center;background:linear-gradient(135deg,#0a84ff33,#0a84ff0f);border:1px solid #0a84ff2e;border-radius:6px;justify-content:center;align-items:center;font-size:9px;font-weight:700;line-height:1.1;display:flex}.ts-name{color:var(--muted);font-size:11px;font-weight:500;line-height:1.2}.music-grid{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}@media (width<=900px){.music-grid{grid-template-columns:1fr 1fr}}@media (width<=600px){.music-grid{grid-template-columns:1fr}}.music-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow);overflow:hidden}.music-card iframe{border-radius:0 0 var(--radius-md) var(--radius-md);border:none;width:100%;display:block}.music-label{color:var(--muted);margin:0;padding:10px 14px;font-size:13px;font-weight:500}#splash{z-index:9999;background:var(--bg);pointer-events:all;justify-content:center;align-items:center;animation:.4s 1.2s forwards splash-out;display:flex;position:fixed;inset:0}.splash-skip #splash{display:none}.splash-inner{justify-content:center;align-items:center;display:flex;position:relative}.splash-logo{object-fit:contain;opacity:0;z-index:1;border-radius:16px;width:72px;height:72px;animation:.4s forwards splash-logo-in,.35s .48s splash-pulse;position:relative}.splash-ring{border:2px solid #0a84ff00;border-radius:22px;width:96px;height:96px;animation:.7s .4s forwards splash-ring-glow;position:absolute}@keyframes splash-logo-in{0%{opacity:0;transform:scale(.88)}to{opacity:1;transform:scale(1)}}@keyframes splash-pulse{0%{transform:scale(1)}50%{transform:scale(1.08)}to{transform:scale(1)}}@keyframes splash-ring-glow{0%{box-shadow:none;border-color:#0a84ff00;transform:scale(.82)}45%{border-color:#0a84ff73;transform:scale(1.06);box-shadow:0 0 22px #0a84ff40}to{box-shadow:none;border-color:#0a84ff00;transform:scale(1.22)}}@keyframes splash-out{to{opacity:0;pointer-events:none}}@media (prefers-reduced-motion:reduce){#splash{animation:0s 50ms forwards splash-out}.splash-logo,.splash-ring{opacity:1;animation:none}}#scroll-progress{z-index:100;background:linear-gradient(90deg, var(--accent) 0%, #34c759 100%);pointer-events:none;transform-origin:0;will-change:transform;width:100%;height:3px;position:fixed;top:0;left:0;transform:scaleX(0);box-shadow:0 0 8px #0a84ff66}#cursor-glow{pointer-events:none;z-index:1;will-change:transform;background:radial-gradient(circle,#0a84ff17 0%,#0000 70%);border-radius:50%;width:280px;height:280px;display:none;position:fixed;top:0;left:0}@media (pointer:coarse){#cursor-glow,#cursorToggle{display:none!important}}.status-grid{grid-template-columns:3fr 2fr;gap:18px;display:grid}@media (width<=700px){.status-grid{grid-template-columns:1fr}}.status-focus-head{justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:4px;display:flex}.status-prog-label{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.status-bar{background:#ffffff14;border-radius:999px;height:8px;overflow:hidden}.status-bar-fill{background:linear-gradient(90deg, var(--accent), #34c759);border-radius:999px;width:0;height:100%;transition:width 1.2s cubic-bezier(.4,0,.2,1)}.status-mood-emoji{font-size:28px;line-height:1}.status-right{flex-direction:column;gap:16px;display:flex}.status-timeline{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.status-timeline li{align-items:flex-start;gap:10px;display:flex}.status-dot{background:var(--accent);border-radius:50%;flex-shrink:0;width:8px;height:8px;margin-top:4px}.ach-nav-btn{padding:8px 10px;font-size:16px;line-height:1}.ach-toast{z-index:200;background:color-mix(in hsl, var(--bg) 92%, transparent);border:1px solid var(--border);border-radius:var(--radius-md);-webkit-backdrop-filter:blur(20px)saturate(180%);backdrop-filter:blur(20px)saturate(180%);opacity:0;pointer-events:none;align-items:flex-start;gap:13px;max-width:300px;padding:14px 18px;transition:transform .38s cubic-bezier(.34,1.56,.64,1),opacity .3s;display:flex;position:fixed;bottom:24px;right:24px;transform:translateY(16px);box-shadow:0 20px 50px #00000080}.ach-toast.show{opacity:1;transform:translateY(0)}.ach-toast-icon{flex-shrink:0;margin-top:2px;font-size:28px;line-height:1}.ach-toast-title{color:var(--accent);letter-spacing:.08em;text-transform:uppercase;margin-bottom:3px;font-size:10px;font-weight:700}.ach-toast-name{margin-bottom:2px;font-size:15px;font-weight:700}.ach-toast-desc{color:var(--muted);font-size:12px;line-height:1.4}.ach-modal-overlay{z-index:150;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);opacity:0;pointer-events:none;background:#000000a6;justify-content:center;align-items:center;transition:opacity .25s;display:flex;position:fixed;inset:0}.ach-modal-overlay.show{opacity:1;pointer-events:all}.ach-modal{background:var(--bg);border:1px solid var(--border);border-radius:calc(var(--radius-lg) + 4px);width:min(520px,95vw);max-height:85vh;padding:24px;transition:transform .28s cubic-bezier(.34,1.3,.64,1);overflow-y:auto;transform:scale(.95)translateY(10px);box-shadow:0 40px 100px #0009}.ach-modal-overlay.show .ach-modal{transform:scale(1)translateY(0)}.ach-modal-head{justify-content:space-between;align-items:center;margin-bottom:20px;font-size:20px;font-weight:700;display:flex}.ach-close{padding:6px 10px;font-size:14px}.ach-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:10px;margin-bottom:16px;display:grid}.ach-item{border-radius:var(--radius-md);background:var(--card);border:1px solid var(--border);text-align:center;cursor:default;flex-direction:column;align-items:center;gap:6px;padding:14px 8px;transition:transform .18s,box-shadow .18s;display:flex}.ach-item.unlocked{background:#0a84ff0f;border-color:#0a84ff4d}.ach-item.unlocked:hover{transform:scale(1.07);box-shadow:0 0 16px #0a84ff33}.ach-item.locked{opacity:.5}.ach-icon{font-size:26px;line-height:1}.ach-name{color:var(--muted);font-size:11px;font-weight:500;line-height:1.25}.ach-item.unlocked .ach-name{color:var(--text);font-weight:600}.ach-count{text-align:center;color:var(--muted);border-top:1px solid var(--border);padding-top:12px;font-size:13px}:focus-visible{outline:2px solid var(--ring);outline-offset:2px;border-radius:10px}.reveal{opacity:0;transition:opacity .6s,transform .6s;transform:translateY(8px)}.reveal.show{opacity:1;transform:translateY(0)}.hero-cursor{background:var(--accent);vertical-align:text-bottom;width:2px;height:1em;margin-left:3px;animation:.7s step-end infinite cursor-blink;display:inline-block}.hero-cursor.hide{opacity:0;transition:opacity .3s;animation:none}@keyframes cursor-blink{0%,to{opacity:1}50%{opacity:0}}.kicker{transition:opacity .3s,transform .3s}.kicker.fade-out{opacity:0;transform:translateY(-4px)}@media (prefers-reduced-motion:reduce){.hero-cursor{animation:none;display:none}.kicker{transition:none}}.theme-toggle{justify-content:center;align-items:center;width:36px;height:36px;padding:0;display:flex;position:relative}.theme-toggle svg{width:20px;height:20px;transition:transform .5s cubic-bezier(.4,0,.2,1)}.theme-toggle .sun-icon{color:#fbbf24}.theme-toggle .moon-icon{color:#6b7280}.theme-toggle .sun-icon{display:block}.theme-toggle .moon-icon,:root.light .theme-toggle .sun-icon{display:none}:root.light .theme-toggle .moon-icon{display:block}.theme-toggle .sun-rays{transform-origin:50%;transition:transform .5s cubic-bezier(.4,0,.2,1),opacity .3s}.theme-toggle:active .sun-rays{opacity:.5;transform:rotate(90deg)scale(.7)}.theme-toggle:active svg{transform:rotate(30deg)}#theme-transition-overlay{z-index:9998;pointer-events:none;opacity:0;transition:opacity .5s;position:fixed;inset:0}#theme-transition-overlay.expanding{opacity:1}@media (prefers-reduced-motion:reduce){.theme-toggle svg,.theme-toggle .sun-rays{transition:none}#theme-transition-overlay{transition:none;display:none}}.uses-main{max-width:var(--maxw);margin:0 auto;padding:40px 20px 80px}.uses-back{color:var(--accent);align-items:center;gap:6px;margin-bottom:20px;font-size:14px;font-weight:500;text-decoration:none;display:inline-flex}.uses-back:hover{text-decoration:underline}.uses-header{margin-bottom:36px}.uses-header h1{letter-spacing:-.02em;margin:0 0 6px;font-size:36px}.uses-header p{color:var(--muted);margin:0;font-size:17px}.uses-category{margin-bottom:32px}.uses-cat-label{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--border);align-items:center;gap:8px;margin:0 0 12px;padding-bottom:8px;font-size:12px;font-weight:700;display:flex}.uses-cat-emoji{font-size:16px}.uses-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px;display:grid}.uses-item{border-radius:var(--radius-md);background:var(--card);border:1px solid var(--border);color:var(--text);align-items:flex-start;gap:12px;padding:14px 16px;text-decoration:none;transition:transform .18s,border-color .2s,box-shadow .2s;display:flex}.uses-item:hover{border-color:#0a84ff4d;transform:translateY(-2px);box-shadow:0 0 14px #0a84ff1f}.uses-item-icon{flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.uses-item-icon img{object-fit:contain;width:28px;height:28px}.uses-item-fallback{width:32px;height:32px;color:var(--accent);background:linear-gradient(135deg,#0a84ff33,#0a84ff0f);border:1px solid #0a84ff2e;border-radius:8px;justify-content:center;align-items:center;font-size:10px;font-weight:700;line-height:1;display:flex}.uses-item-info{flex:1;min-width:0}.uses-item-name{margin:0 0 2px;font-size:14px;font-weight:600}.uses-item-desc{color:var(--muted);margin:0;font-size:12px;line-height:1.4}.uses-item-platform{color:var(--muted);opacity:.7;font-size:10px}@media (width<=640px){.uses-grid{grid-template-columns:1fr}}@view-transition{navigation:auto}::view-transition-old(root){animation:.3s ease-in-out vt-fade-out}::view-transition-new(root){animation:.3s ease-in-out vt-fade-in}@keyframes vt-fade-out{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.98)}}@keyframes vt-fade-in{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion:reduce){::view-transition-old(root){animation:none}::view-transition-new(root){animation:none}}.perf-badge{border:1px solid var(--border);background:var(--card);vertical-align:middle;border-radius:999px;align-items:center;gap:4px;margin-left:8px;padding:4px 10px;font-size:12px;font-weight:600;text-decoration:none;transition:transform .18s,border-color .2s;display:inline-flex}.perf-badge:hover{border-color:#34c75966;transform:translateY(-1px)}.perf-badge.perf-good{color:#34c759;border-color:#34c7594d}.perf-badge.perf-ok{color:#ff9f0a;border-color:#ff9f0a4d}.perf-badge.perf-bad{color:#ff453a;border-color:#ff453a4d}footer{flex-direction:column;align-items:center;gap:14px;display:flex}footer .footer-meta{flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;display:flex}.share-row{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;display:flex}.share-label{color:var(--muted);font-size:12px;font-weight:500}.share-btn{background:var(--card);border:1px solid var(--border);cursor:pointer;width:36px;height:36px;color:var(--text);border-radius:10px;justify-content:center;align-items:center;padding:0;text-decoration:none;transition:transform .18s,border-color .2s,box-shadow .2s,color .2s;display:flex;position:relative}.share-btn svg{fill:currentColor;width:18px;height:18px;transition:color .2s}.share-btn:hover{transform:translateY(-2px)}.share-btn--copy:hover{border-color:var(--accent);color:var(--accent);box-shadow:0 0 10px #0a84ff33}.share-btn--x:hover{color:#e5e5e5;border-color:#888;box-shadow:0 0 10px #ffffff1a}.share-btn--wa:hover{color:#25d366;border-color:#25d366;box-shadow:0 0 10px #25d36633}.share-btn--dc:hover{color:#5865f2;border-color:#5865f2;box-shadow:0 0 10px #5865f233}.share-btn--mail:hover{border-color:var(--accent);color:var(--accent);box-shadow:0 0 10px #0a84ff33}.share-btn .share-tooltip{white-space:nowrap;background:var(--accent);color:#fff;opacity:0;pointer-events:none;border-radius:6px;padding:3px 8px;font-size:11px;font-weight:600;transition:opacity .2s;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%)}.share-btn .share-tooltip.show{opacity:1}.visitor-count{color:var(--muted);align-items:center;gap:4px;font-size:12px;display:flex}.visitor-count svg{fill:none;stroke:currentColor;stroke-width:2px;width:14px;height:14px}.visitor-num{font-family:SF Mono,Fira Code,Consolas,monospace;font-weight:600}#visit-counter{color:var(--muted);font-size:12px}.now-playing{flex-direction:column;gap:12px;min-height:352px;padding:16px;display:flex}.now-playing-header{align-items:center;gap:8px;display:flex}.np-status-text{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-size:11px;font-weight:700}.now-playing-dot{background:#1db954;border-radius:50%;flex-shrink:0;width:8px;height:8px;animation:2s ease-in-out infinite pulse-dot;display:inline-block}.now-playing-dot--idle{background:#666;animation:none}@keyframes pulse-dot{0%,to{opacity:1;box-shadow:0 0 #1db95466}50%{opacity:.8;box-shadow:0 0 0 6px #1db95400}}.now-playing-content{align-items:center;gap:14px;display:flex}.now-playing-art{object-fit:cover;border-radius:8px;flex-shrink:0;width:64px;height:64px}:root.light .now-playing-art{box-shadow:0 4px 16px #0000002e}.now-playing-info{flex-direction:column;gap:2px;min-width:0;display:flex;overflow:hidden}.now-playing-title{white-space:nowrap;text-overflow:ellipsis;color:var(--text);font-size:14px;font-weight:700;display:block;overflow:hidden}.now-playing-artist{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:13px;display:block;overflow:hidden}.now-playing-album{color:var(--muted);opacity:.75;white-space:nowrap;text-overflow:ellipsis;font-size:12px;display:block;overflow:hidden}.np-progress-wrap{flex-direction:column;gap:4px;display:flex}.now-playing-progress{background:#ffffff1a;border-radius:2px;width:100%;height:3px;overflow:hidden}:root.light .now-playing-progress{background:#00000014}.now-playing-bar{background:#1db954;border-radius:2px;height:100%;transition:width 1s linear}.np-time{color:var(--muted);font-size:11px}.now-playing-link{color:#1db954;margin-top:auto;font-size:12px;text-decoration:none;display:inline-block}.now-playing-link:hover{text-decoration:underline}.np-skeleton{flex-direction:column;gap:14px;display:flex}.np-skel-row{align-items:center;gap:8px;display:flex}.np-skel-content{gap:14px}.np-skel-lines{flex-direction:column;flex:1;gap:8px;display:flex}.np-skel-block{background:#ffffff14;border-radius:6px;animation:1.6s ease-in-out infinite skel-pulse}:root.light .np-skel-block{background:#00000012}@keyframes skel-pulse{0%,to{opacity:1}50%{opacity:.4}}.np-skel-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.np-skel-status{width:80px;height:10px}.np-skel-art{border-radius:8px;flex-shrink:0;width:64px;height:64px}.np-skel-title{width:100%;height:14px}.np-skel-artist{width:66%;height:12px}.np-error{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;padding:24px 0;display:flex}.np-error-icon{font-size:32px}.np-error-text{color:var(--muted);margin:0;font-size:13px}@media (prefers-reduced-motion:reduce){.now-playing-dot,.np-skel-block{animation:none}.now-playing-bar{transition:none}}#admin-trigger{color:inherit;cursor:inherit;-webkit-user-select:none;user-select:none;text-decoration:none}.sao-auth-slot{flex-shrink:0;align-items:center;margin-left:auto;margin-right:10px;display:flex}.sao-auth-avatar-btn{border:2px solid var(--sao-active);color:#fff;background:#f5a62340;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:13px;font-weight:700;text-decoration:none;transition:box-shadow .2s,transform .2s;display:flex;position:relative}.sao-auth-avatar-btn:hover{box-shadow:0 0 0 3px var(--sao-active-glow);transform:scale(1.07)}.sao-auth-avatar-btn.has-decoration{background:0 0;border-color:#0000}.sao-auth-avatar-btn.has-decoration:hover{box-shadow:none}.sao-auth-avatar-img{object-fit:cover;border-radius:50%;width:100%;height:100%;display:block}.sao-auth-decoration{pointer-events:none;z-index:2;width:125%;height:125%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.sao-auth-label{color:var(--muted);margin-left:8px;font-size:13px;font-weight:600;text-decoration:none;transition:color .15s}.sao-auth-label:hover{color:var(--sao-active)}.sao-auth-login-btn{background:var(--sao-active);color:#1a0f00;cursor:pointer;white-space:nowrap;border:none;border-radius:10px;padding:6px 14px;font-family:inherit;font-size:13px;font-weight:700;transition:filter .15s,transform .15s}.sao-auth-login-btn:hover{filter:brightness(1.1);transform:translateY(-1px)}@media (prefers-reduced-motion:reduce){.sao-auth-avatar-btn,.sao-auth-login-btn{transition:none}}
