/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@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;--spacing:.25rem;--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}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.grid{display:grid}.hidden{display:none}.inline{display:inline}.table{display:table}.grow{flex-grow:1}}:root{--line:#ffffff1f;--text:#f4f8ff;--muted:#a79db2;--lime:#c7ff48;--purple:#a91cff;--pink:#ff2c91;--cyan:#19dfff}*{box-sizing:border-box}html{background:#08060d;max-width:100%;overflow-x:clip}body{min-height:100vh;color:var(--text);font-family:var(--font-jakarta), "Avenir Next", "Segoe UI", sans-serif;background:#08060d;max-width:100%;margin:0;overflow-x:hidden}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.shell{width:min(1220px,100vw - 32px);max-width:100%;margin:0 auto}.piano-challenge-page{isolation:isolate;background:#08060d;width:100%;max-width:100%;min-height:100vh;position:relative}.piano-challenge-page:before{content:"";z-index:-1;pointer-events:none;filter:saturate(1.04)contrast(1.04);background:#08060d url(/assets/piano-challenge-edges.jpg) 50%/cover no-repeat;animation:8s ease-in-out infinite alternate edgeGlow;position:fixed;inset:0}.site-header{z-index:20;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#040308c2;position:sticky;top:0}.site-header-inner,.footer-inner{justify-content:space-between;align-items:center;gap:18px;display:flex}.site-header-inner{min-height:78px}.brand{align-items:center;gap:12px;font-weight:800;display:inline-flex}.brand-mark{color:#0d1320;width:42px;height:42px;font-family:var(--font-archivo), sans-serif;background:linear-gradient(135deg,#fc7a1f,#ff8e53);border-radius:14px;place-items:center;font-weight:800;display:grid}.nav{justify-content:flex-end;align-items:center;gap:18px;display:flex}.nav a{color:#93a3c2;font-size:1.02rem;font-weight:800;transition:color .18s,transform .22s}.nav a:hover{color:#fff;transform:translateY(-1px)}.page{padding:32px 0 80px}.piano-page{z-index:1;flex-direction:column;padding-top:48px;padding-bottom:64px;display:flex;position:relative}.piano-page>.challenge-hero{order:1}.piano-page>.host-card{order:2}.piano-page>.timer-panel{order:3}.piano-page>.challenge-info{order:4}.piano-page>.instructions-card{order:5}.piano-page>.start-panel{order:6}.piano-page>.schedule-card{order:7}.piano-page>.participants-card{order:8}.piano-page>.contact-card{order:9}.challenge-hero{background:linear-gradient(90deg, #08060dfc 0 34%, #08060ddb 55%, #08060df5) padding-box, linear-gradient(115deg, var(--pink) 0%, var(--purple) 31%, #5e2e7e8c 48%, var(--lime) 74%, var(--cyan) 100%) border-box;isolation:isolate;border:2px solid #0000;grid-template-columns:minmax(0,.84fr) minmax(420px,1.16fr);align-items:center;gap:clamp(38px,5vw,70px);min-width:0;min-height:520px;padding:clamp(34px,5vw,64px);display:grid;position:relative;overflow:hidden;box-shadow:0 24px 70px #00000057,0 0 36px #a91cff12}.challenge-hero:after{content:"";z-index:-1;pointer-events:none;background:radial-gradient(circle at 7% 38%,#b51cff24,#0000 28%),radial-gradient(circle at 94% 58%,#c7ff4812,#0000 26%),linear-gradient(90deg,#08060d 0 29%,#08060de0 43%,#08060d4d 76%,#08060d7a);position:absolute;inset:0}.challenge-copy{min-width:0;animation:.65s cubic-bezier(.2,.8,.2,1) both copyIn}.hero-eyebrow{border-left:4px solid var(--lime);color:var(--lime);letter-spacing:.13em;text-transform:uppercase;background:#c7ff4814;margin:0 0 18px;padding:7px 11px;font-size:.68rem;font-weight:800;display:inline-flex}.challenge-copy h1{color:#fffdf8;max-width:100%;font-family:var(--font-archivo), sans-serif;letter-spacing:-.072em;text-transform:uppercase;margin:0 0 24px;font-size:clamp(3.45rem,4.5vw,5.35rem);line-height:.86}.challenge-copy h1 span{width:fit-content;color:var(--lime);text-shadow:5px 5px #8717cf;margin-top:.12em;display:block;position:relative}.challenge-copy h1 span:after{content:"";background:linear-gradient(90deg, var(--pink) 0 35%, #b51cff 35% 75%, transparent);height:4px;position:absolute;bottom:-10px;left:2px;right:-8px;transform:rotate(-1deg)}.challenge-intro{color:#bdb4c6;max-width:500px;margin:0;font-size:1.02rem;line-height:1.72}.challenge-intro strong{color:#fff}.host-card{background:linear-gradient(105deg, #11101a, #0b0912 52%, #0b0912) padding-box, linear-gradient(105deg, var(--cyan), var(--purple) 45%, var(--pink) 76%, var(--lime)) border-box;border:2px solid #0000;grid-template-columns:minmax(0,1fr) 240px;align-items:stretch;gap:28px;min-height:230px;margin-top:18px;display:grid;position:relative;overflow:hidden;box-shadow:0 18px 54px #0000004d,0 0 26px #a91cff14}.host-card:before{content:"";pointer-events:none;background:radial-gradient(circle,#19dfff29,#0000 70%);border-radius:50%;width:320px;height:220px;position:absolute;bottom:-150px;left:-130px}.host-card-copy{flex-direction:column;justify-content:center;padding:30px 0 30px 32px;display:flex}.host-card-copy>*{z-index:1;position:relative}.host-card-copy h2{color:#fff;font-family:var(--font-archivo), sans-serif;margin:0 0 18px;font-size:clamp(1.8rem,3.2vw,2.8rem);line-height:1}.host-card-copy p:not(.detail-kicker){color:#aaa1b4;margin:0 0 10px;line-height:1.5}.host-card-link{color:#0a0710;background:linear-gradient(105deg, var(--lime), #efff8e);width:fit-content;box-shadow:6px 6px 0 var(--purple);font-family:var(--font-archivo), sans-serif;letter-spacing:.05em;align-items:center;gap:12px;padding:12px 15px;font-size:.86rem;font-weight:800;display:inline-flex}.host-card-link:hover,.host-card-link:focus-visible{box-shadow:8px 8px 0 var(--purple);transform:translate(-2px,-2px)}.host-card-link:focus-visible{outline:3px solid var(--cyan);outline-offset:4px}.host-card-photo{background:#19dfff09;min-height:230px;padding:16px;display:flex;overflow:hidden}.host-card-photo img{border:2px solid var(--cyan);border-right-color:var(--pink);object-fit:cover;object-position:center 28%;filter:saturate(.92)contrast(1.04);width:100%;height:100%;min-height:0;box-shadow:6px 6px #a91cffb3}.contact-card{background:linear-gradient(105deg, #11101a, #0b0912 52%, #0b0912) padding-box, linear-gradient(105deg, var(--pink), var(--purple) 45%, var(--cyan) 76%, var(--lime)) border-box;border:2px solid #0000;justify-content:space-between;align-items:center;gap:24px;margin-top:18px;padding:26px 30px;display:flex;position:relative;overflow:hidden;box-shadow:0 18px 54px #0000004d,0 0 26px #a91cff14}.contact-card h2{color:#fff;max-width:650px;font-family:var(--font-archivo), sans-serif;margin:0 0 14px;font-size:clamp(1.55rem,2.7vw,2.15rem);line-height:1}.contact-card p:not(.detail-kicker){color:#aaa1b4;margin:0;line-height:1.5}.contact-card-link{color:#0a0710;background:linear-gradient(105deg, var(--lime), #efff8e);box-shadow:6px 6px 0 var(--purple);font-family:var(--font-archivo), sans-serif;letter-spacing:.04em;flex-shrink:0;align-items:center;gap:12px;padding:13px 15px;font-size:.82rem;font-weight:800;display:inline-flex}.contact-card-link:hover,.contact-card-link:focus-visible{box-shadow:8px 8px 0 var(--purple);transform:translate(-2px,-2px)}.contact-card-link:focus-visible{outline:3px solid var(--cyan);outline-offset:4px}.start-cta-wrap{flex-wrap:wrap;align-items:center;gap:14px 18px;margin-top:28px;display:flex}.start-cta{color:#0a0710;background:linear-gradient(105deg, var(--lime), #efff8e);min-height:56px;box-shadow:7px 7px 0 var(--purple), 0 0 26px #c7ff4829;font-family:var(--font-archivo), sans-serif;letter-spacing:.08em;align-items:center;gap:18px;padding:0 19px 0 24px;font-size:1.05rem;font-weight:800;transition:transform .18s,box-shadow .18s;display:inline-flex}.start-cta:hover,.start-cta:focus-visible{box-shadow:10px 10px 0 var(--purple), 0 0 34px #c7ff4847;transform:translate(-2px,-2px)}.start-cta:disabled{cursor:default;opacity:.7;transform:none}.start-cta:focus-visible{outline:3px solid var(--cyan);outline-offset:4px}.start-cta-arrow{color:var(--purple);font-size:1.45rem;line-height:1}.start-cta-arrow,.host-card-link span,.contact-card-link span,.upload-cta span,.upload-submit span,.next-button span,.upload-badge-icon{font-variant-emoji:text;font-family:Arial,Helvetica Neue,sans-serif}.start-cta-note{color:#a79db2;max-width:190px;margin:0;font-size:.76rem;line-height:1.45}.start-result{color:var(--lime);margin:16px 0 0;font-size:.82rem;line-height:1.45}.start-result.is-error{color:#ff8abf}.timer-panel{background:linear-gradient(#0b0912, #0b0912) padding-box, linear-gradient(100deg, var(--lime), var(--cyan), var(--purple)) border-box;border:2px solid #0000;justify-content:space-between;align-items:center;gap:24px;margin-top:18px;padding:24px 30px;display:flex;box-shadow:0 0 28px #19dfff1a}.timer-panel h2{font-family:var(--font-archivo), sans-serif;margin:0 0 8px;font-size:clamp(1.35rem,2.5vw,2rem)}.timer-panel p:last-child{color:#aaa1b4;margin:0;font-size:.86rem}.timer-panel.is-expired{background:linear-gradient(110deg, #120716fa, #0b0912fa) padding-box, linear-gradient(100deg, var(--pink), var(--purple), var(--lime)) border-box;position:relative;overflow:hidden}.timer-panel.is-expired:after{content:"";pointer-events:none;background:radial-gradient(circle,#c7ff483d,#a91cff14 44%,#0000 70%);border-radius:50%;width:220px;height:220px;position:absolute;top:-102px;right:-72px}.upload-state{z-index:1;position:relative}.upload-state h2{margin-bottom:8px}.upload-state>p:not(.detail-kicker){color:#c7bfce;max-width:620px;margin:0 0 18px;line-height:1.55}.upload-cta{color:#0a0710;background:linear-gradient(105deg, var(--lime), #efff8e);min-height:48px;box-shadow:6px 6px 0 var(--purple), 0 0 24px #c7ff4829;font-family:var(--font-archivo), sans-serif;letter-spacing:.08em;align-items:center;gap:14px;padding:0 17px 0 19px;font-size:.82rem;font-weight:800;transition:transform .18s,box-shadow .18s;display:inline-flex}.upload-cta:hover,.upload-cta:focus-visible{box-shadow:9px 9px 0 var(--purple), 0 0 30px #c7ff4847;transform:translate(-2px,-2px)}.upload-cta:focus-visible{outline:3px solid var(--cyan);outline-offset:4px}.upload-note{color:#9f96aa;margin:10px 0 0;font-size:.88rem}.timer-grid{grid-template-columns:repeat(4,minmax(58px,1fr));gap:8px;display:grid}.timer-grid span{text-align:center;background:#c7ff4814;border:1px solid #c7ff4866;min-width:66px;padding:10px 8px}.timer-grid strong{color:var(--lime);font-family:var(--font-archivo), sans-serif;font-size:1.45rem;display:block}.timer-grid small{color:#aaa1b4;text-transform:uppercase;letter-spacing:.08em;font-size:.62rem}.start-modal{z-index:100;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#04020ac7;place-items:center;padding:12px;animation:.18s both modalIn;display:grid;position:fixed;inset:0;overflow-y:auto}.start-modal-panel{background:linear-gradient(#0c0913, #0c0913) padding-box, linear-gradient(135deg, var(--lime), var(--purple), var(--pink)) border-box;border:2px solid #0000;width:min(540px,100vw - 24px);min-width:0;max-width:100%;max-height:min(92dvh,780px);padding:30px;position:relative;overflow-y:auto;box-shadow:0 24px 90px #000000a6,0 0 42px #a91cff33}.start-modal-panel h2{font-family:var(--font-archivo), sans-serif;margin:0 0 10px;font-size:clamp(1.7rem,4vw,2.25rem);line-height:1}.modal-copy{color:#bdb4c6;margin:0 0 22px;line-height:1.55}.modal-close{color:#c7bfce;cursor:pointer;background:0 0;border:0;font-size:1.8rem;position:absolute;top:12px;right:14px}.modal-field{color:#e8e0eb;gap:7px;margin-top:14px;font-size:.78rem;font-weight:800;display:grid}.modal-field input{color:#fff;width:100%;min-height:46px;font:inherit;background:#ffffff0f;border:1px solid #c7ff4873;border-radius:0;outline:0;padding:0 13px}.modal-field input:focus{border-color:var(--cyan);box-shadow:0 0 0 3px #19dfff26}.start-modal-panel form{min-width:0}.acknowledgements{gap:10px;margin:20px 0 22px;display:grid}.ack-item{color:#eee8f0;background:#ffffff09;border:1px solid #ffffff21;padding:13px 14px;font-size:.82rem;line-height:1.45}.ack-item>span:first-child{color:#fff;font-family:var(--font-archivo), sans-serif;font-weight:700;display:block}.ack-item>label{color:var(--lime);cursor:pointer;align-items:center;gap:9px;margin-top:9px;font-size:.76rem;font-weight:800;display:flex}.ack-item input{width:18px;height:18px;accent-color:var(--lime);margin:0}.modal-reference{color:#bdb4c6;border-top:1px solid #19dfff2e;margin-top:10px}.modal-reference summary{color:var(--cyan);cursor:pointer;padding-top:9px;font-size:.73rem;font-weight:800;list-style-position:inside}.modal-reference p{margin:8px 0 0;font-size:.76rem}.modal-rules{color:#bdb4c6;margin:8px 0 0;padding-left:1.25rem;font-size:.76rem}.modal-rules li+li{margin-top:4px}.modal-confirm{color:#0a0710;background:linear-gradient(100deg, var(--lime), #efff8e);width:100%;min-height:50px;box-shadow:6px 6px 0 var(--purple);font-family:var(--font-archivo), sans-serif;letter-spacing:.08em;cursor:pointer;border:0;margin-top:22px;font-weight:800}.modal-confirm:disabled{cursor:not-allowed;opacity:.38;box-shadow:none}@keyframes modalIn{0%{opacity:0}to{opacity:1}}.poster-frame{aspect-ratio:1200/630;background:linear-gradient(135deg, var(--lime) 0 40%, #b51cff 72%, var(--pink) 100%);clip-path:polygon(1.2% 0,100% 2.5%,98.8% 100%,0 97%);filter:drop-shadow(0 24px 38px #0000007a);width:100%;padding:7px;animation:.72s cubic-bezier(.2,.8,.2,1) .1s both posterIn,7s ease-in-out 1s infinite posterFloat;position:relative}.poster-frame img{object-fit:cover;clip-path:polygon(1% 0,100% 2%,99% 100%,0 97%);width:100%;height:100%;transition:filter .24s,transform .44s cubic-bezier(.2,.8,.2,1)}.poster-frame:hover img{filter:saturate(1.08)contrast(1.03);transform:scale(1.012)}.challenge-info{background:linear-gradient(#08060d, #08060d) padding-box, linear-gradient(90deg, var(--purple) 0%, var(--pink) 30%, #50325e 49%, var(--lime) 72%, var(--cyan) 100%) border-box;border:2px solid #0000;grid-template-columns:1fr 1fr;margin-top:18px;display:grid;position:relative;overflow:hidden;box-shadow:0 18px 56px #00000047,0 0 28px #19dfff0a}@media (prefers-reduced-motion:reduce){.start-cta,.start-modal{transition:none;animation:none}}.info-block{grid-template-columns:auto 1fr;gap:22px;min-height:176px;padding:30px 34px;animation:.6s cubic-bezier(.2,.8,.2,1) .25s backwards infoIn;display:grid;position:relative}.info-block:first-child{background:radial-gradient(circle at 0,#a91cff2b,#0000 48%),linear-gradient(110deg,#ff2c910b,#0000 62%);box-shadow:inset 4px 0 #a91cffd1}.info-block:last-child{background:radial-gradient(circle at 100%,#19dfff1c,#0000 46%),linear-gradient(250deg,#c7ff480e,#0000 62%);animation-delay:.34s;box-shadow:inset -4px 0 #c7ff48d1}.info-block+.info-block:before{content:"";background:linear-gradient(180deg, var(--pink), var(--purple) 44%, var(--lime) 68%, var(--cyan));width:2px;position:absolute;top:18px;bottom:18px;left:-1px;box-shadow:0 0 14px #a91cff57}.info-number{font-family:var(--font-archivo), sans-serif;margin:-4px 0 0;font-size:2.7rem;font-weight:800;line-height:1}.info-block:first-child .info-number{color:#b51cffb8;text-shadow:0 0 18px #b51cff2e}.info-block:last-child .info-number{color:#c7ff488c;text-shadow:0 0 18px #c7ff481f}.detail-kicker{color:var(--lime);letter-spacing:.15em;text-transform:uppercase;margin:0 0 10px;font-size:.68rem;font-weight:800}.info-block h2{color:#fff;font-family:var(--font-archivo), sans-serif;margin:0 0 10px;font-size:clamp(1.5rem,2.7vw,2.15rem);line-height:1}.info-block p:last-child{color:#aaa1b4;max-width:540px;margin:0;line-height:1.6}.challenge-description{color:#aaa1b4;max-width:540px;line-height:1.6}.challenge-description p{margin:0}.challenge-description p+p{margin-top:1rem}.start-panel,.instructions-card,.schedule-card,.participants-card{background:linear-gradient(#0b0912, #0b0912) padding-box, linear-gradient(105deg, var(--lime), var(--pink) 45%, var(--purple) 72%, var(--cyan)) border-box;border:2px solid #0000;min-width:0;margin-top:18px;position:relative;box-shadow:0 18px 54px #0000004d,0 0 26px #a91cff14}.start-panel,.instructions-card{background:linear-gradient(105deg, #11101a, #0b0912 48%, #0b0912) padding-box, linear-gradient(105deg, var(--lime), var(--pink) 45%, var(--purple) 72%, var(--cyan)) border-box;justify-content:space-between;align-items:center;gap:24px;padding:24px 30px;display:flex;position:relative;overflow:hidden}.start-panel:before{content:"";pointer-events:none;background:radial-gradient(circle,#c7ff4824,#0000 70%);border-radius:50%;width:300px;height:180px;position:absolute;top:-100px;left:-120px}.start-panel>*,.instructions-card>*{z-index:1;position:relative}.start-panel h2,.instructions-card h2,.schedule-card h2,.participants-card h2{font-family:var(--font-archivo), sans-serif;margin:0 0 7px;font-size:clamp(1.5rem,2.7vw,2.15rem);line-height:1}.start-panel p:not(.detail-kicker):not(.start-cta-note){color:#aaa1b4;margin:0;line-height:1.5}.start-panel-action{flex-shrink:0;align-items:center;gap:16px;display:flex}.start-panel-action .start-cta-note{max-width:170px}.start-button-group{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.interested-cta{border:1px solid var(--cyan);min-height:52px;color:var(--cyan);font:800 .74rem/1 var(--font-archivo), sans-serif;letter-spacing:.08em;cursor:pointer;background:#19dfff12;padding:0 18px;transition:background .18s,color .18s,transform .18s}.interested-cta:hover,.interested-cta:focus-visible{color:#08060d;background:var(--cyan);transform:translateY(-2px)}.interest-result{color:var(--lime);margin:12px 0 0;font-weight:700}.interest-result.is-error{color:var(--pink)}.interest-count{color:var(--lime);letter-spacing:.05em;text-transform:uppercase;margin:10px 0 0;font-size:.78rem;font-weight:800}.instructions-card{background:linear-gradient(105deg, #11101a, #0b0912 48%, #0b0912) padding-box, linear-gradient(105deg, var(--cyan), var(--purple) 42%, var(--pink) 72%, var(--lime)) border-box;padding:26px 30px 30px}.instructions-card:before{content:"";pointer-events:none;background:radial-gradient(circle,#19dfff24,#0000 70%);border-radius:50%;width:360px;height:210px;position:absolute;top:-110px;right:-120px}.instructions-list{color:#c9c0ce;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px 34px;margin:22px 0 0;padding-left:1.35rem;line-height:1.55;display:grid}.instructions-list li{padding-left:.3rem}.instructions-list li::marker{color:var(--lime);font-weight:800}.instructions-list strong{color:#fff}.schedule-card,.participants-card{padding:26px 30px 30px}.schedule-heading{justify-content:space-between;align-items:end;gap:18px;display:flex}.capacity-chip,.roster-status{min-height:30px;color:var(--lime);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;background:#c7ff4814;border:1px solid #c7ff4873;align-items:center;padding:0 10px;font-size:.68rem;font-weight:800;display:inline-flex}.schedule-track{grid-template-columns:repeat(5,minmax(0,1fr));gap:18px;margin-top:34px;display:grid;position:relative}.schedule-phase,.participant-row,.start-panel-action{min-width:0}.schedule-track:before{content:"";background:linear-gradient(90deg, var(--lime), var(--pink), var(--purple), var(--cyan));height:2px;position:absolute;top:9px;left:12px;right:12px;box-shadow:0 0 16px #c7ff4840}.schedule-phase{padding-top:25px;position:relative}.schedule-dot{background:var(--purple);width:16px;height:16px;box-shadow:0 0 0 2px var(--purple), 0 0 16px #a91cff8c;border:3px solid #0b0912;border-radius:50%;position:absolute;top:2px;left:3px}.schedule-phase.is-active .schedule-dot{background:var(--lime);box-shadow:0 0 0 2px var(--lime), 0 0 18px #c7ff48b3}.schedule-date{color:var(--lime);letter-spacing:.1em;text-transform:uppercase;margin:0 0 7px;font-size:.68rem;font-weight:800}.schedule-phase h3{color:#fff;font-family:var(--font-archivo), sans-serif;margin:0 0 5px;font-size:1.1rem}.schedule-phase>p:last-child{color:#978da3;margin:0;font-size:.8rem;line-height:1.45}.participant-empty{background:linear-gradient(100deg,#19dfff14,#a91cff14);border:1px solid #19dfff47;align-items:center;gap:14px;margin-top:20px;padding:17px 18px;display:flex}.participant-orbit{border:1px solid var(--pink);width:34px;height:34px;color:var(--pink);border-radius:50%;place-items:center;display:grid;box-shadow:0 0 16px #ff2c914d}.participant-empty strong{color:#fff;font-family:var(--font-archivo), sans-serif}.participant-empty p{color:#978da3;margin:3px 0 0;font-size:.8rem}.roster-status{color:var(--cyan);background:#19dfff12;border-color:#19dfff66;margin-left:auto}.participant-list{scrollbar-color:var(--purple) #ffffff0f;max-height:250px;margin-top:20px;padding-right:8px;overflow-y:auto}.participant-row{background:linear-gradient(100deg,#a91cff1a,#19dfff0d);border:1px solid #ffffff1f;align-items:center;gap:14px;padding:13px 14px;display:flex}.participant-row+.participant-row{margin-top:8px}.participant-row .participant-orbit{flex:0 0 30px;width:30px;height:30px;font-size:.8rem}.participant-row strong{color:#fff;font-family:var(--font-archivo), sans-serif;font-size:.94rem}.participant-row p{color:#978da3;margin:3px 0 0;font-size:.74rem}.participant-row strong,.participant-row p{overflow-wrap:anywhere}.participant-status{color:var(--lime);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;background:#c7ff4814;border:1px solid #c7ff4880;margin-left:auto;padding:6px 9px;font-size:.64rem;font-weight:900}.participant-status--voting{color:var(--cyan);background:#19dfff14;border-color:#19dfff80}.participant-status--voted{color:#ff78bd;background:#ff23961a;border-color:#ff23968c}.participant-status--finished-song{color:#ffb347;background:#ffb3471a;border-color:#ffb3478c}.rules-list{color:#c7bfce;max-width:620px;margin:16px 0 0;padding-left:1.3rem;font-size:.88rem;line-height:1.48;list-style:decimal}.rules-list li{padding-left:.3rem}.rules-list li+li{margin-top:.58rem}.rules-list li::marker{color:var(--lime);font-weight:800}.footer{z-index:1;padding-bottom:26px;position:relative}.footer-inner{border-top:1px solid var(--line);color:#93a3c2;padding-top:18px;font-size:.92rem}.voting-page-main{padding-top:48px}.upload-page-main{padding-top:48px;padding-bottom:70px}.upload-hero{background:linear-gradient(105deg, #0a0810fa, #1a0a23f2) padding-box, linear-gradient(115deg, var(--pink), var(--purple) 38%, var(--cyan) 72%, var(--lime)) border-box;border:2px solid #0000;grid-template-columns:minmax(0,1fr) 290px;align-items:center;gap:38px;min-height:330px;padding:clamp(30px,5vw,58px);display:grid;position:relative;overflow:hidden;box-shadow:0 24px 70px #00000057,0 0 40px #a91cff1f}.upload-hero:after{content:"";pointer-events:none;background:radial-gradient(circle at 85% 15%,#19dfff2e,#0000 28%),radial-gradient(circle at 10% 100%,#ff2c911f,#0000 35%);position:absolute;inset:0}.upload-hero>*{z-index:1;position:relative}.upload-hero h1{color:#fffdf8;max-width:700px;font-family:var(--font-archivo), sans-serif;letter-spacing:-.075em;text-transform:uppercase;margin:0 0 22px;font-size:clamp(3rem,6vw,6rem);line-height:.88}.upload-hero h1 span{color:var(--lime);text-shadow:5px 5px #8717cf;display:block}.upload-hero .challenge-intro{max-width:650px;font-size:1.05rem}.upload-hero-badge{background:linear-gradient(135deg,#c7ff4824,#a91cff26);border:1px solid #c7ff4873;justify-items:start;gap:9px;padding:26px 22px;display:grid;box-shadow:8px 8px #a91cffb8}.upload-badge-icon{border:2px solid var(--lime);width:44px;height:44px;color:var(--lime);border-radius:50%;place-items:center;font-size:1.35rem;display:grid}.upload-hero-badge strong{color:#fff;font-family:var(--font-archivo), sans-serif;font-size:1.5rem;line-height:.95}.upload-hero-badge small{color:#bdb4c6;line-height:1.4}.upload-card,.upload-help-card{background:linear-gradient(#0b0912, #0b0912) padding-box, linear-gradient(105deg, var(--lime), var(--pink) 45%, var(--purple) 72%, var(--cyan)) border-box;border:2px solid #0000;margin-top:18px;position:relative;box-shadow:0 18px 54px #0000004d}.upload-card{grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:42px;padding:32px;display:grid}.upload-card-heading h2,.upload-help-card h2{font-family:var(--font-archivo), sans-serif;margin:0 0 12px;font-size:clamp(1.8rem,3vw,2.7rem);line-height:1}.upload-card-heading>p:last-child{color:#aaa1b4;margin:0;line-height:1.65}.upload-form{grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:17px;display:grid}.upload-field{color:#fff;gap:7px;font-size:.83rem;font-weight:800;display:grid}.upload-field input{color:#fff;width:100%;min-height:50px;font:inherit;background:#ffffff0f;border:1px solid #ffffff40;border-radius:0;outline:none;padding:0 14px}.upload-field input:focus{border-color:var(--cyan);box-shadow:0 0 0 3px #19dfff29}.upload-field-wide{grid-column:1/-1}.upload-field small{color:#978da3;font-size:.75rem;font-weight:400}.upload-dropzone{color:#fff;text-align:center;cursor:pointer;background:linear-gradient(135deg,#19dfff14,#a91cff1f);border:2px dashed #19dfff99;grid-column:1/-1;place-items:center;gap:8px;min-height:250px;padding:24px;transition:border-color .18s,background .18s,transform .18s;display:grid;position:relative;overflow:hidden}.upload-dropzone:hover,.upload-dropzone.is-dragging{border-color:var(--lime);background:linear-gradient(135deg,#c7ff4821,#a91cff29);transform:translateY(-2px)}.upload-dropzone.has-file{border-style:solid;border-color:#c7ff48b3;grid-template-columns:minmax(0,1fr);place-items:stretch stretch}.upload-dropzone input{z-index:2;opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.upload-drop-icon{border:2px solid var(--lime);width:56px;height:56px;color:var(--lime);border-radius:50%;place-items:center;font-size:1.7rem;display:grid;box-shadow:0 0 22px #c7ff4838}.upload-dropzone strong{font-family:var(--font-archivo), sans-serif;font-size:1.35rem}.upload-dropzone small{color:#aaa1b4}.upload-preview{object-fit:contain;background:#030206;width:100%;max-height:260px}.upload-file-name{z-index:3;max-width:100%;color:var(--lime);text-overflow:ellipsis;white-space:nowrap;justify-self:center;font-size:.78rem;font-weight:800;position:relative;overflow:hidden}.upload-submit-wrap{grid-column:1/-1;justify-items:start;gap:10px;display:grid}.upload-progress-track{background:#ffffff0f;border:1px solid #19dfff47;width:100%;height:5px;margin-top:4px;overflow:hidden}.upload-progress-track span{background:linear-gradient(90deg, var(--lime), var(--pink), var(--cyan));height:100%;transition:width .22s;display:block}.upload-submit{cursor:pointer;border:0;justify-self:start;margin-top:5px}.upload-spinner{border:2px solid #0a07104d;border-top-color:#0a0710;border-radius:50%;width:15px;height:15px;animation:.75s linear infinite uploadSpin}.upload-wait{color:var(--lime);margin:0;font-size:.82rem;font-weight:800}.upload-submit:disabled{cursor:not-allowed;opacity:.58;transform:none;box-shadow:0 0 #0000}.upload-form-message{color:var(--lime);grid-column:1/-1;margin:0;line-height:1.45}.upload-form-message.is-error{color:#ff8ebf}.upload-help-card{grid-template-columns:.75fr 1.25fr;gap:42px;padding:26px 32px 30px;display:grid}.upload-checklist{color:#c9c0ce;gap:12px;margin:0;padding-left:1.35rem;line-height:1.55;display:grid}.upload-checklist li::marker{color:var(--lime);font-weight:800}.upload-back-link{color:var(--cyan);margin:24px 0 0;font-weight:800}.upload-back-link a:hover{color:#fff}.voting-hero{background:linear-gradient(110deg, #08060dfa, #0b0713ed) padding-box, linear-gradient(120deg, var(--pink), var(--purple) 38%, var(--lime) 80%, var(--cyan)) border-box;border:2px solid #0000;grid-template-columns:minmax(0,.9fr) minmax(390px,1.1fr);align-items:center;gap:clamp(38px,5vw,70px);min-height:430px;padding:clamp(34px,5vw,60px);display:grid;box-shadow:0 22px 68px #0006,0 0 36px #a91cff14}.voting-hero h1{color:#fffdf8;font-family:var(--font-archivo), sans-serif;letter-spacing:-.075em;text-transform:uppercase;margin:0 0 22px;font-size:clamp(3.4rem,5vw,5.7rem);line-height:.86}.voting-hero h1 span{color:var(--lime);text-shadow:5px 5px #8717cf}.voting-intro{color:#bdb4c6;max-width:470px;margin:0;line-height:1.7}.stage-pill{color:#d8d3df;letter-spacing:.06em;text-transform:uppercase;background:#19dfff14;border:1px solid #19dfff73;align-items:center;gap:9px;margin-top:24px;padding:9px 13px;font-size:.74rem;font-weight:800;display:inline-flex}.stage-dot{background:var(--cyan);width:8px;height:8px;box-shadow:0 0 12px var(--cyan);border-radius:50%}.voting-card{background:radial-gradient(circle at 8% 5%, #a91cff24, transparent 28%), linear-gradient(#0b0912, #0b0912) padding-box, linear-gradient(100deg, var(--purple), var(--pink) 42%, var(--lime) 78%, var(--cyan)) border-box;border:2px solid #0000;margin-top:18px;padding:clamp(24px,4.5vw,48px);box-shadow:0 24px 70px #0000006b,0 0 36px #a91cff1c}.voting-lock-overlay{z-index:20;pointer-events:none;background:#69696985;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.site-header{z-index:30;position:relative}.voting-lock-dialog{color:#fffdf8;text-align:center;border:2px solid var(--pink);pointer-events:auto;background:linear-gradient(145deg,#181021fa,#09070efa);width:min(650px,100%);padding:clamp(28px,5vw,58px);position:relative;box-shadow:8px 8px #a90cff,0 20px 70px #0000008c}.voting-lock-dialog:before{content:"";pointer-events:none;border:1px solid #c2ff2e4d;border-radius:50%;width:360px;height:360px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.voting-lock-dialog>*{position:relative}.voting-lock-card__icon{color:#0b0912;background:var(--lime);width:58px;height:58px;box-shadow:5px 5px 0 var(--purple);border-radius:50%;place-items:center;margin:0 auto 18px;font-size:1.5rem;display:grid}.voting-lock-dialog h2{max-width:650px;font-family:var(--font-archivo), sans-serif;margin:0 0 14px;font-size:clamp(2rem,4vw,3.4rem);line-height:.95}.voting-lock-dialog>p:not(.detail-kicker){color:#bdb4c6;max-width:560px;margin:0 auto;line-height:1.7}.voting-lock-dialog .stage-pill{margin:22px auto 0}.voting-card-top{justify-content:space-between;align-items:end;gap:18px;margin-bottom:22px;display:flex}.voting-card h2{font-family:var(--font-archivo), sans-serif;margin:0;font-size:clamp(1.8rem,3vw,2.65rem);line-height:.95}.voter-identity{background:linear-gradient(100deg,#19dfff14,#a91cff14);border:1px solid #19dfff47;justify-content:space-between;align-items:center;gap:24px;margin-bottom:30px;padding:17px 20px;display:flex}.voter-identity strong{color:#fff;font-family:var(--font-archivo), sans-serif;font-size:1rem;display:block}.voter-identity small{color:#988da4;margin-top:5px;font-size:.74rem;display:block}.identity-fields{grid-template-columns:repeat(2,minmax(150px,1fr));gap:8px;min-width:min(48%,420px);display:grid}.identity-fields input{color:#fff;min-height:40px;font:inherit;background:#00000042;border:1px solid #c7ff4859;outline:0;padding:0 11px;font-size:.75rem}.identity-fields input:focus{border-color:var(--cyan);box-shadow:0 0 0 3px #19dfff21}.video-progress{color:var(--lime);font-family:var(--font-archivo), sans-serif;font-size:1.7rem;font-weight:800}.video-progress span{color:#81768d;font-size:.9rem}.video-stage{aspect-ratio:16/9;background:#05040a;border:2px solid #19dfff6b;width:100%;overflow:hidden;box-shadow:0 0 0 5px #a91cff0f,0 18px 42px #00000059}.video-stage video{object-fit:contain;background:#05040a;width:100%;height:100%;display:block}.video-placeholder{color:#c7bfce;text-align:center;background:radial-gradient(circle at 50% 45%,#a91cff33,#0000 42%),linear-gradient(135deg,#08060d,#130b1c);align-content:center;justify-items:center;gap:10px;width:100%;height:100%;display:grid}.play-glyph{border:2px solid var(--lime);width:66px;height:66px;color:var(--lime);border-radius:50%;place-items:center;padding-left:4px;display:grid;box-shadow:0 0 28px #c7ff482e}.video-placeholder strong{color:#fff;font-family:var(--font-archivo), sans-serif;font-size:1.15rem}.video-placeholder small{color:#988da4;max-width:300px;line-height:1.5}.ratings-heading{justify-content:space-between;align-items:end;gap:20px;margin:28px 0 16px;display:flex}.ratings-heading h3{font-family:var(--font-archivo), sans-serif;margin:0;font-size:1.65rem}.ratings-heading>p{color:#988da4;margin:0;font-size:.78rem}.rating-grid{grid-template-columns:1fr;gap:14px;display:grid}.rating-slider{background:linear-gradient(100deg,#a91cff21,#ff2c9112 44%,#19dfff0f);border:1px solid #ffffff24;gap:14px;width:100%;padding:17px 20px 15px;display:grid;box-shadow:inset 4px 0 #c7ff48bf,0 8px 24px #0003}.rating-slider-top{color:#eee8f0;justify-content:space-between;gap:10px;font-size:.86rem;display:flex}.rating-slider-top strong{color:#fff;font-family:var(--font-archivo), sans-serif;letter-spacing:.04em;text-transform:uppercase;font-size:1rem}.rating-slider-top b{color:var(--lime);font-family:var(--font-archivo), sans-serif;text-shadow:0 0 14px #c7ff483d;font-size:1.12rem}.rating-slider input{--rating-fill:0%;appearance:none;background:linear-gradient(90deg, var(--lime) 0%, var(--pink) 48%, var(--purple) 76%, var(--cyan) 100%) 0 / var(--rating-fill) 100% no-repeat, #ffffff1a;cursor:pointer;border-radius:999px;outline:0;width:100%;height:24px;margin:0;box-shadow:0 0 18px #a91cff2e}.rating-slider input::-webkit-slider-runnable-track{background:linear-gradient(90deg, var(--lime) 0%, var(--pink) 48%, var(--purple) 76%, var(--cyan) 100%) 0 / var(--rating-fill) 100% no-repeat, #ffffff1a;border-radius:999px;height:14px}.rating-slider input::-webkit-slider-thumb{appearance:none;width:28px;height:28px;box-shadow:0 0 0 2px var(--lime), 0 0 18px #c7ff48b8;background:#f6ffb9;border:4px solid #0b0912;border-radius:50%;margin-top:-7px}.rating-slider input::-moz-range-track{background:#ffffff1a;border:0;border-radius:999px;height:14px}.rating-slider input::-moz-range-progress{background:linear-gradient(90deg, var(--lime) 0%, var(--pink) 48%, var(--purple) 76%, var(--cyan) 100%);border-radius:999px;height:14px}.rating-slider input::-moz-range-thumb{width:22px;height:22px;box-shadow:0 0 0 2px var(--lime), 0 0 18px #c7ff48b8;background:#f6ffb9;border:4px solid #0b0912;border-radius:50%}.rating-slider input:focus-visible{box-shadow:0 0 0 4px #19dfff2e,0 0 18px #a91cff2e}.rating-scale{color:#81768d;justify-content:space-between;font-size:.68rem;display:flex}.voting-controls,.summary-controls{justify-content:space-between;align-items:center;gap:16px;margin-top:26px;display:flex}.voting-controls p{color:#988da4;text-align:center;margin:0;font-size:.78rem}.back-button{color:#e7e1eb;min-height:48px;font:inherit;cursor:pointer;background:#19dfff12;border:1px solid #19dfff80;align-items:center;gap:9px;padding:0 17px;font-size:.82rem;font-weight:800;transition:transform .18s,background .18s,border-color .18s;display:inline-flex}.back-button:hover:not(:disabled),.back-button:focus-visible{color:#fff;border-color:var(--pink);background:#a91cff2e;transform:translateY(-2px)}.back-button:disabled{opacity:.32;cursor:not-allowed}.next-button{color:#0a0710;background:linear-gradient(105deg, var(--lime), #efff8e);min-height:48px;box-shadow:6px 6px 0 var(--purple);font-family:var(--font-archivo), sans-serif;letter-spacing:.08em;cursor:pointer;border:0;align-items:center;gap:13px;padding:0 17px 0 19px;font-size:.78rem;font-weight:800;display:inline-flex}.next-button:disabled{opacity:.36;box-shadow:none;cursor:not-allowed}.score-summary .summary-copy{color:#aaa1b4;max-width:580px;margin:0 0 22px;line-height:1.55}.score-list{gap:9px;display:grid}.score-row{background:#ffffff06;border:1px solid #ffffff1f;grid-template-columns:130px 1fr auto;align-items:center;gap:14px;padding:15px 17px;display:grid}.score-row>span:first-child{gap:4px;display:grid}.score-row strong{color:var(--lime);letter-spacing:.1em;font-size:.68rem}.score-row span small{color:#a79db2}.score-chips{flex-wrap:wrap;gap:6px;display:flex}.score-chips em{color:#c7bfce;border:1px solid #a91cff4d;padding:5px 7px;font-size:.68rem;font-style:normal}.score-row>b{color:#fff;font-family:var(--font-archivo), sans-serif;text-align:right;white-space:nowrap;font-size:1.3rem}.score-row>b small{color:#81768d;font-family:inherit;font-size:.58rem;display:block}.submit-message{color:var(--lime);margin:18px 0 0;font-size:.84rem}.submit-message.is-error{color:#ff8abf}@media (width<=720px){.voting-page-main{padding-top:18px}.voting-hero{border-radius:18px;grid-template-columns:1fr;gap:28px;min-height:0;padding:22px 18px 26px}.voting-hero h1{font-size:clamp(3.15rem,15vw,4.6rem)}.voting-hero .poster-frame{order:-1}.voting-card{border-radius:18px;padding:22px 16px}.voter-identity{flex-direction:column;align-items:stretch;gap:14px}.identity-fields{grid-template-columns:1fr;width:100%;min-width:0}.video-stage,.video-placeholder{min-height:0}.rating-grid{grid-template-columns:1fr}.ratings-heading{flex-direction:column;align-items:start;gap:7px}.voting-controls,.summary-controls{flex-wrap:wrap;align-items:stretch}.voting-controls p{text-align:left;order:3;width:100%}.next-button{margin-left:auto}.score-row{grid-template-columns:1fr auto}.score-chips{grid-area:2/1/auto/-1}}@keyframes edgeGlow{0%{filter:saturate(.96)contrast(1.02)}to{filter:saturate(1.12)contrast(1.06)}}@keyframes copyIn{0%{opacity:0;transform:translate(-18px)}to{opacity:1;transform:translate(0)}}@keyframes posterIn{0%{opacity:0;transform:translate(24px)rotate(2deg)scale(.98)}to{opacity:1;transform:translate(0)rotate(0)scale(1)}}@keyframes posterFloat{0%,to{transform:translateY(0)rotate(0)}50%{transform:translateY(-5px)rotate(-.35deg)}}@keyframes infoIn{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@media (width<=920px){.site-header-inner{flex-wrap:wrap;padding:14px 0}.nav{justify-content:center;gap:16px;width:100%}.challenge-hero{grid-template-columns:1fr}.poster-frame{order:-1}.challenge-copy h1{font-size:clamp(3.45rem,10vw,5.35rem)}.schedule-track{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=680px){.piano-challenge-page:before{background:radial-gradient(circle at 0 18%,#a91cff3d,#0000 34%),radial-gradient(circle at 100% 68%,#19dfff2e,#0000 32%),#08060d url(/assets/piano-challenge-edges.jpg) top/auto 100vh no-repeat;position:absolute}.shell{width:calc(100% - 24px);max-width:calc(100% - 24px)}.site-header{padding-top:env(safe-area-inset-top);background:#040308e6}.site-header-inner{gap:9px;min-width:0;padding:10px 0 9px}.brand{gap:9px;margin:0 auto;font-size:.95rem}.brand-mark{border-radius:11px;width:36px;height:36px;box-shadow:0 0 24px #fc7a1f33}.nav{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;width:100%;min-width:0;max-width:100%;padding:0;display:grid;overflow:visible}.nav a{color:#aaa3b6;white-space:nowrap;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:#ffffff09;border:1px solid #ffffff12;border-radius:10px;place-items:center;min-width:0;min-height:42px;padding:0 4px;font-size:.76rem;display:grid}.piano-page{padding-top:18px;padding-bottom:36px}.challenge-hero{background:linear-gradient(160deg, #08060dfa, #08060de6) padding-box, linear-gradient(135deg, var(--pink), var(--purple) 37%, var(--lime) 73%, var(--cyan)) border-box;border-radius:18px;gap:25px;width:100%;min-height:0;padding:12px 12px 26px;box-shadow:0 18px 54px #0000007a,0 0 32px #a91cff1a}.challenge-hero:after{background:radial-gradient(circle at 8% 72%,#b51cff2e,#0000 34%),radial-gradient(circle at 94% 20%,#c7ff4814,#0000 30%)}.poster-frame{filter:drop-shadow(0 16px 24px #0000007a);width:100%;margin:0;padding:4px}.challenge-copy{padding:0 8px}.challenge-copy h1{letter-spacing:-.068em;margin-bottom:21px;font-size:clamp(2.85rem,13vw,3.35rem);line-height:.9}.challenge-copy h1 span{text-shadow:4px 4px #8717cf;margin-top:.16em}.challenge-copy h1 span:after{height:3px;bottom:-8px;right:0}.challenge-intro{font-size:.96rem;line-height:1.62}.hero-eyebrow{margin-bottom:14px;font-size:.6rem}.start-cta-wrap{flex-direction:column;align-items:flex-start;gap:11px;margin-top:23px}.start-cta{min-height:54px}.start-cta-note{max-width:260px}.timer-panel{border-radius:18px;flex-direction:column;align-items:flex-start;margin-top:14px;padding:22px 20px}.timer-grid{width:100%}.timer-grid span{min-width:0}.start-modal{align-items:end;padding:12px}.start-modal-panel{border-radius:18px 18px 10px 10px;width:min(100%,520px);max-height:calc(100dvh - 24px);padding:25px 20px 22px}.challenge-info{box-shadow:none;background:0 0;border:0;grid-template-columns:1fr;gap:14px;margin-top:14px;overflow:visible}.info-block{border:2px solid #0000;border-radius:18px;min-height:0;padding:25px 22px 27px;display:block;overflow:hidden;box-shadow:0 16px 42px #00000057}.info-block:first-child{background:radial-gradient(circle at 0 0, #a91cff30, transparent 42%) padding-box, linear-gradient(145deg, #0b0710f7, #08060dfa) padding-box, linear-gradient(130deg, var(--pink), var(--purple) 72%, #542369) border-box;box-shadow:0 16px 42px #00000057,inset 3px 0 #a91cffa6}.info-block:last-child{background:radial-gradient(circle at 100% 0, #19dfff21, transparent 38%) padding-box, linear-gradient(145deg, #0b0710f7, #08060dfa) padding-box, linear-gradient(130deg, var(--lime), #5eb16e 58%, var(--cyan)) border-box;box-shadow:0 16px 42px #00000057,inset -3px 0 #c7ff4894}.info-block+.info-block:before{content:none}.info-number{opacity:.76;margin:0;font-size:2.75rem;position:absolute;top:21px;right:21px}.detail-kicker{max-width:calc(100% - 72px);margin-bottom:9px}.info-block h2{max-width:calc(100% - 64px);margin-bottom:15px;font-size:1.75rem}.challenge-description{font-size:.94rem;line-height:1.62}.rules-list{margin-top:14px;padding-left:1.5rem;font-size:.94rem;line-height:1.57}.rules-list li{padding-left:.22rem}.rules-list li+li{margin-top:.72rem}.start-panel,.instructions-card,.schedule-card,.participants-card{border-radius:18px;margin-top:14px}.start-panel{flex-direction:column;align-items:flex-start;gap:17px;padding:21px 20px 23px}.start-panel h2,.instructions-card h2,.schedule-card h2,.participants-card h2{font-size:1.65rem}.start-panel-action{justify-content:space-between;align-items:flex-start;gap:12px;width:100%}.start-button-group{width:100%}.start-panel-action .start-cta{flex:0 auto}.start-button-group .interested-cta{flex:auto}.start-panel-action .start-cta-note{max-width:165px}.instructions-card,.schedule-card,.participants-card{padding:21px 20px 23px}.instructions-list{grid-template-columns:1fr;gap:11px;margin-top:18px}.schedule-heading{flex-direction:column;align-items:flex-start;gap:11px}.schedule-track{grid-template-columns:1fr;gap:17px;margin-top:26px;padding-left:27px}.schedule-track:before{background:linear-gradient(180deg, var(--lime), var(--pink), var(--purple), var(--cyan));width:2px;height:auto;inset:8px auto 8px 9px}.schedule-phase{padding-top:0}.schedule-dot{width:14px;height:14px;top:1px;left:-25px}.schedule-date{margin-bottom:4px}.participant-empty{flex-wrap:wrap;align-items:flex-start;margin-top:16px;padding:15px}.participant-empty>div{flex:180px}.roster-status,.participant-status{margin-left:48px}.footer{padding-bottom:calc(22px + env(safe-area-inset-bottom))}.footer-inner{flex-direction:row;align-items:center;gap:10px;font-size:.74rem}}@media (width<=370px){.nav a{font-size:.7rem}.challenge-copy h1{font-size:2.7rem}.info-block{padding-inline:19px}.info-number{right:18px}}@media (width<=760px){.modal-field input,.upload-field input,.identity-fields input{font-size:16px}.host-card{border-radius:18px;grid-template-columns:1fr 132px;gap:0;min-height:188px;margin-top:14px}.host-card-copy{padding:22px 15px 22px 20px}.host-card-copy h2{margin-bottom:14px;font-size:1.55rem}.host-card-copy p:not(.detail-kicker){margin-bottom:8px;font-size:.88rem}.host-card-link{box-shadow:4px 4px 0 var(--purple);padding:10px 11px;font-size:.68rem}.host-card-photo{min-height:188px;padding:12px}.instructions-card,.instructions-card .schedule-heading{display:block}.instructions-card .schedule-heading h2{max-width:none}.contact-card{border-radius:18px;flex-direction:column;align-items:flex-start;gap:17px;margin-top:14px;padding:21px 20px 23px}.contact-card h2{font-size:1.65rem}.contact-card-link{justify-content:center;width:100%}.upload-page-main{padding-top:22px}.upload-hero{grid-template-columns:1fr;gap:24px;min-height:0;padding:28px 21px 31px}.upload-hero h1{font-size:clamp(2.8rem,14vw,4.3rem)}.upload-hero-badge{grid-template-columns:auto 1fr;align-items:center;gap:7px 13px;padding:18px}.upload-hero-badge small{grid-column:2}.upload-card,.upload-help-card{border-radius:18px;grid-template-columns:1fr;gap:24px;padding:23px 20px 25px}.upload-form{grid-template-columns:1fr}.upload-dropzone,.upload-form-message,.upload-submit-wrap{grid-column:auto}.upload-submit{justify-content:center;width:100%}.upload-submit-wrap{width:100%}}@keyframes uploadSpin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.piano-challenge-page:before,.challenge-copy,.poster-frame,.info-block{animation:none!important}.poster-frame img{transition:none}}
