@import "https://fonts.googleapis.com/css2?family=Cormorant:wght@600&family=Karla&display=swap";*{box-sizing:border-box}body{color:#4a4238;background:#faf6ee;margin:0;font-family:Karla,sans-serif}.info{text-align:left;background:#faf3e2;border-radius:8px;margin-bottom:24px;padding:16px 20px;font-size:.95rem;line-height:1.6}.info strong{color:#a1791f}.page{justify-content:center;align-items:flex-start;min-height:100vh;padding:60px 20px;display:flex}.card{text-align:center;background:#fffdf8;border:1px solid #e6d9b8;border-radius:8px;width:100%;max-width:750px;padding:40px 32px;box-shadow:0 8px 24px #b496501a}h1{color:#a1791f;letter-spacing:1px;margin-bottom:24px;font-family:Cormorant,serif;font-size:2.3rem}.welcome{margin-bottom:20px;font-size:1.2rem}.key-input{border:1px solid #e6d9b8;border-radius:6px;width:50%;margin:8px 0 16px;padding:10px 12px;font-size:1rem}.notes{border:1px solid #e6d9b8;border-radius:6px;width:100%;margin:8px 0 16px;padding:10px 12px;font-size:1rem}select{border:1px solid #e6d9b8;border-radius:6px;width:33%;margin:8px 0;padding:10px 12px;font-size:.95rem}.field{text-align:left;margin-bottom:14px;display:block}.btn{color:#fff;cursor:pointer;background:#a1791f;border:none;border-radius:6px;margin-top:8px;padding:12px 28px;font-size:1rem}.schedule{text-align:left;margin-bottom:24px}.schedule h2{color:#a1791f;margin-bottom:12px;font-family:Cormorant,serif;font-size:1.4rem}.schedule ul{margin:0;padding:0;list-style:none}.schedule li{border-bottom:1px solid #f0e6d0;padding:8px 0;font-size:.95rem}.schedule li:last-child{border-bottom:none}.time{color:#a1791f;width:55px;font-weight:700;display:inline-block}.btn-link{color:#a1791f;cursor:pointer;background:0 0;border:none;margin-bottom:16px;padding:0;font-size:1rem;text-decoration:underline}.modal-overlay{z-index:100;background:#00000080;justify-content:center;align-items:center;width:100%;height:100%;padding:20px;display:flex;position:fixed;top:0;left:0}.modal-content{text-align:center;background:#fffdf8;border-radius:12px;width:100%;max-width:500px;max-height:85vh;padding:32px;position:relative;overflow-y:auto}.modal-close{cursor:pointer;color:#4a4238;background:0 0;border:none;font-size:1.3rem;position:absolute;top:12px;right:16px}.modal-img{object-fit:cover;border-radius:50%;width:200px;height:200px;margin-bottom:16px}.officiant-name{font-size:1.5rem}.officiant-text{font-size:1.1rem;line-height:1.6}.btn:hover{background:#86641a}.error{color:#c0392b;margin-top:10px}.status{color:#4a7a5c;margin-top:14px}
