:root{--bg:#f5f2ec;--surface:#fffdf9;--photo:#f0ece4;--text:#2a2723;--text-hover:#45403a;--muted:#7a746c;--line:#e2ddd3;--free:#3f7a4f;--sale:#b5541c;--danger:#a33a2c;--radius:12px;--ease-out:cubic-bezier(.22, 1, .36, 1);--ease-bounce:cubic-bezier(.34, 1.56, .64, 1);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;font-family:Helvetica Neue,Helvetica,Arial,system-ui,sans-serif}*{box-sizing:border-box}body{background:var(--bg);margin:0}img{max-width:100%;display:block}figure,h1,h2,h3,p{margin:0}button,input,textarea{font:inherit;color:inherit}.page{max-width:1080px;margin:0 auto;padding:40px 20px 64px}.muted{color:var(--muted)}.small{font-size:13px}.error{color:var(--danger);margin:12px 0}.row{align-items:flex-end;gap:10px;display:flex}.row.wrap{flex-wrap:wrap;gap:16px}.stack{gap:14px;display:grid}.stack-sm{gap:8px;font-size:14px;display:grid}.grow{flex:1;min-width:0}@keyframes rise{0%{opacity:0;transform:translateY(14px)}}@keyframes pop{0%{opacity:0;transform:scale(.6)}}@keyframes shake{20%,60%{transform:translate(-5px)}40%,80%{transform:translate(5px)}}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,14px)}}@keyframes fade-in{0%{opacity:0}}@keyframes modal-in{0%{opacity:0;transform:translateY(18px)scale(.96)}}@keyframes tick{0%{opacity:0;transform:translateY(-45%)}}@keyframes pulse{0%{box-shadow:0 0}70%,to{box-shadow:0 0 0 8px #0000}}@keyframes glow{0%,to{background-position:0}50%{background-position:100%}}.page{animation:.35s both fade-in}.shake{animation:.4s shake}label{gap:6px;font-size:14px;display:grid}label.inline{align-items:center;gap:6px;margin-right:14px;display:inline-flex}input:not([type=radio],[type=checkbox],[type=file]),textarea{border:1px solid var(--line);background:var(--surface);border-radius:8px;width:100%;padding:10px 12px;font-size:16px;transition:border-color .2s,box-shadow .2s}input:focus,textarea:focus{border-color:var(--text);outline:none;box-shadow:0 0 0 3px #2a27231a}textarea{resize:vertical}fieldset{border:0;margin:0;padding:0;font-size:14px}legend{margin-bottom:8px;padding:0}.btn{background:var(--text);color:var(--surface);cursor:pointer;white-space:nowrap;transition:transform .15s var(--ease-out),background-color .2s,border-color .2s,opacity .2s;border:0;border-radius:8px;padding:10px 18px}.btn:hover:not(:disabled){background:var(--text-hover)}.btn:active:not(:disabled){transform:scale(.97)}.btn:disabled{opacity:.5;cursor:wait}.btn.full{width:100%;padding:13px}.btn.small{padding:7px 12px;font-size:13px}.btn.ghost{color:var(--text);border:1px solid var(--line);background:0 0}.btn.ghost:hover:not(:disabled){border-color:var(--text);background:0 0}.btn.danger{color:var(--danger);background:0 0;border:1px solid}.btn.danger:hover:not(:disabled){background:#a33a2c0f}.link{color:var(--muted);cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline;transition:color .2s}.link:hover{color:var(--text)}.tag{color:#fff;white-space:nowrap;border-radius:999px;padding:3px 10px;font-size:13px;display:inline-block}.tag.free{background:var(--free)}.tag.sale{background:var(--sale)}.tag.big{padding:6px 14px;font-size:16px}.notice{background:var(--photo);animation:rise .35s var(--ease-out) both;border-radius:8px;padding:12px 14px}.notice.success{color:#24502f;background:#e3efe5}.hero h1{letter-spacing:-.01em;animation:rise .6s var(--ease-out) both;font-size:clamp(34px,6vw,48px);font-weight:400;line-height:1.1}.hero h1 span{color:var(--muted)}.hero p{animation:rise .6s 80ms var(--ease-out) both;margin-top:14px}.hello{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);animation:rise .6s .14s var(--ease-out) both;margin:28px 0 8px;padding:16px 18px}.hello-guest{justify-content:space-between;align-items:center;gap:12px 20px}.hello-guest,.tabs{flex-wrap:wrap;display:flex}.tabs{animation:rise .6s .2s var(--ease-out) both;gap:8px;margin:24px 0 20px}.tabs button{border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:999px;padding:8px 16px;transition:background-color .25s,color .25s,border-color .25s,transform .15s}.tabs button:hover{border-color:var(--text)}.tabs button:active{transform:scale(.96)}.tabs button.active{background:var(--text);color:var(--surface);border-color:var(--text)}.tabs small{opacity:.6;margin-left:4px}.grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:20px;margin:0;padding:0;list-style:none;display:grid}.grid>li{animation:rise .5s var(--ease-out) both;animation-delay:calc(.25s + min(var(--i,0), 12)*45ms)}.grid-move{transition:transform .4s var(--ease-out)}.grid-leave-active{display:none}.card{color:inherit;transition:transform .3s var(--ease-out);text-decoration:none;display:block}.card:hover{transform:translateY(-4px)}.card-img{aspect-ratio:3/4;background:var(--photo);border-radius:var(--radius);transition:box-shadow .3s;position:relative;overflow:hidden}.card:hover .card-img{box-shadow:0 14px 28px -14px #2a272359}.card-img img{-o-object-fit:cover;object-fit:cover;width:100%;height:100%;transition:transform .5s var(--ease-out),opacity .3s}.card:hover .card-img img{transform:scale(1.04)}.card.taken .card-img img{opacity:.45}.ribbon{background:var(--text);color:var(--surface);animation:pop .4s .3s var(--ease-bounce) both;border-radius:999px;padding:4px 10px;font-size:12px;position:absolute;top:10px;left:10px}.card-body{justify-content:space-between;align-items:flex-start;gap:8px;margin-top:10px;display:flex}.card-body h3{font-size:15px;font-weight:500}.card-size{margin-top:2px;font-size:13px}footer{margin-top:48px}.dot{background:currentColor;border-radius:50%;width:8px;height:8px;animation:1.8s ease-out infinite pulse;display:inline-block}.status-pill{background:var(--surface);border:1px solid var(--line);border-radius:999px;align-items:center;gap:8px;padding:6px 14px;font-size:13px;display:inline-flex}.status-pill.soon{color:var(--sale)}.status-pill.open{color:var(--free)}.status-pill.closed{color:var(--muted)}.status-pill.closed .dot{animation:none}.box h2 .status-pill{vertical-align:middle;margin-left:8px;font-weight:400}.segmented{flex-wrap:wrap;gap:6px;margin-bottom:8px;display:flex}.segmented button{border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:999px;padding:8px 14px;font-size:14px;transition:background-color .25s,color .25s,border-color .25s,transform .15s}.segmented button:hover{border-color:var(--text)}.segmented button:active{transform:scale(.96)}.segmented button.active{background:var(--text);color:var(--surface);border-color:var(--text)}.launch{text-align:center;border:1px solid var(--line);animation:rise .6s .14s var(--ease-out) both,glow 16s ease-in-out infinite;background:linear-gradient(120deg,#fffdf9,#f3ebdf,#e9f0e6,#fffdf9) 0 0/300% 300%;border-radius:20px;justify-items:center;gap:18px;margin-top:28px;padding:36px 24px;display:grid}.launch h2{font-size:clamp(22px,4vw,30px);font-weight:400}.countdown{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.countdown-part{background:var(--surface);border:1px solid var(--line);border-radius:14px;justify-items:center;gap:6px;min-width:78px;padding:14px 10px 10px;display:grid;overflow:hidden;box-shadow:0 10px 24px -16px #2a272366}.countdown-value{font-variant-numeric:tabular-nums;animation:tick .4s var(--ease-out) both;font-size:clamp(30px,6vw,44px);line-height:1}.countdown-label{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:11px}.countdown-inline{font-variant-numeric:tabular-nums;font-weight:500}.how{animation:rise .6s .24s var(--ease-out) both;gap:16px;margin-top:28px;display:grid}.how h2,.mine h2{font-size:22px;font-weight:400}.steps{counter-reset:step;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.steps li{counter-increment:step;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);animation:rise .5s var(--ease-out) both;align-content:start;gap:6px;padding:18px;display:grid}.steps li:first-child{animation-delay:.3s}.steps li:nth-child(2){animation-delay:.38s}.steps li:nth-child(3){animation-delay:.46s}.steps li:before{content:counter(step);background:var(--text);width:28px;height:28px;color:var(--surface);border-radius:50%;place-items:center;margin-bottom:4px;font-size:13px;display:grid}.steps span{color:var(--muted);font-size:14px}.how-account{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 20px;padding:16px 18px;display:flex}.mine{gap:16px;margin-top:32px;display:grid}.opened{text-align:center;animation:pop .5s var(--ease-bounce) both;margin-top:24px;font-size:17px}.closing{color:var(--sale);align-items:center;gap:8px;margin-top:18px;font-size:14px;display:flex}.back{color:var(--muted);transition:color .2s,transform .2s var(--ease-out);margin-bottom:24px;font-size:14px;text-decoration:none;display:inline-block}.back:hover{color:var(--text);transform:translate(-3px)}.article{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:40px;display:grid}.gallery{animation:rise .5s var(--ease-out) both}.gallery>img{aspect-ratio:3/4;-o-object-fit:cover;object-fit:cover;border-radius:var(--radius);background:var(--photo);width:100%;animation:.3s both fade-in}.thumbs{gap:8px;margin-top:8px;display:flex}.thumbs button{cursor:pointer;width:64px;transition:border-color .2s,transform .2s var(--ease-out);background:0 0;border:2px solid #0000;border-radius:8px;padding:0;overflow:hidden}.thumbs button:hover{transform:translateY(-2px)}.thumbs button.active{border-color:var(--text)}.thumbs img{aspect-ratio:3/4;-o-object-fit:cover;object-fit:cover}.details{align-content:start;gap:14px;display:grid}.details>*{animation:rise .45s var(--ease-out) both}.details>:nth-child(2){animation-delay:60ms}.details>:nth-child(3){animation-delay:.12s}.details>:nth-child(4){animation-delay:.18s}.details>:nth-child(5){animation-delay:.22s}.details>:nth-child(n+6){animation-delay:.28s}.details>.tag{justify-self:start}.details h1{font-size:32px;font-weight:400;line-height:1.15}.share{color:var(--free);font-size:14px}.overlay{z-index:30;background:#14120f8c;place-items:center;padding:16px;animation:.2s both fade-in;display:grid;position:fixed;inset:0;overflow-y:auto}.modal{background:var(--surface);width:100%;max-width:400px;animation:modal-in .3s var(--ease-out) both;border-radius:16px;gap:16px;padding:28px 24px 24px;display:grid;position:relative;box-shadow:0 24px 60px -20px #00000059}.modal .forgot{justify-self:center;font-size:13px}a.btn{text-align:center;text-decoration:none;display:inline-block}.modal h2{padding-right:24px;font-size:24px;font-weight:400}.close{cursor:pointer;color:var(--muted);transition:color .2s,transform .25s var(--ease-out);background:0 0;border:0;font-size:28px;line-height:1;position:absolute;top:10px;right:14px}.close:hover{color:var(--text);transform:rotate(90deg)}.switch{background:var(--bg);border-radius:999px;grid-template-columns:1fr 1fr;padding:4px;display:grid;position:relative}.switch:before{content:"";background:var(--surface);width:calc(50% - 4px);transition:transform .35s var(--ease-bounce);border-radius:999px;position:absolute;top:4px;bottom:4px;left:4px;box-shadow:0 1px 3px #0000001a}.switch.login:before{transform:translate(100%)}.switch button{z-index:1;cursor:pointer;color:var(--muted);background:0 0;border:0;border-radius:999px;padding:8px;font-size:14px;transition:color .25s;position:relative}.switch button.active{color:var(--text)}.admin-head{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.admin-head h1{font-size:32px;font-weight:400}.admin-head nav{align-items:center;gap:16px;display:flex}.admin-head a{color:var(--text)}.box{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);animation:rise .45s var(--ease-out) both;margin-bottom:20px;padding:20px}.box:nth-of-type(2){animation-delay:60ms}.box:nth-of-type(3){animation-delay:.12s}.box h2{margin-bottom:14px;font-size:18px;font-weight:500}.box h2 small{color:var(--muted);margin-left:4px;font-weight:400}.login{max-width:360px}.rows{margin:0;padding:0;list-style:none}.rows li{border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:14px;padding:12px 0;transition:opacity .3s;display:flex}.rows li:first-child{border-top:0}.rows li.faded{opacity:.5}.rows img{-o-object-fit:cover;object-fit:cover;background:var(--photo);border-radius:6px;width:52px;height:70px}.rows .grow{gap:3px;display:grid}.temp{gap:8px;margin-bottom:12px;display:grid}.temp-code{letter-spacing:.15em;font-family:ui-monospace,Menlo,monospace;font-size:26px}.comment{background:var(--bg);white-space:pre-wrap;border-radius:8px;padding:8px 10px;font-size:14px}.actions{gap:6px}.actions,.photos{flex-wrap:wrap;display:flex}.photos{gap:10px}.photo{background:var(--photo);width:84px;height:112px;animation:pop .3s var(--ease-bounce) both;border-radius:8px;position:relative;overflow:hidden}.photo img{-o-object-fit:cover;object-fit:cover;width:100%;height:100%}.photo figcaption{gap:4px;display:flex;position:absolute;top:4px;right:4px}.photo figcaption button{cursor:pointer;background:#ffffffe6;border:0;border-radius:50%;width:24px;height:24px;line-height:1;transition:transform .15s}.photo figcaption button:hover{transform:scale(1.12)}.photo.add{border:1.5px dashed var(--line);cursor:pointer;color:var(--muted);background:0 0;place-items:center;transition:border-color .2s,color .2s;animation:none;display:grid}.photo.add:hover{border-color:var(--text);color:var(--text)}.photo.add.busy{cursor:wait}.photo.add input{opacity:0;width:1px;height:1px;position:absolute}.toast{z-index:20;animation:toast-in .35s var(--ease-out) both;position:fixed;bottom:20px;left:50%;transform:translate(-50%);box-shadow:0 6px 20px #0000001f}@media (width<=680px){.page{padding-top:28px}.grid{grid-template-columns:repeat(2,1fr);gap:14px}.card-body{flex-direction:column;gap:6px}.article{grid-template-columns:1fr;gap:20px}.rows .actions{width:100%}}@media (prefers-reduced-motion:reduce){*,:after,:before{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important;animation-delay:0s!important}}
