@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@500;600&family=Inter:wght@400;600&display=swap');
:root{--m:#5a0f1c;--m2:#2b0910;--g:#d4af37;--bg:#120709;--p:#1e0e11;--t:#f4ecde;--mute:#b9a99a;color-scheme:dark}
*{box-sizing:border-box}
body{margin:0;font:16px/1.6 Inter,system-ui,sans-serif;background:var(--bg);color:var(--t)}
h1,h2{font-family:"Cormorant Garamond",Georgia,serif;font-weight:600}
h2{font-size:1.7rem;margin:1.4em 0 .3em}
header{padding:16px;text-align:center;background:linear-gradient(var(--m),var(--m2));border-bottom:1px solid var(--g)}
header img{height:42px}header b{letter-spacing:.4em;color:var(--g);font-family:"Cormorant Garamond",Georgia,serif;font-size:1.3rem}
main{max-width:1100px;margin:auto;padding:22px}
.narrow{max-width:520px}
.hero{text-align:center;padding:34px 12px 10px}
.hero h1{font-size:clamp(2.1rem,7vw,3.6rem);margin:0;line-height:1.1}
.hero p{color:var(--mute);margin:.4em 0 0}
.hero:after{content:"";display:block;width:64px;height:2px;background:var(--g);margin:20px auto 0}
input,select,button{font:inherit;padding:12px 14px;border-radius:10px;border:1px solid #5b3a3f;background:var(--p);color:var(--t);width:100%;margin:6px 0}
input:focus,select:focus{border-color:var(--g)}
button{background:var(--g);color:#2a0a10;font-weight:600;border:0;cursor:pointer}
button:disabled{opacity:.5}
:focus-visible{outline:2px solid var(--g);outline-offset:2px}
.err{color:#ff9a9a;min-height:1.5em}
.link{background:none;color:var(--g);text-decoration:underline;font-weight:400;width:auto;padding:6px 0}
.ghost{background:none;color:var(--t);border:1px solid #5b3a3f;font-weight:400}
.card{background:var(--p);border:1px solid #3a2226;border-radius:14px;padding:16px;margin:12px 0}
.card h3{margin:0;font-family:"Cormorant Garamond",Georgia,serif;font-size:1.4rem}
.card small{color:var(--mute)}
.acts{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.acts button,.acts a{width:auto;margin:0;padding:8px 14px;font-size:.9rem;border-radius:999px}
.acts a{background:#25d366;color:#08240f;font-weight:600;text-decoration:none}
.drop{display:block;border:2px dashed #7a5a3c;border-radius:14px;padding:28px 12px;text-align:center;color:var(--mute);cursor:pointer;margin:8px 0}
.drop.on{border-color:var(--g);color:var(--t)}
.drop input{display:none}
.bar{height:6px;background:#3a2a2c;border-radius:3px;overflow:hidden;margin:4px 0 10px}
.bar i{display:block;height:100%;width:0;background:var(--g);transition:width .2s}
.tabs{display:flex;gap:8px;overflow-x:auto;padding:12px 0;position:sticky;top:0;background:var(--bg);z-index:5;justify-content:center}
.tabs button{width:auto;white-space:nowrap;background:none;color:var(--t);border:1px solid #5b3a3f;font-weight:400;border-radius:999px;padding:8px 16px;margin:0}
.tabs .on{background:var(--g);color:#2a0a10;border-color:var(--g);font-weight:600}
.masonry{columns:3 230px;column-gap:10px}
.masonry div{break-inside:avoid;margin-bottom:10px;position:relative;border-radius:10px;overflow:hidden;background:var(--p);min-height:120px}
.masonry img{width:100%;display:block;cursor:zoom-in}
.masonry a{position:absolute;right:8px;bottom:8px;background:#000a;color:#fff;border:1px solid var(--g);border-radius:999px;padding:4px 12px;font-size:.8rem;text-decoration:none}
footer{text-align:center;color:var(--mute);padding:30px 10px;font-size:.85rem}
#lb{position:fixed;inset:0;background:#000f;display:none;align-items:center;justify-content:center;z-index:9;flex-direction:column}
#lb img{max-width:100%;max-height:82vh;object-fit:contain}
#lb .bar2{position:absolute;top:0;left:0;right:0;display:flex;justify-content:space-between;align-items:center;padding:12px 16px;color:var(--mute)}
#lb button.n{position:absolute;top:50%;width:48px;height:48px;border-radius:50%;padding:0;font-size:1.6rem;background:#0008;color:var(--t);border:1px solid #5b3a3f;margin:0}
#lb a.d{margin-top:12px;background:var(--g);color:#2a0a10;font-weight:600;border-radius:999px;padding:10px 22px;text-decoration:none}
#lb .x{background:none;border:0;color:var(--t);font-size:1.6rem;width:auto;padding:0 8px;margin:0}
header img{height:63px}header b{font-size:1.95rem}
body{min-height:100vh;display:flex;flex-direction:column}main{width:100%;flex:1}
footer{margin-top:auto;border-top:1px solid #3a2226;width:100%}footer a{color:var(--g);text-decoration:none;letter-spacing:.2em;font-weight:600}
.chips{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0}.chip{background:var(--p);border:1px solid var(--g);border-radius:999px;padding:4px 12px;font-size:.9rem}.chip b{cursor:pointer;margin-left:8px;color:var(--g)}
.row2{display:flex;gap:8px}.row2>*{margin:6px 0}.row2 button{width:auto;white-space:nowrap}
.mg{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:10px;margin-top:10px}
.mg div{position:relative;border-radius:10px;overflow:hidden;background:var(--p);aspect-ratio:1}.mg img{width:100%;height:100%;object-fit:cover}
.mg .a{position:absolute;inset:auto 4px 4px 4px;display:flex;gap:4px;aspect-ratio:auto;background:none}.mg .a button{flex:1;margin:0;padding:4px;font-size:.75rem;border-radius:6px;background:#000b}
.mg small{position:absolute;top:4px;left:4px;background:#000a;padding:0 8px;border-radius:999px;font-size:.7rem}
.mg .cv{outline:2px solid var(--g)}
.hero.cov{background-size:cover;background-position:center;border-radius:0 0 18px 18px;padding:90px 12px 40px}
header{height:95px;padding:0 16px;display:flex;align-items:center;justify-content:center;overflow:hidden}
header img{height:88px;max-width:100%;object-fit:contain}
.tabs{justify-content:flex-start;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:var(--g) transparent;padding:12px 4px}
.tabs button{flex:0 0 auto}.tabs button:first-child{margin-left:auto}.tabs button:last-child{margin-right:auto}
nav{position:sticky;top:0;z-index:6;background:var(--m2);border-bottom:1px solid #3a2226;display:flex;align-items:center;padding:0 12px;min-height:48px}
#hb{display:none;width:auto;margin:6px 0;padding:8px 14px;background:none;color:var(--t);border:1px solid #5b3a3f;font-weight:400}
#mn{display:flex;gap:4px;flex:1;flex-wrap:wrap}
#mn a{padding:12px 14px;color:var(--t);cursor:pointer;border-bottom:2px solid transparent}
#mn a.on{color:var(--g);border-bottom-color:var(--g)}
#mn #out{margin-left:auto;color:var(--mute)}
@media(max-width:640px){nav{flex-wrap:wrap}#hb{display:block}#mn{display:none;flex-direction:column;width:100%;flex:none;padding-bottom:8px}#mn.open{display:flex}#mn a{border-bottom:1px solid #3a2226}#mn #out{margin-left:0}}
header a{display:flex;align-items:center;justify-content:center;height:100%;text-decoration:none}
.pw{position:relative;margin:6px 0}.pw input{margin:0;padding-right:76px}
.pw button{position:absolute;right:6px;top:50%;transform:translateY(-50%);width:auto;margin:0;padding:6px 10px;background:none;color:var(--g);border:0;font-weight:600;font-size:.85rem}
@media(max-width:640px){.masonry{columns:2;column-gap:6px}.masonry div{margin-bottom:6px;min-height:80px}}
.masonry a{width:34px;height:34px;padding:0;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:0}
#lb .ic{background:none;border:0;color:var(--g);width:auto;margin:0 0 0 10px;padding:4px;vertical-align:middle;cursor:pointer}
#toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);background:var(--p);border:1px solid var(--g);border-radius:999px;padding:10px 18px;display:none;gap:12px;align-items:center;z-index:20;color:var(--t);max-width:92vw}
#toast button{width:auto;margin:0;padding:6px 14px;border-radius:999px}
.one{text-align:center}.one img{max-width:100%;max-height:75vh;display:block;margin:20px auto;border-radius:10px}
.one .d{display:inline-block;background:var(--g);color:#2a0a10;font-weight:600;border-radius:999px;padding:10px 22px;text-decoration:none}
