@font-face{font-family:"IBM Plex Serif";src:url(/glass-ripple/assets/IBMPlexSerif-Regular-C9sZyoRs.woff2) format("woff2");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:IBM Plex Sans;src:url(/glass-ripple/assets/IBMPlexSans-Medium-BQLKo0ot.woff2) format("woff2");font-style:normal;font-weight:500;font-display:swap}@font-face{font-family:IBM Plex Sans;src:url(/glass-ripple/assets/IBMPlexSans-SemiBold-KfaJl9PC.woff2) format("woff2");font-style:normal;font-weight:600;font-display:swap}@font-face{font-family:IBM Plex Sans JP;src:url(/glass-ripple/assets/IBMPlexSansJP-Regular-DpIIxYdf.woff2) format("woff2");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:IBM Plex Mono;src:url(/glass-ripple/assets/IBMPlexMono-Regular-C-SBB-bw.woff2) format("woff2");font-style:normal;font-weight:400;font-display:swap}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{width:100%;height:100%;overflow:hidden;background:#020202;color:#f7f7f5;font-family:IBM Plex Sans,IBM Plex Sans JP;font-size:16px;font-synthesis:none}button,a{font:inherit}button{color:inherit}a{color:inherit;text-decoration:none}#app{position:relative;width:100%;height:100vh;overflow:hidden}#canvas-wrap{position:absolute;inset:0}#canvas{display:block;width:100%;height:100%}.overlay{position:absolute;z-index:1;inset:0;pointer-events:none}.overlay--radial{opacity:.3;background:radial-gradient(ellipse at top,#1b1b1b,transparent 50%)}.overlay--fade{background:linear-gradient(to bottom,transparent 58%,#020202 100%)}#text-overlay{position:absolute;z-index:2;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:10px;width:min(100%,1237px);margin:0 auto;padding:16px 16px 86px;pointer-events:none}#text-overlay h1{--title-size: 48px;width:min(100%,1000px);color:#f7f7f5;font-family:"IBM Plex Serif";font-size:var(--title-size);font-weight:400;line-height:1.1;letter-spacing:-.8px;text-align:center;text-shadow:0 0 60px rgba(217,119,87,.24);transition:opacity .16s ease}#text-overlay h1.fade-out{opacity:0}#text-overlay h1[data-layout-state=error]{color:#ffb4a9;font-family:IBM Plex Sans;font-size:14px;font-weight:600;letter-spacing:0}.install-bar{display:inline-flex;align-items:center;overflow:hidden;border:1px solid rgba(255,255,255,.06);border-radius:20px;background:#ffffff0a;backdrop-filter:blur(16px);pointer-events:auto;-webkit-backdrop-filter:blur(16px)}.install-bar code{padding:8px 14px;color:#d97757db;font-family:IBM Plex Mono;font-size:14px;line-height:1;white-space:nowrap;-webkit-user-select:all;user-select:all}#copy-btn{display:flex;width:88px;min-height:32px;align-items:center;justify-content:center;gap:4px;padding:7px 12px;border:0;background:#ffffff0a;box-shadow:inset 1px 0 #ffffff0f;color:#ffffff6b;cursor:pointer;font-family:IBM Plex Sans;font-size:14px;font-weight:500;line-height:1;transition:color .16s ease-out,background-color .16s ease-out}#copy-btn svg{flex:0 0 auto}#copy-btn[data-state=copied]{color:#ffffffdb}.hero-links{display:flex;gap:6px;pointer-events:auto}.hero-badge{display:inline-flex;min-height:32px;align-items:center;gap:5px;padding:5px 10px;border-radius:16px;color:#ffffff6b;font-family:IBM Plex Sans;font-size:14px;font-weight:500;line-height:1;transition:color .16s ease-out}.hero-badge__icon{width:12px;height:12px;flex:0 0 auto}.picker-shell{position:fixed;z-index:10;right:0;bottom:0;left:0;display:grid;grid-template-columns:44px minmax(0,1fr) 44px;gap:6px;align-items:center;padding:8px max(8px,env(safe-area-inset-right)) calc(8px + env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));border-top:1px solid rgba(255,255,255,.08);background:#080808c2;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}#icon-picker{display:flex;min-width:0;align-items:center;gap:8px;overflow-x:auto;overflow-y:hidden;overscroll-behavior-inline:contain;scrollbar-width:none;-webkit-overflow-scrolling:touch}#icon-picker::-webkit-scrollbar{display:none}.picker-group{display:flex;flex-shrink:0;align-items:center;gap:8px}.picker-category{flex-shrink:0;padding:0 6px;color:#ffffff6b;font-family:IBM Plex Sans;font-size:14px;font-weight:600;letter-spacing:.7px;line-height:1;text-transform:uppercase;white-space:nowrap;-webkit-user-select:none;user-select:none}.picker-separator{width:1px;height:28px;flex-shrink:0;margin:0 4px;background:#ffffff1a}#icon-picker button,.picker-step{display:flex;width:44px;height:44px;flex-shrink:0;align-items:center;justify-content:center;border:1px solid transparent;border-radius:10px;background:#ffffff12;cursor:pointer}#icon-picker button{padding:7px;transition:background-color .14s ease-out,border-color .14s ease-out}#icon-picker button.active{border-color:#ffffff61;background:#ffffff26}#icon-picker button svg{width:100%;height:100%}.picker-step{--arrow-offset: 0px;--step-brightness: .96;--step-opacity: .58;padding:11px;border-color:#ffffff17;background:#ffffff0d;filter:brightness(var(--step-brightness));opacity:var(--step-opacity);transition:opacity .18s ease-out,filter .18s ease-out,background-color .18s ease-out,border-color .18s ease-out}.picker-step span{font-family:IBM Plex Sans;font-size:28px;font-weight:500;line-height:1;transform:translate3d(var(--arrow-offset),-1px,0);transition:transform .18s ease-out}.picker-step:disabled{cursor:default}#copy-btn:focus-visible,.hero-badge:focus-visible,#icon-picker button:focus-visible,.picker-step:focus-visible{outline:2px solid #f7f7f5;outline-offset:2px}@media(hover:hover)and (pointer:fine){#copy-btn:hover{color:#fffffff0;background:#ffffff14}.hero-badge:hover{color:#ffffffd1}}@media(max-width:640px){#text-overlay{padding-right:12px;padding-bottom:82px;padding-left:12px}.install-bar code{padding-right:11px;padding-left:11px}.picker-category{padding:0 4px}}@media(prefers-reduced-motion:reduce){#text-overlay h1,#copy-btn,.hero-badge,#icon-picker button,.picker-step{transition:none}.picker-step span{transform:translate3d(0,-1px,0);transition:none}}
