@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Playfair+Display:wght@600;700&display=swap');
:root{--bg:#101914;--panel:#19271f;--panel2:#203329;--text:#f5f5ed;--muted:#b5c3b8;--red:#c94d50;--gold:#e8c77a;--line:#34483b}
*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(ellipse at 50% -10%,#31543c 0,#18271e 42%,#0d1511 100%);color:var(--text);font-family:'DM Sans',sans-serif;display:flex;flex-direction:column}
.top{height:auto;min-height:76px;padding:18px max(5vw,22px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #ffffff16;background:#0b120e66;backdrop-filter:blur(12px);gap:18px}.brand{font-weight:800;color:var(--text);text-decoration:none;font-size:19px;letter-spacing:.2px}.top nav{display:flex;gap:18px;align-items:center;flex-wrap:wrap}.top nav span{color:var(--gold)}.top nav a{color:var(--muted);text-decoration:none;font-size:13px}.top nav a:hover{color:white}
.wrap{width:min(780px,92vw);margin:58px auto;flex:1}.card{background:linear-gradient(145deg,#203329f2,#17241cf2);border:1px solid var(--line);border-radius:24px;padding:clamp(24px,5vw,44px);box-shadow:0 22px 80px #0005}.auth{max-width:470px;margin:40px auto;text-align:center}.emoji{font-size:48px;margin-bottom:12px}h1,h2{font-family:'Playfair Display',serif}h1{font-size:clamp(30px,5vw,42px);margin:8px 0 12px}h2{font-size:23px;margin:30px 0 14px}p{line-height:1.65}.auth>p,.muted{color:var(--muted)}.eyebrow{font-size:11px;letter-spacing:3px;color:var(--gold);font-weight:700}.hero{text-align:center;padding-top:50px;padding-bottom:52px}.lead{font-size:19px;color:#e2e9df;margin-top:28px}.recipient{font-family:'Playfair Display',serif;font-size:clamp(38px,8vw,62px);font-weight:700;color:var(--gold);padding:14px 0 20px;text-shadow:0 4px 30px #e8c77a33}.lock,.admin-warning{background:#101b14;border:1px solid #3d5946;border-radius:14px;padding:16px;color:#d5e0d6;margin-top:26px}
form{display:grid;gap:16px;text-align:left}label{display:grid;gap:8px;color:#dce5dc;font-size:13px;font-weight:600}input{width:100%;background:#101a14;border:1px solid #405446;border-radius:11px;padding:13px 14px;color:white;font:inherit;outline:none}input:focus{border-color:var(--gold);box-shadow:0 0 0 3px #e8c77a20}.btn{border:0;border-radius:12px;background:linear-gradient(135deg,#d75b55,#a9343e);color:white;padding:14px 20px;font:700 14px 'DM Sans';cursor:pointer;box-shadow:0 8px 22px #9e303733;transition:.2s}.btn:hover{transform:translateY(-2px);filter:brightness(1.1)}.auth .btn{margin-top:8px}.notice{padding:13px 16px;border-radius:12px;margin:15px 0;background:#1f4933;border:1px solid #39734d;color:#e1f5e5;font-size:14px}.notice.error{background:#4b2528;border-color:#8a454a;color:#ffe1e1}.gridform{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end}.gridform label:nth-child(4){grid-column:1/-1}.gridform .btn{grid-column:1/-1}.count{font:600 13px 'DM Sans';color:var(--gold);background:#3b493b;padding:4px 9px;border-radius:20px}.userlist{display:grid;gap:8px}.userrow{display:flex;justify-content:space-between;align-items:center;background:#142119;border:1px solid #304438;border-radius:12px;padding:12px 15px}.userrow small{color:#93a497}.userrow form{display:block}.delete{background:transparent;color:#ff9a9a;border:1px solid #754247;border-radius:8px;padding:6px 10px;cursor:pointer}.drawbox{margin-top:30px;padding-top:8px;border-top:1px solid var(--line)}.draw{width:100%;padding:18px;font-size:15px;letter-spacing:.5px}.snow{position:fixed;color:#fff7;pointer-events:none}.s1{top:22%;left:5%;font-size:32px}.s2{top:65%;right:7%;font-size:24px}footer{text-align:center;color:#829387;font-size:12px;padding:25px}@media(max-width:560px){.top{align-items:flex-start;flex-direction:column}.top nav{gap:13px}.wrap{margin:30px auto}.gridform{grid-template-columns:1fr}.gridform label:nth-child(4),.gridform .btn{grid-column:auto}.userrow{gap:10px}.card{border-radius:18px}}
