:root{--color-green:#99fe01;--color-black:#111;--color-ink:#050505;--color-white:#fff;--color-gray:#efefef;--color-page:#f1f1f1;--color-muted:#777;--layout-site-max:1160px;--layout-content-max:1080px;--layout-mobile-max:430px;--layout-page-padding:24px;--layout-mobile-padding:20px}@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-black:#000;--color-white:#fff;--spacing:.25rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.relative{position:relative}.static{position:static}.start{inset-inline-start:var(--spacing)}.hidden{display:none}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}*{box-sizing:border-box}html,body{background:var(--color-page);width:100%;min-height:100%;color:var(--color-black);margin:0;font-family:Arial,PingFang SC,Microsoft YaHei,sans-serif;overflow-x:hidden}button,input,textarea{font:inherit}button{color:inherit}button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--color-black);outline-offset:3px}.site-shell{background:var(--color-page);min-height:100dvh}.site-main{min-height:100dvh}.site-header{top:max(16px, env(safe-area-inset-top));z-index:80;width:min(calc(100% - 32px), var(--layout-content-max));-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);opacity:1;will-change:transform, opacity;background:#ffffffc7;border-radius:999px;justify-content:space-between;align-items:center;min-height:52px;padding:0 18px;transition:transform .24s,opacity .24s;display:flex;position:fixed;left:50%;transform:translate(-50%)}.site-header.is-hidden{opacity:0;pointer-events:none;transform:translate(-50%,calc(-100% - 24px))}.site-brand,.site-nav a,.site-cta{color:inherit;text-decoration:none}.site-brand{flex:none;align-items:center;gap:8px;height:36px;display:inline-flex}.site-brand-logo,.mobile-brand-logo{aspect-ratio:1;object-fit:contain;width:36px;height:auto;display:block}.site-brand-word{color:var(--color-ink);letter-spacing:0;font-size:16px;font-weight:900;line-height:1}.site-nav{align-items:center;gap:24px;font-size:14px;font-weight:700;display:flex}.site-menu-button{background:var(--color-ink);width:42px;height:42px;color:var(--color-white);cursor:pointer;-webkit-tap-highlight-color:transparent;border:0;border-radius:50%;font-size:28px;line-height:1;display:none}.mobile-menu-modal{z-index:90;opacity:1;background:#00000052;animation:.18s both mobile-menu-fade;display:none;position:fixed;inset:0}.mobile-menu-panel{top:max(76px, calc(env(safe-area-inset-top) + 64px));right:max(14px, env(safe-area-inset-right));-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffffff0;border-radius:8px;width:min(100vw - 28px,280px);padding:16px;animation:.2s cubic-bezier(.22,.8,.2,1) both mobile-menu-rise;position:absolute;box-shadow:0 24px 80px #0000002e}.mobile-menu-top{color:var(--color-ink);justify-content:space-between;align-items:center;gap:12px;font-weight:900;display:flex}.mobile-brand-logo{flex:none;width:36px}.mobile-menu-top button{background:var(--color-ink);width:36px;height:36px;color:var(--color-white);cursor:pointer;border:0;border-radius:50%;place-items:center;font-size:22px;line-height:1;display:grid}.mobile-menu-links{gap:8px;margin-top:14px;display:grid}.mobile-menu-links a{background:var(--color-page);min-height:46px;color:var(--color-ink);border-radius:8px;align-items:center;padding:0 12px;font-size:15px;font-weight:900;text-decoration:none;display:flex}@keyframes mobile-menu-fade{0%{opacity:0}}@keyframes mobile-menu-rise{0%{opacity:0;transform:translateY(-8px)}}.site-section{width:min(calc(100% - 32px), var(--layout-content-max));margin:0 auto;padding:120px 0}.site-hero{align-content:center;min-height:92dvh;display:grid}.site-kicker{color:var(--color-muted);letter-spacing:.08em;margin:0 0 14px;font-size:13px;font-weight:900}.site-section h1{letter-spacing:0;max-width:760px;margin:0;font-size:clamp(48px,8vw,96px);font-weight:900;line-height:.96}.site-section h2{margin:0;font-size:clamp(32px,5vw,58px);line-height:1}.site-section p{color:#666;max-width:560px;margin:24px 0 0;font-size:18px;line-height:1.7}.site-cta{background:var(--color-ink);width:fit-content;color:var(--color-green);border-radius:999px;margin-top:32px;padding:13px 22px;font-weight:900}.site-footer{width:min(calc(100% - 32px), var(--layout-content-max));color:#888;justify-content:space-between;gap:16px;margin:0 auto;padding:42px 0;font-size:12px;display:flex}.feedback-shell{min-height:100dvh}.feedback-shell>.site-footer{z-index:10;width:min(calc(100% - 48px), var(--layout-content-max));padding:12px 0 max(12px, env(safe-area-inset-bottom));color:#0000007a;pointer-events:none;font-size:10px;position:fixed;bottom:0;left:0;right:0}.home-section{width:100%;position:relative;overflow:hidden}.home-hero{background:var(--color-white);align-items:center;min-height:100dvh;padding:118px 0 56px;display:grid}.home-hero-grid,.campus-grid,.testimonial-inner,.join-grid{width:min(calc(100% - 48px), var(--layout-site-max));margin:0 auto}.home-hero-grid{grid-template-columns:minmax(280px,.78fr) minmax(420px,1.22fr);align-items:center;gap:clamp(28px,4vw,64px);display:grid}.home-hero-copy{width:min(100%,clamp(280px,30vw,430px));min-width:0;max-width:100%}.home-eyebrow{color:var(--color-black);letter-spacing:0;margin:0 0 18px;font-size:clamp(15px,1.8vw,22px);font-weight:900;line-height:1.2}.home-hero h1,.campus-copy h2,.testimonial-section h2,.join-copy h2{color:var(--color-ink);letter-spacing:0;margin:0;font-weight:900}.home-hero h1{overflow-wrap:anywhere;justify-items:start;gap:6px;font-size:clamp(54px,6.5vw,96px);line-height:.92;display:grid}.home-hero mark{background:var(--color-green);color:inherit;border-radius:8px;padding:0 .1em .05em}.home-hero-copy>p:not(.home-eyebrow){color:#666;max-width:100%;margin:22px 0 0;font-size:15px;line-height:1.65}.home-actions{flex-wrap:wrap;align-items:center;gap:14px;margin-top:28px;display:flex}.home-button{border:1px solid var(--color-ink);min-height:42px;color:inherit;border-radius:999px;justify-content:center;align-items:center;padding:0 24px;font-size:15px;font-weight:900;text-decoration:none;display:inline-flex}.home-button-primary{border-color:var(--color-green);background:var(--color-green);color:var(--color-ink)}.home-button-secondary,.home-button-light{background:var(--color-white);color:var(--color-ink)}.about-page{width:100%;margin:0;padding:148px 0 0}.about-manifesto{text-align:center;margin:64px 0 82px;padding:0 clamp(24px,6vw,96px)}.about-manifesto p{max-width:700px;margin:0 auto;font-size:clamp(20px,3vw,34px);font-weight:900;line-height:1.25}.about-team-heading{justify-content:space-between;align-items:end;margin-bottom:30px;display:flex}.about-team-heading .site-kicker{margin:0}.about-team-heading h2,.about-join h2{margin:0;font-size:clamp(34px,5vw,62px);line-height:.95}.about-members{padding:0 clamp(24px,6vw,96px);overflow:hidden}.about-members-track{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(20px,4vw,56px);display:grid}.about-member-image{aspect-ratio:1;background:#e7e7e7;border-radius:50%;width:clamp(96px,11vw,136px);margin:0 auto;position:relative;overflow:hidden}.about-member-image img{object-fit:cover;transition:transform .35s}.about-member:hover .about-member-image img{transform:scale(1.03)}.about-member-info{text-align:center;padding-top:20px}.about-member-info h3{margin:0;font-size:clamp(30px,4vw,48px);line-height:1}.about-member-role{color:var(--color-black);margin:8px 0 0;font-weight:900}.about-member-info>p:last-child{color:#666;max-width:430px;margin:16px auto 0;line-height:1.7}.about-join{background:var(--color-black);color:var(--color-white);margin-top:148px;padding:clamp(34px,6vw,72px)}.about-join .site-kicker{color:var(--color-green)}.about-join p:not(.site-kicker){color:#c8c8c8;max-width:560px;margin:24px 0 0;line-height:1.75}.about-join .home-button{margin-top:30px}.home-notice-backdrop{z-index:100;background:#0000006b;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.home-notice{background:var(--color-white);width:min(100%,420px);color:var(--color-ink);text-align:center;border-radius:24px;padding:34px 32px 30px;position:relative;box-shadow:0 24px 70px #0003}.home-notice h2{margin:0;font-size:clamp(20px,3vw,28px)}.home-notice p{color:var(--color-muted);margin:12px 0 0;font-size:15px}.home-notice-close{color:var(--color-muted);cursor:pointer;background:0 0;border:0;font-size:28px;line-height:1;position:absolute;top:10px;right:14px}.home-metrics{grid-template-columns:repeat(3,max-content);gap:22px;margin:30px 0 0;display:grid}.home-metrics div,.home-metrics dt,.home-metrics dd{margin:0}.home-metrics dt{font-size:18px;font-weight:900}.home-metrics dd{max-width:70px;color:var(--color-muted);margin-top:4px;font-size:10px;line-height:1.25}.home-scene-wrap{justify-self:end;width:min(88%,560px)}.home-scene{aspect-ratio:1.1;isolation:isolate;width:100%;min-height:380px;position:relative;overflow:hidden}.home-scene-static,.home-scene canvas{inset:0;width:100%!important;height:100%!important;position:absolute!important}.home-scene-static{z-index:1;object-fit:contain;object-position:center;transition:opacity .35s}.home-scene canvas{z-index:2;opacity:0;touch-action:none;transition:opacity .42s}.home-scene.is-ready canvas{opacity:1}.home-scene.is-ready .home-scene-static{opacity:0;pointer-events:none}.home-drag-hint{min-height:28px;color:var(--color-muted);justify-content:center;align-items:center;gap:7px;margin-top:8px;font-size:12px;font-weight:700;display:flex}.home-drag-hint span{color:var(--color-green);font-size:20px;line-height:1;animation:1.2s ease-in-out infinite swipe-hint-bounce}.campus-section{background:var(--color-green);padding:clamp(76px,10vw,126px) 0}.campus-grid{grid-template-columns:minmax(0,.95fr) minmax(360px,1fr);align-items:center;gap:clamp(42px,8vw,100px);display:grid}.campus-tags{flex-wrap:wrap;align-content:center;gap:14px 18px;display:flex}.campus-tags span{background:var(--color-white);min-height:34px;color:var(--color-ink);border-radius:999px;justify-content:center;align-items:center;padding:0 22px;font-size:16px;font-weight:800;display:inline-flex}.campus-copy h2{max-width:520px;font-size:clamp(44px,5.4vw,76px);line-height:1.05}.campus-copy p:not(.home-eyebrow){max-width:520px;color:var(--color-black);margin:28px 0 0;font-size:20px;font-weight:700;line-height:1.8}.testimonial-section{background:var(--color-white);padding:clamp(86px,11vw,150px) 0}.testimonial-inner{text-align:center}.testimonial-section h2{font-size:clamp(44px,6vw,84px);line-height:1.05}.testimonial-grid{margin-top:54px;overflow:hidden}.testimonial-track{transform:translateX(calc(var(--active-review) * -100%));transition:transform .7s cubic-bezier(.22,.8,.2,1);display:flex}.review-card{text-align:left;flex-direction:column;flex:0 0 100%;justify-content:space-between;align-items:center;gap:24px;min-height:320px;padding:0 8%;display:flex;position:relative}.review-avatar{object-fit:cover;object-position:center;background:var(--color-ink);width:96px;height:96px;color:var(--color-white);border-radius:50%;place-items:center;font-weight:900;display:grid}.review-card p{color:#222;background:#f0f0f0;border-radius:32px;flex:1;width:100%;margin:0;padding:42px 50px;font-size:clamp(17px,2vw,24px);line-height:1.5}.review-card footer{text-align:center;gap:4px;width:100%;padding-left:0;display:grid}.review-card strong{font-size:15px}.review-card span{color:var(--color-muted);font-size:13px}.carousel-dots{justify-content:center;gap:9px;margin-top:32px;display:flex}.carousel-dots button{cursor:pointer;background:#d8d8d8;border:0;border-radius:999px;width:28px;height:10px;padding:0}.carousel-dots .is-active{background:var(--color-ink)}.join-section{background:var(--color-ink);color:var(--color-white);padding:clamp(78px,9vw,130px) 0 64px}.join-grid{grid-template-columns:minmax(0,1fr) minmax(320px,420px);align-items:center;gap:clamp(44px,8vw,120px);display:grid}.join-pill{width:fit-content;color:var(--color-green);text-transform:uppercase;background:#99fe0147;border-radius:999px;margin:0 0 44px;padding:8px 18px;font-size:15px;font-weight:900;line-height:1}.join-copy h2{max-width:560px;color:var(--color-white);font-size:clamp(42px,5.6vw,78px);line-height:1.08}.join-copy>p:not(.join-pill){color:#ffffffc7;max-width:540px;margin:32px 0 0;font-size:19px;line-height:1.8}.join-qr{background:var(--color-white);color:var(--color-ink);border-radius:8px;justify-items:center;margin:0;padding:42px;display:grid}.join-qr img{width:min(100%,300px);height:auto}.join-qr figcaption{margin-top:18px;font-size:18px;font-weight:700}@media (width<=699px){.home-hero{min-height:auto;padding:92px 0 64px}.home-hero-grid,.campus-grid,.testimonial-inner,.join-grid{width:min(calc(100% - 40px), var(--layout-mobile-max))}.home-hero-grid,.campus-grid,.testimonial-grid,.join-grid{grid-template-columns:1fr}.home-hero-grid{gap:42px}.home-hero h1{font-size:clamp(44px,12vw,72px)}.home-hero-copy{width:100%}.home-hero-copy>p:not(.home-eyebrow){font-size:15px}.home-actions{gap:12px}.home-button{min-height:40px;padding:0 18px;font-size:13px}.home-metrics{display:none}.home-scene{aspect-ratio:.82;width:100%;min-height:auto}.home-scene-wrap{justify-self:stretch;width:100%}.campus-section,.testimonial-section,.join-section{padding:72px 0}.campus-grid{gap:34px}.campus-copy{text-align:center;order:-1}.campus-copy h2{font-size:clamp(34px,12vw,48px)}.campus-copy p:not(.home-eyebrow){margin-top:18px;font-size:14px;line-height:1.75}.campus-tags{justify-content:center;gap:10px}.campus-tags span{min-height:28px;padding:0 14px;font-size:12px}.testimonial-section h2{font-size:clamp(34px,12vw,52px)}.testimonial-grid{margin-top:34px}.review-card{text-align:center;background:0 0;flex-direction:column;justify-content:center;gap:28px;min-height:380px;padding:0 20px;display:flex}.review-avatar{flex:none;width:78px;height:78px;margin:0 auto}.review-card p{text-align:left;border-radius:24px;padding:28px 22px;font-size:16px}.review-card footer{text-align:center;padding-left:0;display:block}.review-card strong{color:var(--color-white)}.join-grid{gap:44px}.join-copy{text-align:center}.join-pill,.join-copy .home-actions{justify-content:center;margin-left:auto;margin-right:auto}.join-copy h2{font-size:clamp(36px,12vw,52px)}.join-copy>p:not(.join-pill){font-size:15px}.join-qr{padding:28px}.join-qr figcaption{font-size:15px}.feedback-shell>.site-footer{width:calc(100% - 32px);padding:8px 0 max(8px, env(safe-area-inset-bottom));text-align:center;flex-direction:column;align-items:center;gap:3px;font-size:8px;display:flex}.about-page{width:100%;padding:112px 0 0}.about-manifesto{margin:52px 0 68px;padding:0 20px}.about-manifesto p{font-size:22px}.about-team-heading{display:block}.about-team-heading h2{margin-top:12px}.about-members-track{transform:translateX(calc(var(--active-member) * -100%));will-change:transform;gap:0;transition:transform .65s cubic-bezier(.22,.8,.2,1);display:flex}.about-member{flex:0 0 100%;min-width:0;padding:0 4vw}.about-members{padding:0 20px 12px}.about-member-image{width:min(32vw,116px)}.about-join{margin-top:92px;padding:32px 24px 36px}.site-header{left:auto;right:max(14px, env(safe-area-inset-right));-webkit-backdrop-filter:none;backdrop-filter:none;opacity:1;background:0 0;justify-items:end;width:auto;min-height:48px;padding:0;display:grid;transform:translate(0)}.site-header.is-hidden{opacity:0;transform:translateY(calc(-100% - 24px))}.site-brand,.site-nav{display:none}.site-menu-button{place-items:center;display:inline-grid}.mobile-menu-modal{display:block}.site-section{padding:96px 0}.site-hero{min-height:88dvh}.site-section p{font-size:16px}.site-footer{flex-direction:column}}.punku-app{background:var(--color-white);width:100%;height:100dvh;position:fixed;inset:0;overflow:hidden}.home-screen{background:var(--color-page);z-index:2;transition:transform .72s cubic-bezier(.72,0,.2,1);position:absolute;inset:0;overflow:hidden;transform:translateY(0)}.home-screen.leaving{transform:translateY(-100%)}.home-content{width:min(100%, var(--layout-mobile-max));text-align:center;height:100dvh;min-height:0;padding:max(clamp(14px, 5.5dvh, 60px), env(safe-area-inset-top)) 14px max(clamp(30px, 4.2dvh, 40px), env(safe-area-inset-bottom));flex-direction:column;align-items:center;margin:0 auto;display:flex}@media (width>=700px){.feedback-shell .site-header{top:20px}.feedback-shell .home-content{padding-top:max(104px,12dvh)}}.main-logo{aspect-ratio:1;object-fit:contain;flex:none;width:clamp(40px,13vw,55px);height:auto;display:block}.hero-title{white-space:nowrap;letter-spacing:-.055em;justify-content:center;align-items:center;gap:clamp(6px,1.1dvh,9px);width:100%;margin:clamp(10px,2.3dvh,22px) 0 0;font-size:clamp(17px,5.7vw,23px);font-weight:900;line-height:1.25;display:flex}.hero-title span{background:var(--color-green);border-radius:999px;padding:clamp(5px,.8dvh,7px) clamp(9px,2.8vw,12px) clamp(6px,.9dvh,8px)}.hero-title strong{font-weight:900}.hero-copy{color:#919191;letter-spacing:-.035em;margin:clamp(10px,2.6dvh,27px) 0 0;font-size:clamp(14px,2dvh,17px);font-weight:400;line-height:1.55}.spline-card{aspect-ratio:.8125;background:var(--color-white);isolation:isolate;border-radius:clamp(34px,6.3dvh,54px);width:min(66vw,31dvh,280px);margin-top:clamp(10px,2.8dvh,30px);position:relative;overflow:hidden}.spline-card canvas{z-index:2;opacity:0;touch-action:none;transition:opacity .42s;display:block;position:absolute;inset:0;width:100%!important;height:100%!important}.scene-placeholder{z-index:1;object-fit:contain;object-position:center;transition:opacity .42s;inset:0;width:100%!important;height:100%!important;position:absolute!important}.spline-card.is-ready canvas{opacity:1}.spline-card.is-ready .scene-placeholder{opacity:0;pointer-events:none}.scene-loading{z-index:1;background:linear-gradient(145deg, var(--color-white) 35%, #f5f5f5);place-items:center;transition:opacity .35s;display:grid;position:absolute;inset:0}.scene-loading span{border:4px solid #e8e8e8;border-top-color:var(--color-green);border-radius:50%;width:38px;height:38px;animation:.8s linear infinite scene-spin}.spline-card.is-ready .scene-loading{opacity:0;pointer-events:none}@keyframes scene-spin{to{transform:rotate(360deg)}}.drag-hint{color:#a7a7a7;letter-spacing:.03em;margin-top:clamp(5px,1.4dvh,14px);font-size:12px}.drag-hint span{color:#888;margin-right:6px;font-size:9px}.noise-action{margin-top:clamp(12px,4.5dvh,51px)}.noise-action p{color:#8c8c8c;letter-spacing:-.035em;margin:0;font-size:clamp(14px,2dvh,17px)}.noise-action p strong{color:var(--color-ink);font-size:clamp(22px,3.1dvh,26px);font-weight:900}.make-noise{min-width:124px;min-height:clamp(38px,5dvh,43px);color:var(--color-green);letter-spacing:-.04em;cursor:pointer;box-shadow:none;background:#000;border:0;border-radius:999px;margin-top:clamp(6px,1.4dvh,12px);padding:0 20px;font-size:clamp(17px,2.4dvh,20px);font-weight:900;transition:transform .18s,box-shadow .18s}.make-noise:active{transform:scale(.97)}.other-voices-link{color:#8c8c8c;font:inherit;text-underline-offset:3px;cursor:pointer;background:0 0;border:0;margin:10px auto 0;padding:0;font-size:13px;text-decoration:underline;display:block}.other-voices-link:active{color:var(--color-ink)}.modal-backdrop{z-index:20;background:#00000047;justify-content:center;align-items:flex-end;animation:.24s both backdrop-in;display:flex;position:fixed;inset:0}@keyframes backdrop-in{0%{opacity:0}}.voice-modal{overscroll-behavior:contain;width:min(100%,520px);max-height:calc(100dvh - 24px);padding:36px 22px max(45px, env(safe-area-inset-bottom));background:var(--color-white);text-align:center;touch-action:pan-x;-webkit-user-select:none;user-select:none;will-change:transform;border-radius:28px 28px 0 0;transition:transform .18s,box-shadow .18s;animation:.38s cubic-bezier(.22,.8,.2,1) both modal-up;position:relative;overflow-y:auto;box-shadow:0 -20px 60px #0000001f}.voice-modal.dragging{transition:none}.voice-modal.swipe-ready{box-shadow:0 -28px 70px #99fe0138}@keyframes modal-up{0%{transform:translateY(100%)}}.modal-close{cursor:pointer;background:#f2f2f2;border:0;border-radius:50%;width:34px;height:34px;font-size:22px;line-height:1;position:absolute;top:14px;right:16px}.modal-heading{max-width:380px;margin:8px auto 24px}.modal-heading h2{color:var(--color-ink);letter-spacing:-.03em;margin:0;font-size:clamp(24px,6.2vw,31px);font-weight:900;line-height:1.18}.modal-heading p{color:#8c8c8c;min-height:3.3em;margin:10px 0 0;font-size:clamp(13px,3.5vw,15px);font-weight:700;line-height:1.65}.voice-modal textarea,.identity-fields input{width:min(100%,390px);color:var(--color-black);text-align:center;background:#f8f8f8;border:1px solid #e1e1e1;border-radius:14px}.voice-modal textarea{resize:none;text-align:left;touch-action:auto;-webkit-user-select:text;user-select:text;height:150px;margin:8px auto 0;padding:18px;line-height:1.65;display:block}.publish-modes{grid-template-columns:1fr 1fr;gap:10px;width:min(100%,390px);margin:22px auto 0;display:grid}.publish-modes button{background:var(--color-white);cursor:pointer;border:1px solid #e5e5e5;border-radius:14px;min-height:48px;font-size:14px;font-weight:750}.publish-modes button.active:first-child{border-color:var(--color-gray);background:var(--color-gray);color:var(--color-black)}.publish-modes button.active:last-child{border-color:var(--color-green);background:var(--color-green);color:var(--color-white)}.identity-fields{gap:10px;width:min(100%,390px);margin:12px auto 0;animation:.2s both fields-in;display:grid}@keyframes fields-in{0%{opacity:0;transform:translateY(-8px)}}.identity-fields input{height:46px;padding:0 14px}.beta-choice{cursor:pointer;background:#f8f8f8;border-radius:14px;justify-content:center;align-items:center;gap:9px;min-height:44px;padding:0 14px;font-size:12px;display:flex}.beta-choice input{width:16px;height:16px;accent-color:var(--color-green)}.error-message{color:#ec4e4e;margin:10px 0 0;font-size:12px}.page-swipe-hint{color:#929292;pointer-events:none;flex-direction:column;justify-content:center;align-items:center;width:min(100%,390px);min-height:58px;margin:18px auto 0;transition:color .18s,transform .18s;display:flex}.page-swipe-hint span{color:var(--color-green);font-size:26px;line-height:1;animation:1.2s ease-in-out infinite swipe-hint-bounce;display:inline-block}.page-swipe-hint strong{margin-top:5px;font-size:13px}.voice-modal.swipe-ready .page-swipe-hint{color:var(--color-black);transform:translateY(-4px)}@keyframes swipe-hint-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-7px)}}@media (prefers-reduced-motion:reduce){.page-swipe-hint span{animation:none}}.circle-transition{z-index:40;pointer-events:none;position:fixed;inset:0;overflow:hidden}.circle-transition span{background:var(--color-green);border-radius:50%;width:100px;height:100px;margin-left:-50px;animation:.72s cubic-bezier(.7,0,.2,1) forwards circle-fill;position:absolute;bottom:-40px;left:50%;transform:scale(0)}@keyframes circle-fill{to{transform:scale(32)}}.success-screen{z-index:50;background:var(--color-green);color:var(--color-white);text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:24px;animation:.3s both success-in;display:flex;position:fixed;inset:0}@keyframes success-in{0%{opacity:0;transform:scale(1.03)}}.checkmark{border:3px solid var(--color-white);border-radius:50%;place-items:center;width:70px;height:70px;margin-bottom:27px;font-size:36px;font-weight:700;animation:.45s cubic-bezier(.2,1.4,.4,1) both check-pop;display:grid}@keyframes check-pop{0%{transform:scale(0)}}.success-screen h2{margin:0;font-size:clamp(25px,7vw,34px)}.success-screen p{margin:13px 0 0;font-size:15px;font-weight:600}.thanks-wall{z-index:10;touch-action:pan-y;background:var(--color-white);color:var(--color-ink);grid-template-rows:25.35dvh 34px 43.43dvh minmax(0,1fr);animation:.4s both wall-in;display:grid;position:fixed;inset:0;overflow:hidden}.page-back{top:max(14px, env(safe-area-inset-top));left:max(14px, env(safe-area-inset-left));z-index:3;min-width:70px;min-height:34px;color:var(--color-ink);cursor:pointer;-webkit-tap-highlight-color:transparent;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffb8;border:0;border-radius:999px;justify-content:center;align-items:center;gap:3px;padding:0 12px 0 9px;font-size:12px;font-weight:800;line-height:1;display:inline-flex;position:absolute}.page-back:active{transform:scale(.95)}.ideas-wall .page-back{color:var(--color-white);background:#ffffff29;border:1px solid #ffffff47}@keyframes wall-in{0%{opacity:0;transform:translateY(16px)}}.thanks-heading{min-height:0;padding-top:max(clamp(28px, 9.4dvh, 80px), env(safe-area-inset-top));text-align:center}.thanks-heading h1{letter-spacing:-.045em;margin:0;font-size:clamp(32px,min(10.2vw,5.2dvh),44px);font-weight:900;line-height:1.2}.punku-ticker{background:var(--color-green);width:100%;height:100%;color:var(--color-ink);cursor:pointer;border:0;padding:0;overflow:hidden}.ticker-track{will-change:transform;align-items:center;gap:24px;width:max-content;height:100%;padding:0 18px;font-size:15px;font-weight:900;line-height:1;animation:2.8s linear infinite ticker-warning;display:flex}@keyframes ticker-warning{0%{transform:translate(-83px)}to{transform:translate(0)}}.bubble-stage{background:var(--color-white);min-height:0;position:relative;overflow:hidden}.empty-wall-note,.empty-ideas-note{color:#0505055c;letter-spacing:0;text-align:center;place-items:center;margin:0;font-size:13px;font-weight:700;display:grid;position:absolute;inset:0}.name-bubble{left:var(--x);min-width:72px;max-width:112px;height:24px;padding:2px calc(14px * var(--size)) 0;background:var(--bubble-color);color:var(--color-ink);font-size:calc(15px * var(--size));white-space:nowrap;text-align:center;text-overflow:ellipsis;opacity:0;will-change:transform, opacity;animation:bubble-rise var(--duration) linear var(--delay) infinite;border:0;border-radius:999px;font-weight:500;line-height:22px;position:absolute;bottom:-34px;overflow:hidden}@keyframes bubble-rise{0%{opacity:0;transform:translate(0)scale(.88)}10%{opacity:.95}45%{opacity:1;transform:translate3d(calc(var(--drift) / 2), -190px, 0) scale(1)}82%{opacity:.86}to{opacity:0;transform:translate3d(var(--drift), -420px, 0) scale(.94)}}.noise-collection{text-align:center;min-height:0;padding-top:clamp(10px,3.2dvh,27px)}.noise-collection h2{letter-spacing:-.075em;margin:0;font-size:clamp(28px,min(9vw,4.6dvh),39px);font-weight:900;line-height:1.2}.noise-collection p{color:#9a9a9a;letter-spacing:-.035em;margin:clamp(6px,1.55dvh,13px) 0 0;font-size:clamp(13px,1.9dvh,16px)}.noise-collection strong{color:var(--color-ink);margin-left:5px;font-size:clamp(21px,3.05dvh,26px);font-weight:900}.sound-wave{justify-content:center;align-items:center;gap:2px;height:clamp(32px,6.5dvh,56px);margin-top:clamp(2px,.8dvh,7px);display:flex}.sound-wave-trigger{width:min(100%,220px);color:var(--color-ink);cursor:pointer;isolation:isolate;touch-action:pan-y;background:0 0;border:0;place-items:center;margin:clamp(2px,.8dvh,7px) auto 0;padding:0 0 7px;display:grid;position:relative}.sound-wave-trigger .sound-wave{margin-top:0}.sound-wave-trigger:before,.sound-wave-trigger:after{content:"";opacity:0;pointer-events:none;border:2px solid #99fe0194;border-radius:50%;width:72px;height:72px;position:absolute;top:42%;left:50%;transform:translate(-50%,-50%)scale(.38)}.sound-wave-trigger.is-opening:before{animation:.52s cubic-bezier(.2,.75,.2,1) both wave-ring}.sound-wave-trigger.is-opening:after{animation:.52s cubic-bezier(.2,.75,.2,1) 90ms both wave-ring}.sound-wave-copy{color:#9a9a9a;letter-spacing:-.02em;margin-top:0;font-size:clamp(12px,1.65dvh,14px);font-weight:500}@keyframes wave-ring{0%{opacity:.95;transform:translate(-50%,-50%)scale(.32)}to{opacity:0;transform:translate(-50%,-50%)scale(2.8)}}.sound-wave span{background:var(--color-green);border-radius:999px;flex:0 0 3px;width:3px;animation:.9s ease-in-out infinite alternate wave-pulse}.sound-wave span:first-child,.sound-wave span:nth-child(9){height:clamp(12px,2dvh,17px);animation-delay:-.1s}.sound-wave span:nth-child(2),.sound-wave span:nth-child(8){height:clamp(20px,3.5dvh,30px);animation-delay:-.35s}.sound-wave span:nth-child(3),.sound-wave span:nth-child(7){height:clamp(27px,5dvh,43px);animation-delay:-.55s}.sound-wave span:nth-child(4),.sound-wave span:nth-child(6){height:clamp(32px,6.1dvh,52px);animation-delay:-.75s}.sound-wave span:nth-child(5){height:clamp(26px,4.9dvh,42px);animation-delay:-.25s}@keyframes wave-pulse{to{transform:scaleY(.75)}}.ideas-wall{z-index:12;color:var(--color-ink);touch-action:pan-y;background:#000;grid-template-rows:20.5dvh minmax(0,1fr);transition:transform .18s;animation:.48s cubic-bezier(.22,.8,.2,1) both ideas-in;display:grid;position:fixed;inset:0;overflow:hidden}@keyframes ideas-in{0%{opacity:0;transform:translate(34px)}}.ideas-hero{min-height:0;padding-top:max(clamp(28px, 6dvh, 50px), env(safe-area-inset-top));background:var(--color-green);text-align:center}.ideas-hero h1{letter-spacing:0;margin:0;font-size:clamp(35px,min(9.5vw,4.6dvh),44px);font-weight:900;line-height:1}.ideas-hero p{margin:clamp(12px,2dvh,18px) 0 0;font-size:clamp(14px,1.85dvh,16px);font-weight:500;line-height:1.45}.ideas-stream{background:var(--color-gray);min-height:0;position:relative;overflow:hidden}.empty-ideas-note{font-size:12px}.idea-card{top:var(--top);width:min(var(--card-width), 52vw);border:2px solid var(--color-ink);background:var(--color-white);will-change:transform;min-height:48px;animation:danmaku-move var(--duration) linear var(--delay) infinite;border-radius:10px;padding:9px 13px 8px;position:absolute;left:100%;box-shadow:2px 5px #0000002e}.idea-card header{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.idea-card strong{min-width:0;color:var(--color-ink);white-space:nowrap;text-overflow:ellipsis;font-size:11px;font-weight:900;line-height:1.2;overflow:hidden}.idea-card time{color:#b8b8b8;flex:none;font-size:7px;line-height:1}.idea-card p{color:var(--color-ink);white-space:nowrap;text-overflow:ellipsis;margin:7px 0 0;font-size:9px;line-height:1.45;overflow:hidden}@keyframes danmaku-move{0%{transform:translate(42px)}to{transform:translate(calc(-100vw - 300px))}}@supports not (height:1dvh){.punku-app,.home-content{height:100vh}.home-content{padding:max(clamp(14px, 5.5vh, 60px), env(safe-area-inset-top)) 14px max(clamp(30px, 4.2vh, 40px), env(safe-area-inset-bottom))}.hero-title{gap:clamp(6px,1.1vh,9px);margin-top:clamp(10px,2.3vh,22px)}.hero-title span{padding-top:clamp(5px,.8vh,7px);padding-bottom:clamp(6px,.9vh,8px)}.hero-copy{margin-top:clamp(10px,2.6vh,27px);font-size:clamp(14px,2vh,17px)}.spline-card{border-radius:clamp(34px,6.3vh,54px);width:min(66vw,31vh,280px);margin-top:clamp(10px,2.8vh,30px)}.drag-hint{margin-top:clamp(5px,1.4vh,14px)}.noise-action{margin-top:clamp(12px,4.5vh,51px)}.noise-action p{font-size:clamp(14px,2vh,17px)}.noise-action p strong{font-size:clamp(22px,3.1vh,26px)}.make-noise{min-height:clamp(38px,5vh,43px);margin-top:clamp(6px,1.4vh,12px);font-size:clamp(17px,2.4vh,20px)}.thanks-wall{grid-template-rows:25.35vh 34px 43.43vh minmax(0,1fr)}.thanks-heading{padding-top:max(clamp(28px, 9.4vh, 80px), env(safe-area-inset-top))}.thanks-heading h1{font-size:clamp(32px,min(10.2vw,5.2vh),44px)}.noise-collection{padding-top:clamp(10px,3.2vh,27px)}.noise-collection h2{font-size:clamp(28px,min(9vw,4.6vh),39px)}.noise-collection p{margin-top:clamp(6px,1.55vh,13px);font-size:clamp(13px,1.9vh,16px)}.noise-collection strong{font-size:clamp(21px,3.05vh,26px)}.sound-wave{height:clamp(32px,6.5vh,56px);margin-top:clamp(2px,.8vh,7px)}.sound-wave-trigger{margin-top:clamp(2px,.8vh,7px)}.ideas-wall{grid-template-rows:20.5vh minmax(0,1fr)}.ideas-hero{padding-top:max(clamp(28px, 6vh, 50px), env(safe-area-inset-top))}.ideas-hero h1{font-size:clamp(35px,min(9.5vw,4.6vh),44px)}.ideas-hero p{margin-top:clamp(12px,2vh,18px);font-size:clamp(14px,1.85vh,16px)}.sound-wave span:first-child,.sound-wave span:nth-child(9){height:clamp(12px,2vh,17px)}.sound-wave span:nth-child(2),.sound-wave span:nth-child(8){height:clamp(20px,3.5vh,30px)}.sound-wave span:nth-child(3),.sound-wave span:nth-child(7){height:clamp(27px,5vh,43px)}.sound-wave span:nth-child(4),.sound-wave span:nth-child(6){height:clamp(32px,6.1vh,52px)}.sound-wave span:nth-child(5){height:clamp(26px,4.9vh,42px)}}@media (height<=700px){.thanks-wall{grid-template-rows:24dvh 32px 39dvh minmax(0,1fr)}.ideas-wall{grid-template-rows:18dvh minmax(0,1fr)}.ideas-hero{padding-top:max(clamp(23px, 5.2dvh, 36px), env(safe-area-inset-top))}.ideas-hero h1{font-size:clamp(32px,min(9vw,4.8dvh),39px)}.ideas-hero p{margin-top:10px;font-size:13px}.idea-card{width:min(var(--card-width), 50vw);min-height:45px;padding:8px 12px 7px}}@supports not (height:1dvh){@media (height<=700px){.thanks-wall{grid-template-rows:24vh 32px 39vh minmax(0,1fr)}.ideas-wall{grid-template-rows:18vh minmax(0,1fr)}}}@media (width>=700px){.home-content{width:var(--layout-mobile-max)}.thanks-wall,.ideas-wall{width:430px;margin-left:-215px;left:50%;right:auto}}@media (height<=670px){.voice-modal{padding-top:28px}.modal-heading{margin-bottom:18px}.modal-heading p{min-height:0}.voice-modal textarea{height:120px}.page-swipe-hint{min-height:48px;margin-top:10px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}
