
:root{--green:#102d27;--green2:#1c473b;--cream:#fffaf0;--gold:#dcb877;--red:#ac3945;--ink:#26332d;--muted:#65736a}*{box-sizing:border-box}body{margin:0;background:#f3f0e9;color:var(--ink);font-family:system-ui,-apple-system,Segoe UI,sans-serif}header{background:linear-gradient(135deg,#102d27,#234c3e);color:#fff;padding:33px 20px 60px;text-align:center;position:relative;overflow:hidden}header:before{content:'✦    ❄    ✧     ❄     ✦     ❄     ✧     ❄';position:absolute;top:12px;left:0;right:0;color:#dcb87770;letter-spacing:24px;white-space:nowrap}header .eyebrow{font-size:12px;text-transform:uppercase;letter-spacing:3px;color:var(--gold);margin-top:19px}h1{font-family:Georgia,serif;font-weight:normal;font-size:clamp(35px,7vw,60px);margin:8px 0}header p{color:#f4e8d6;margin:10px 0}.count{display:flex;justify-content:center;gap:12px;margin:20px auto 0}.unit{border:1px solid #dcb87765;border-radius:10px;min-width:72px;padding:9px 12px;background:#ffffff12}.unit strong{font-size:26px;display:block}.unit span{color:#e4d7bd;font-size:11px;text-transform:uppercase;letter-spacing:1px}main{width:min(960px,calc(100% - 30px));margin:-35px auto 50px;position:relative}.panel{background:white;border-radius:18px;box-shadow:0 8px 35px #152a1d14;padding:24px;margin-bottom:17px}.intro{text-align:center}.intro h2,.panel h2{font-family:Georgia,serif;font-weight:normal;font-size:28px;margin:0 0 10px}.intro p{color:var(--muted)}.actions{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:20px}.action{background:#f7f6f0;border:1px solid #e6e2d7;padding:22px;border-radius:13px;text-align:left;cursor:pointer;color:var(--ink)}.action:hover{border-color:var(--gold);background:#fffaf0}.action b{display:block;font-size:17px;margin:9px 0 6px}.action small{color:var(--muted);line-height:1.5}.action .emoji{font-size:28px}.panel[hidden],section[hidden],div[hidden]{display:none!important}.topline{display:flex;justify-content:space-between;align-items:center;gap:10px}.back{background:none;border:none;color:var(--green2);font-weight:700;cursor:pointer;padding:8px 0}.field{display:grid;gap:7px;margin:16px 0}label{font-weight:650;font-size:14px}select,input,textarea{font:inherit;border:1px solid #d9ddd7;border-radius:10px;padding:12px;width:100%;background:#fff;color:var(--ink)}textarea{min-height:84px;resize:vertical}.btn{background:var(--green);color:white;border:0;border-radius:10px;padding:12px 17px;cursor:pointer;font-weight:650}.btn:hover{background:var(--green2)}.btn.secondary{background:#f5f1e6;color:var(--green)}.btn.red{background:#a94248}.btn:disabled{opacity:.45;cursor:not-allowed}.notice{background:#fff9e9;border:1px solid #eed9a8;border-radius:10px;padding:13px;color:#6c592c;font-size:13px;line-height:1.55;margin:14px 0}.error{color:#a72e3b;font-size:14px;margin:10px 0}.success{color:#25644a;font-size:14px;margin:10px 0}.gift{border:1px solid #e8e8df;border-radius:12px;padding:13px 15px;margin:10px 0;display:flex;gap:14px;align-items:center;justify-content:space-between}.gift strong{display:block}.gift a{overflow-wrap:anywhere;color:#26604a;font-size:13px}.gift p{color:#58675e;font-size:14px;margin:5px 0}.pill{display:inline-block;background:#f5edda;color:#806328;font-size:12px;border-radius:40px;padding:6px 10px}.muted{color:var(--muted)}.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.row .btn{flex:0 0 auto}.divider{border:0;border-top:1px solid #e8e7de;margin:22px 0}footer{text-align:center;color:#697a6b;font-size:13px;margin:32px 10px}.demo{background:#fff3cd;border-bottom:1px solid #e1c67e;padding:9px;text-align:center;font-size:12px;color:#604b12}code{background:#f2f1eb;padding:3px 5px;border-radius:5px;overflow-wrap:anywhere}@media(max-width:620px){.actions{grid-template-columns:1fr}.panel{padding:18px}.count{gap:7px}.unit{min-width:62px}.gift{align-items:flex-start}} 
header{padding-bottom:32px}main{margin:18px auto 50px}.family-photo{width:min(1050px,calc(100% - 30px));margin:22px auto 0;position:relative}.family-photo img{width:100%;height:auto;max-height:470px;object-fit:cover;object-position:center 43%;display:block;border-radius:18px;border:3px solid #dcb877;box-shadow:0 16px 42px #06160e50}.family-photo figcaption{font-size:12px;color:#e6d9bf;margin-top:8px}.intro{padding-top:27px}@media(max-width:620px){.family-photo img{max-height:none}.family-photo{margin-top:18px}header{padding-bottom:24px}}

nav{max-width:950px;margin:16px auto;display:flex;justify-content:center;gap:12px;flex-wrap:wrap}nav button{background:#fff2;border:1px solid #dcb87790;color:#fff;border-radius:8px;padding:8px 15px;cursor:pointer}.admin-entries{display:grid;gap:9px}.admin-entry{border:1px solid #e8e8df;border-radius:12px;padding:13px;display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}.admin-entry .name{font-weight:bold}.bad{color:#a72e3b}.good{color:#25644a}.loading{opacity:.6}#home .actions{margin-bottom:6px}.linkbox{background:#f3f0e9;padding:10px;border-radius:8px;font-size:12px;overflow-wrap:anywhere}.mini{font-size:12px;color:#65736a}.manage-form{border-top:1px solid #ddd;margin-top:15px;padding-top:12px} .gift button{margin-left:6px}input[type=password]{letter-spacing:1px}