:root{
  --paper:#f4f0e8;
  --ink:#171717;
  --acid:#c6ff23;
  --pink:#ff9fcf;
  --blue:#6f8cff;
  --cream:#fff8dd;
  --red:#ff5a50;
  --line:2px solid var(--ink);
  --shadow:8px 8px 0 var(--ink);
  --radius:22px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:var(--paper);
  color:var(--ink);
  font-family:Arial,Helvetica,sans-serif;
  overflow-x:hidden;
  cursor:none;
  transition:background .45s ease,color .45s ease;
}
a,button,input{font:inherit}
a{color:inherit;text-decoration:none}
button{color:inherit}
img{display:block;max-width:100%}
::selection{background:var(--acid);color:#000}
.grain{
  position:fixed;inset:0;pointer-events:none;z-index:200;
  opacity:.16;mix-blend-mode:multiply;
  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='.95' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.25'/%3E%3C/svg%3E");
}
#cursor{
  position:fixed;left:0;top:0;width:30px;height:30px;border:2px solid var(--ink);border-radius:50%;
  background:var(--acid);display:grid;place-items:center;font-weight:900;z-index:999;pointer-events:none;
  transform:translate(-50%,-50%);transition:width .15s,height .15s,background .15s;
  box-shadow:3px 3px 0 var(--ink)
}
#cursor.big{width:48px;height:48px;background:var(--pink)}
.topbar{
  position:fixed;left:0;right:0;top:0;z-index:100;height:72px;padding:10px 18px;
  display:grid;grid-template-columns:1fr auto 1fr;align-items:center;background:rgba(244,240,232,.88);
  backdrop-filter:blur(14px);border-bottom:var(--line)
}
.wordmark{border:0;background:none;text-align:left;font-weight:900;font-size:21px;line-height:.82;letter-spacing:-1px;cursor:none;width:max-content}
.wordmark span,.wordmark i{display:block}.wordmark i{font-family:Georgia,serif;font-weight:400}
.top-meta{display:flex;gap:24px;font:700 11px/1 "Courier New",monospace;letter-spacing:1.2px}
.top-actions{justify-self:end;display:flex;gap:8px;align-items:center}
.top-actions a{border:var(--line);min-width:38px;height:38px;display:grid;place-items:center;border-radius:50%;font-weight:900;background:#fff}
.top-actions .mint-mini{border-radius:999px;padding:0 16px;background:var(--acid)}
.cover{min-height:100vh;padding:120px 5vw 70px;display:grid;grid-template-columns:.9fr 1.1fr;gap:4vw;align-items:center;position:relative}
.cover-copy{max-width:660px;position:relative;z-index:2}
.eyebrow{font:700 12px/1.4 "Courier New",monospace;letter-spacing:1.5px;text-transform:uppercase}
h1{font-size:clamp(60px,8vw,132px);line-height:.76;letter-spacing:-7px;margin:24px 0 30px;font-weight:900}
h1 span,h1 em{display:block}h1 em{font-family:Georgia,serif;font-weight:400;letter-spacing:-5px;color:#3d6c2a;transform:rotate(-2deg);margin-top:14px}
.lead{font:400 clamp(18px,1.8vw,25px)/1.35 Georgia,serif;max-width:590px}
.cover-cta{display:flex;gap:12px;flex-wrap:wrap;margin:34px 0}
.pill{border:var(--line);border-radius:999px;padding:15px 22px;font-weight:900;background:#fff;box-shadow:4px 4px 0 var(--ink);cursor:none;transition:transform .15s,box-shadow .15s}
.pill:hover{transform:translate(3px,3px);box-shadow:1px 1px 0 var(--ink)}
.pill.primary{background:var(--acid)}.pill.ghost{background:var(--pink)}
.mini-stats{display:flex;gap:10px;flex-wrap:wrap}.mini-stats span{border-top:1px solid var(--ink);padding-top:8px;font:700 10px/1.2 "Courier New",monospace}.mini-stats b{font-size:15px}
.cover-stage{height:min(690px,78vh);min-height:520px;position:relative;isolation:isolate}
.profile-card{position:absolute;width:min(440px,75%);left:50%;top:50%;transform:translate(-50%,-50%) rotate(2deg);background:#fff;border:var(--line);border-radius:28px;box-shadow:16px 16px 0 rgba(0,0,0,.16);padding:14px;z-index:3;transition:transform .25s}
.profile-card:hover{transform:translate(-50%,-50%) rotate(-1deg) scale(1.015)}
.profile-topline{display:flex;justify-content:space-between;align-items:center;font:700 11px/1 "Courier New",monospace;padding:4px 2px 12px}.online-dot{color:#2f8a2f}.online-dot:before{content:"";width:8px;height:8px;background:var(--acid);border:1px solid #000;border-radius:50%;display:inline-block;margin-right:5px}
.hero-photo-wrap{position:relative;overflow:hidden;border:var(--line);border-radius:18px;background:#dfe5dc;aspect-ratio:1}
.hero-photo-wrap img{width:100%;height:100%;object-fit:cover;transition:filter .25s,transform .25s}.hero-photo-wrap:hover img{transform:scale(1.025);filter:saturate(1.1)}
.flash{position:absolute;right:10px;bottom:10px;background:var(--pink);border:1px solid #000;padding:6px 10px;font:700 10px/1 "Courier New",monospace;transform:rotate(-4deg)}
.profile-footer{display:flex;justify-content:space-between;align-items:center;padding:13px 2px 2px}.profile-footer strong,.profile-footer small{display:block}.profile-footer small{font-family:Georgia,serif;font-style:italic;margin-top:4px}.profile-footer button{width:44px;height:44px;border:var(--line);border-radius:50%;background:var(--acid);font-size:22px;cursor:none}
.receipt{position:absolute;right:0;top:3%;width:190px;background:#fffef4;border:1px solid #c7c1b4;padding:16px 14px 28px;transform:rotate(8deg);font:700 10px/1.8 "Courier New",monospace;box-shadow:0 10px 20px rgba(0,0,0,.12);z-index:1}.receipt span,.receipt strong{display:block}.receipt:after{content:"";position:absolute;left:0;right:0;bottom:-9px;height:18px;background:linear-gradient(135deg,transparent 9px,#fffef4 0) 0 0/18px 18px repeat-x}
.sticker,.note{position:absolute;z-index:5;cursor:grab;user-select:none;touch-action:none}.sticker{border:var(--line);box-shadow:4px 4px 0 var(--ink);font-weight:900;line-height:.9}.sticker-a{left:0;top:14%;background:var(--acid);width:112px;height:112px;border-radius:50%;transform:rotate(-12deg)}.sticker-b{right:3%;bottom:13%;background:var(--pink);padding:14px 18px;border-radius:999px;transform:rotate(8deg)}.sticker-c{left:7%;bottom:5%;background:#fff;padding:13px;border-radius:4px;transform:rotate(-6deg);font:900 13px/1 "Courier New",monospace}.note{right:2%;top:45%;background:#fff3a8;border:1px solid #c7b65b;padding:20px 24px 26px;box-shadow:0 8px 20px rgba(0,0,0,.12);transform:rotate(5deg);font:400 16px/1.35 "Comic Sans MS",cursive}.dragging{cursor:grabbing!important;z-index:20!important}
.scroll-cue{position:absolute;bottom:18px;left:50%;transform:translateX(-50%);font:700 10px/1 "Courier New",monospace;animation:bob 1.6s ease-in-out infinite}@keyframes bob{50%{transform:translate(-50%,6px)}}
.closet{padding:110px 0 120px;background:#f6b6d5;border-top:var(--line);border-bottom:var(--line);overflow:hidden}
.section-head{padding:0 5vw 45px;display:flex;justify-content:space-between;gap:40px;align-items:end}.section-head h2,.room h2,.membership h2,.guestbook h2{font-size:clamp(42px,6vw,92px);line-height:.88;letter-spacing:-4px;margin:12px 0}.section-head>p{max-width:420px;font:400 18px/1.4 Georgia,serif}
.rail-wrap{overflow:hidden}.rail{display:flex;gap:20px;padding:8px 5vw 26px;width:max-content;animation:railmove 55s linear infinite}.rail:hover{animation-play-state:paused}@keyframes railmove{to{transform:translateX(-50%)}}
.look-card{width:270px;background:#fff;border:var(--line);padding:10px 10px 16px;box-shadow:7px 7px 0 var(--ink);transform:rotate(var(--rot));cursor:none;transition:transform .2s}.look-card:hover{transform:rotate(0deg) translateY(-10px)}.look-card img{width:100%;aspect-ratio:1;object-fit:cover;border:1px solid #000}.look-card footer{display:flex;justify-content:space-between;align-items:center;margin-top:10px;font:700 11px/1 "Courier New",monospace}.look-card button{border:1px solid #000;background:var(--acid);font-weight:900;cursor:none}
.room{padding:120px 5vw;background:var(--acid);border-bottom:var(--line);display:grid;grid-template-columns:.65fr 1.35fr;gap:5vw;align-items:start}.room-intro{position:sticky;top:110px}.room-intro>p:last-child{font:400 21px/1.4 Georgia,serif;max-width:430px}
.desktop{min-height:760px;background:#7e90cf;border:var(--line);box-shadow:14px 14px 0 var(--ink);position:relative;overflow:hidden;background-image:linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px);background-size:28px 28px;transition:background .35s}
.desktop-bar{height:40px;background:#e5e5e5;border-bottom:var(--line);display:flex;justify-content:space-between;align-items:center;padding:0 12px;font:700 11px/1 "Courier New",monospace}
.window{position:absolute;background:#f4f0e8;border:var(--line);box-shadow:6px 6px 0 rgba(0,0,0,.35)}.window-title{height:32px;background:#222;color:#fff;display:flex;justify-content:space-between;align-items:center;padding:0 9px;font:700 10px/1 "Courier New",monospace}.window-main{left:12%;top:12%;width:45%;transform:rotate(-2deg)}.window-main img{width:100%;aspect-ratio:1;object-fit:cover}.window-diary{right:5%;top:18%;width:38%;padding-bottom:14px}.window-diary p{font:400 22px/1.25 Georgia,serif;padding:12px 16px 0}.window button{margin-left:14px;border:1px solid #000;background:var(--pink);font-weight:900;cursor:none}.window-balance{right:7%;bottom:10%;width:34%;padding-bottom:16px;background:#eaffc0}.window-balance small,.window-balance strong{display:block;padding:12px 16px 0}.window-balance strong{font-size:48px;letter-spacing:-3px}.window-mood{left:8%;bottom:8%;width:34%;padding-bottom:14px}.mood-buttons{display:grid;grid-template-columns:1fr 1fr;gap:7px;padding:12px}.mood-buttons button{margin:0;padding:10px;background:#fff}.desktop-icons{position:absolute;right:12px;top:52px;display:grid;gap:12px}.desktop-icons button{width:72px;border:0;background:transparent;color:#fff;text-shadow:1px 1px 0 #000;font:700 10px/1.2 "Courier New",monospace;cursor:none}.desktop-icons span{font-size:32px;display:block;margin-bottom:4px}
.membership{padding:130px 5vw;background:#fff6d4;display:grid;grid-template-columns:1.15fr .85fr;gap:7vw;align-items:center;border-bottom:var(--line)}
.member-card{aspect-ratio:1.58;max-width:720px;background:linear-gradient(135deg,#202020,#393939);border:3px solid #000;border-radius:24px;color:#fff;position:relative;overflow:hidden;box-shadow:18px 18px 0 var(--pink);transform:rotate(-2deg);transition:transform .25s}.member-card:hover{transform:rotate(1deg) scale(1.01)}.member-card:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 65% 25%,rgba(198,255,35,.35),transparent 35%),linear-gradient(120deg,transparent 0 45%,rgba(255,255,255,.08) 46% 48%,transparent 49%);pointer-events:none}.member-no{position:absolute;top:6%;right:5%;font:700 12px/1 "Courier New",monospace}.member-logo{position:absolute;left:5%;top:7%;font-size:32px;font-weight:900;line-height:.75;letter-spacing:-2px}.member-logo i{font-family:Georgia,serif;font-weight:400;color:var(--acid)}.member-card img{position:absolute;left:5%;bottom:12%;width:34%;aspect-ratio:1;object-fit:cover;border-radius:50%;border:3px solid var(--acid)}.member-details{position:absolute;left:43%;top:35%;display:grid;grid-template-columns:auto 1fr;gap:9px 16px;font:700 10px/1 "Courier New",monospace}.member-details strong{color:var(--acid);font-size:14px}.barcode{position:absolute;left:43%;bottom:16%;font:900 24px/1 "Courier New",monospace;letter-spacing:-4px}.member-stamp{position:absolute;right:4%;bottom:8%;width:82px;height:82px;border:2px solid var(--pink);border-radius:50%;display:grid;place-items:center;text-align:center;color:var(--pink);font:900 11px/1 "Courier New",monospace;transform:rotate(-10deg)}.membership-copy p:not(.eyebrow){font:400 20px/1.5 Georgia,serif;max-width:510px}.membership-copy .pill{margin-top:20px}
.guestbook{padding:120px 5vw;background:#bfd0ff;border-bottom:var(--line)}.guestbook-shell{max-width:940px;margin:auto;background:#fff;border:var(--line);box-shadow:12px 12px 0 var(--ink);padding:40px}.guestbook-title{display:flex;align-items:center;justify-content:center;gap:20px}.guestbook-title h2{font-family:Georgia,serif;font-style:italic;text-align:center;margin:0}.guestbook-shell>p{text-align:center;font:400 16px/1.4 "Courier New",monospace}.guestbook form{display:grid;grid-template-columns:.5fr 1.4fr auto;gap:10px;margin:32px 0}.guestbook input,.guestbook form button{border:var(--line);padding:13px;background:#fff;outline:none}.guestbook form button{background:var(--acid);font-weight:900;cursor:none}.guest-messages{display:grid;gap:8px}.guest-messages article{display:grid;grid-template-columns:180px 1fr;border-top:1px dashed #777;padding:12px 0;font:400 14px/1.4 "Courier New",monospace}.guest-messages b{color:#3d6c2a}
.faq{padding:120px 5vw;background:var(--paper);border-bottom:var(--line)}.faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.faq details{border:var(--line);background:#fff;padding:22px;box-shadow:5px 5px 0 var(--ink)}.faq summary{font-weight:900;cursor:none}.faq p{font:400 18px/1.4 Georgia,serif}
footer{padding:48px 5vw 60px;background:#171717;color:#fff;display:grid;grid-template-columns:1fr 1fr auto;gap:30px;align-items:end}.footer-logo{font-size:clamp(46px,7vw,100px);line-height:.75;font-weight:900;letter-spacing:-6px;color:var(--acid)}footer p{font-family:Georgia,serif;max-width:420px}.footer-links{display:grid;gap:8px;text-align:right}.footer-links a{text-decoration:underline;text-underline-offset:4px}
.toast{position:fixed;left:50%;bottom:28px;transform:translate(-50%,150%);z-index:500;background:#111;color:#fff;border:2px solid #fff;padding:12px 18px;font:700 12px/1 "Courier New",monospace;transition:transform .25s;box-shadow:5px 5px 0 var(--pink)}.toast.show{transform:translate(-50%,0)}
.cash-note{position:fixed;top:-80px;z-index:400;width:70px;height:34px;background:var(--acid);border:2px solid #111;display:grid;place-items:center;font-weight:900;pointer-events:none;animation:fall var(--dur) linear forwards;transform:rotate(var(--rot))}@keyframes fall{to{top:110vh;transform:translateX(var(--drift)) rotate(720deg)}}
body.theme-pink{--paper:#ffd7e9;--acid:#fff473;--pink:#ff8cc7}body.theme-acid{--paper:#d8ff43;--acid:#ff8cd0;--pink:#8e86ff}body.theme-night{--paper:#242126;--ink:#f8f2e9;--acid:#baff25;--pink:#ff7fbb}.theme-night .topbar{background:rgba(36,33,38,.9)}.theme-night .top-actions a,.theme-night .profile-card,.theme-night .faq details{color:#171717}.theme-night .wordmark,.theme-night .top-meta{color:#fff}.theme-night .cover h1 em{color:#d9ff72}
@media (max-width:1000px){
  body{cursor:auto}#cursor{display:none}.cover{grid-template-columns:1fr;padding-top:110px}.cover-stage{height:680px}.room{grid-template-columns:1fr}.room-intro{position:static}.membership{grid-template-columns:1fr}.top-meta{display:none}.topbar{grid-template-columns:1fr auto}.top-actions{grid-column:2}.faq-grid{grid-template-columns:1fr}footer{grid-template-columns:1fr}.footer-links{text-align:left}.desktop{min-height:700px}
}
@media (max-width:650px){
  .topbar{height:62px;padding:8px 10px}.top-actions a{min-width:34px;height:34px}.top-actions .mint-mini{padding:0 10px}.cover{padding:92px 18px 55px}h1{font-size:62px;letter-spacing:-4px}.lead{font-size:18px}.cover-stage{height:570px;min-height:0}.profile-card{width:82%;top:48%}.receipt{width:150px;right:-25px}.sticker-a{width:82px;height:82px}.sticker-c{left:0}.note{display:none}.section-head{padding-left:18px;padding-right:18px;display:block}.section-head h2,.room h2,.membership h2,.guestbook h2{font-size:48px;letter-spacing:-3px}.look-card{width:220px}.room,.membership,.guestbook,.faq{padding:80px 18px}.desktop{min-height:680px}.window-main{left:5%;width:62%}.window-diary{right:3%;top:44%;width:58%}.window-balance{right:3%;bottom:5%;width:48%}.window-balance strong{font-size:34px}.window-mood{left:3%;bottom:6%;width:43%}.desktop-icons{display:none}.member-card{box-shadow:10px 10px 0 var(--pink)}.member-logo{font-size:22px}.member-details{font-size:8px;gap:6px 8px}.member-details strong{font-size:10px}.barcode{font-size:14px}.member-stamp{width:58px;height:58px;font-size:8px}.guestbook-shell{padding:24px 15px}.guestbook form{grid-template-columns:1fr}.guest-messages article{grid-template-columns:1fr;gap:5px}footer{padding-left:18px;padding-right:18px}.footer-logo{letter-spacing:-3px}
}
@media (prefers-reduced-motion:reduce){*{animation:none!important;scroll-behavior:auto!important;transition:none!important}}

/* SOLD OUT state */
.soldout-status,
.soldout-footer {
  cursor: default;
}
.soldout-button {
  opacity: .72;
  cursor: not-allowed !important;
  filter: grayscale(.15);
}
