:root{--paper:#fff;--ink:#0a0a0a;--muted:#6d6d6d;--line:#d9d9d9;--error:#9d1b1b;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html{background:var(--paper)}body{background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-family:Menlo,Monaco,SFMono-Regular,Cascadia Mono,monospace}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}.site-shell{isolation:isolate;min-height:100svh;padding:var(--site-padding,48px) 24px;background:var(--site-background,var(--paper));color:var(--site-text,var(--ink));place-items:center;display:grid;position:relative;overflow:hidden}.site-shell.has-gradient{background:linear-gradient(var(--site-gradient-angle), var(--site-background), var(--site-gradient))}.site-composition{z-index:2;width:min(100%, var(--site-max-width,720px));text-align:center;flex-direction:column;align-items:center;display:flex}.site-shell.align-left .site-composition,.site-shell.align-left .site-details{text-align:left;align-items:flex-start}.site-title{margin:0 0 var(--site-gap,30px);letter-spacing:-.04em;font-size:clamp(1.15rem,2.5vw,1.5rem);font-weight:500}.site-media-stage{width:min(100%, var(--site-media-width,560px));position:relative}.clickable-media{border-radius:var(--site-media-radius);width:100%;color:inherit;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:0 0;border:0;margin:0;padding:0;display:block}.clickable-media:focus-visible{outline:2px solid var(--site-accent);outline-offset:5px}.clickable-media.is-reacting[data-reaction=squash]{animation:.18s ease-out click-squash}.clickable-media.is-reacting[data-reaction=shake]{animation:.21s ease-out click-shake}.clickable-media.is-reacting[data-reaction=pulse]{animation:.2s ease-out click-pulse}.site-media-stage:before{content:"";z-index:-1;background:var(--bloom-color);filter:blur(var(--bloom-spread));opacity:0;border-radius:50%;position:absolute;inset:12%;transform:scale(.9)}.site-shell.has-bloom .site-media-stage:before{opacity:var(--bloom-opacity)}.site-shell.bloom-pulse .site-media-stage:before{animation:bloom-breathe var(--motion-speed) ease-in-out infinite}.site-media{object-fit:contain;border-radius:var(--site-media-radius);width:100%;height:auto;max-height:52svh;display:block}.site-shell.media-float .site-media{animation:media-drift var(--motion-speed) ease-in-out infinite}.site-details{width:100%;margin-top:var(--site-gap,30px);flex-direction:column;align-items:center;gap:14px;display:flex}.site-description,.site-ticker{margin:0;font-size:.8rem;line-height:1.6}.site-ticker{letter-spacing:.08em;font-weight:700}.contract{width:min(100%,620px);color:inherit;cursor:pointer;text-align:left;background:0 0;border:1px solid;border-left:0;border-right:0;border-radius:0;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;padding:11px 2px;font-size:.68rem;display:grid}.contract-value{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.contract-label,.contract-state{color:var(--site-muted,var(--muted));font-size:.62rem}.contract:hover .contract-state,.contract:focus-visible .contract-state{color:inherit}.site-socials{flex-wrap:wrap;justify-content:center;gap:10px 22px;display:flex}.site-socials a{color:var(--site-accent,var(--ink));text-underline-offset:4px;font-size:.7rem;text-decoration-thickness:1px}.site-socials a:hover,.site-socials a:focus-visible{text-decoration-style:double}.entrance-fade .site-composition{animation:.6s ease-out both entrance-fade}.entrance-rise .site-composition{animation:.65s ease-out both entrance-rise}.entrance-zoom .site-composition{animation:.65s cubic-bezier(.2,.8,.2,1) both entrance-zoom}.ambient-leds,.floating-layer,.site-grain{pointer-events:none;position:absolute;inset:0;overflow:hidden}.ambient-leds{z-index:0}.ambient-leds i{--led-position:calc((var(--led-index) + 1) * 100% / (var(--led-total) + 1));left:var(--led-position);width:var(--led-size);height:var(--led-size);background:var(--led-color);opacity:var(--led-opacity);box-shadow:0 0 calc(var(--led-size) * 3) var(--led-color);animation:led-travel var(--led-speed) linear infinite;animation-delay:calc(var(--led-index) * -.7s);border-radius:50%;position:absolute}.site-grain{z-index:4;opacity:var(--grain-opacity);background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.8'/%3E%3C/svg%3E")}.floating-layer{z-index:1}.floating-item{left:var(--float-left);top:var(--float-top);width:var(--float-size);height:var(--float-size);object-fit:contain;opacity:var(--float-opacity);animation-duration:var(--decor-speed);animation-delay:var(--float-delay);animation-timing-function:ease-in-out;animation-iteration-count:infinite;position:absolute}.floating-item.motion-drift{animation-name:decor-drift}.floating-item.motion-rise{animation-name:decor-rise}.floating-item.motion-orbit{animation-name:decor-orbit}@keyframes entrance-fade{0%{opacity:0}to{opacity:1}}@keyframes entrance-rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes entrance-zoom{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@keyframes media-drift{50%{transform:translateY(calc(var(--float-distance) * -1))}}@keyframes click-squash{45%{transform:scale(var(--reaction-scale), var(--reaction-grow))}}@keyframes click-shake{25%{transform:translateX(calc(var(--reaction-shift) * -1))}65%{transform:translateX(var(--reaction-shift))}}@keyframes click-pulse{50%{transform:scale(var(--reaction-grow))}}@keyframes bloom-breathe{50%{opacity:calc(var(--bloom-opacity) * .55);transform:scale(1.08)}}@keyframes led-travel{0%{top:-5%}to{top:105%}}@keyframes decor-drift{50%{transform:translate(18px,-24px)rotate(8deg)}}@keyframes decor-rise{0%{transform:translateY(30px)}50%{transform:translateY(-30px)}to{transform:translateY(30px)}}@keyframes decor-orbit{0%{transform:rotate(0)translate(14px)rotate(0)}to{transform:rotate(360deg)translate(14px)rotate(-360deg)}}@media (max-width:560px){.site-shell{padding:min(var(--site-padding,32px), 48px) 18px}.site-title{margin-bottom:22px}.site-media{max-height:46svh}.site-details{margin-top:min(var(--site-gap,22px), 36px)}.floating-item{width:min(var(--float-size), 90px);height:min(var(--float-size), 90px)}.contract{gap:10px;font-size:.62rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.admin-shell{width:min(100% - 32px,1440px);margin:0 auto;padding:48px 0 80px}.admin-header{border-bottom:1px solid var(--ink);justify-content:space-between;align-items:baseline;gap:20px;margin-bottom:36px;padding-bottom:14px;display:flex}.admin-title{margin:0;font-size:1rem;font-weight:500}.admin-kicker,.admin-hint{color:var(--muted);font-size:.68rem;line-height:1.5}.admin-login{align-content:center;width:min(100%,420px);min-height:100svh;margin:0 auto;padding:28px;display:grid}.admin-login form,.admin-form{gap:18px;display:grid}.admin-login h1{margin:0 0 26px;font-size:1rem;font-weight:500}.admin-field{gap:7px;font-size:.72rem;display:grid}.admin-field input,.admin-field textarea,.admin-field select{border:1px solid var(--line);background:var(--paper);width:100%;color:var(--ink);border-radius:0;outline:none;padding:11px 10px}.admin-field textarea{resize:vertical;min-height:84px}.admin-field input:focus,.admin-field textarea:focus,.admin-field select:focus{border-color:var(--ink)}.admin-button{border:1px solid var(--ink);background:var(--ink);color:var(--paper);cursor:pointer;border-radius:0;padding:11px 14px;font-size:.7rem}.admin-button.secondary{background:var(--paper);color:var(--ink)}.admin-button.text{color:var(--ink);text-underline-offset:3px;background:0 0;border:0;padding:0;text-decoration:underline}.admin-button:disabled{cursor:wait;opacity:.55}.admin-error{color:var(--error);font-size:.68rem}.admin-success{color:#246522;font-size:.68rem}.admin-grid{grid-template-columns:1fr 1fr;gap:22px;display:grid}.admin-section{border-top:1px solid var(--line);padding-top:24px}.admin-section h2,.admin-section summary{margin:0;font-size:.76rem;font-weight:500}.admin-section summary{cursor:pointer;justify-content:space-between;align-items:center;padding-bottom:0;list-style:none;display:flex}.admin-section summary::-webkit-details-marker{display:none}.admin-section summary:after{content:"+";font-size:1rem}.admin-section[open] summary:after{content:"−"}.admin-section-body{gap:18px;padding-top:20px;display:grid}.admin-workspace{grid-template-columns:minmax(420px,.82fr) minmax(480px,1.18fr);align-items:start;gap:42px;display:grid}.admin-controls{gap:26px;min-width:0;display:grid}.admin-preview{border:1px solid var(--line);background:#f4f4f4;min-width:0;position:sticky;top:24px}.admin-preview .site-shell{min-height:min(720px,100svh - 48px)}.admin-preview .site-media{max-height:320px}.admin-preview .is-preview{pointer-events:none}.preset-row{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.preset-row .admin-button{padding-inline:7px}.colour-list{grid-template-columns:1fr 1fr;gap:12px;display:grid}.color-control{border:1px solid var(--line);gap:10px;min-width:0;margin:0;padding:12px;display:grid}.color-control legend{padding:0 5px;font-size:.68rem}.color-main-row{grid-template-columns:42px 1fr;align-items:end;gap:8px;display:grid}.color-swatch{border:1px solid var(--line);background:var(--paper);border-radius:0;width:42px;height:38px;padding:2px}.color-hex,.color-channel-grid label{color:var(--muted);gap:4px;font-size:.58rem;display:grid}.color-hex input,.color-channel-grid input{border:1px solid var(--line);background:var(--paper);width:100%;min-width:0;color:var(--ink);border-radius:0;padding:7px 6px}.color-channel-grid{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.range-field{gap:8px;font-size:.68rem;display:grid}.range-field>span{justify-content:space-between;gap:16px;display:flex}.range-field output{color:var(--muted)}.range-field input{width:100%;accent-color:var(--ink)}.switch-field{cursor:pointer;align-items:center;gap:10px;font-size:.68rem;display:flex}.switch-field input{opacity:0;pointer-events:none;position:absolute}.switch-field>span{border:1px solid var(--ink);width:32px;height:17px;position:relative}.switch-field>span:after{content:"";background:var(--ink);width:11px;height:11px;transition:transform .14s;position:absolute;top:2px;left:2px}.switch-field input:checked+span:after{transform:translate(15px)}.switch-field input:focus-visible+span{outline:2px solid var(--ink);outline-offset:2px}.switch-field b{font-weight:400}.floating-editor{border-top:1px solid var(--line);gap:15px;padding-top:15px;display:grid}.floating-editor-head{justify-content:space-between;align-items:center;display:flex}.floating-editor-head img{object-fit:contain}.reset-button{background:var(--paper);color:var(--error);border-color:var(--error)}.admin-media-preview{object-fit:contain;object-position:left center;width:min(100%,400px);height:auto;max-height:280px}.admin-audio-preview{width:min(100%,400px);height:40px}.social-row{border-top:1px solid var(--line);grid-template-columns:128px 1fr auto auto;align-items:end;gap:10px;padding-top:14px;display:grid}.social-actions{gap:6px;display:flex}.social-order{gap:4px;display:flex}.social-order button,.social-remove{border:1px solid var(--line);background:var(--paper);cursor:pointer;border-radius:0;min-width:30px;height:38px}.visible-toggle{align-items:center;gap:8px;min-height:38px;font-size:.68rem;display:flex}.admin-submit-row{z-index:10;background:color-mix(in srgb, var(--paper) 94%, transparent);justify-content:flex-end;padding:18px 0;display:flex;position:sticky;bottom:0}@media (max-width:1050px){.admin-workspace{grid-template-columns:1fr}.admin-preview{grid-row:1;position:relative;top:auto}.admin-preview .site-shell{min-height:560px}}@media (max-width:700px){.admin-grid,.social-row{grid-template-columns:1fr}.admin-header{flex-direction:column;align-items:flex-start}.admin-shell{width:min(100% - 24px,1440px);padding-top:28px}.admin-preview .site-shell{min-height:440px}.admin-preview .site-media{max-height:210px}.colour-list{grid-template-columns:1fr}.preset-row{grid-template-columns:1fr 1fr}}
