<style>
*{margin:0;padding:0;box-sizing:border-box;}
html,body{height:100%;}
body{font-family:'Cormorant Garamond',serif;color:#f4e8c8;background:linear-gradient(rgba(0,0,0,.40),rgba(0,0,0,.55)),url("/images/bg.jpg");background-size:cover;background-position:center;background-attachment:fixed;display:flex;flex-direction:column;}
.overlay{position:fixed;inset:0;background:radial-gradient(circle,rgba(255,255,255,.02),rgba(0,0,0,.25));pointer-events:none;}
main{flex:1;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:40px;animation:fadein 2s;}
.heart{width:270px;max-width:55vw;margin-bottom:10px;filter:drop-shadow(0 10px 20px rgba(0,0,0,.5));}
h1{font-family:'Cinzel',serif;font-size:clamp(48px,6vw,82px);margin:0px;font-weight:600;color:#e3bc63;text-shadow:0 3px 10px rgba(0,0,0,.65);}
h2{margin:0px;font-size:clamp(28px,3vw,44px);font-weight:300;color:#f2dfb4;}
.married{margin-top:10px;font-size:26px;opacity:.95;}
.valen-wedding-date{display:flex;align-items:center;justify-content:center;gap:9px;margin-top:4px;color:#c7d8ba;font-family:'Cinzel',serif;font-size:15px;letter-spacing:1.2px;}
.valen-wedding-date > span{color:#7ed071;font-size:12px;text-shadow:0 0 12px rgba(126,208,113,.7);}
.valen-wedding-date small{color:#e3bc63;font-family:"Open Sans",Tahoma,Geneva,sans-serif;font-size:10px;letter-spacing:1.4px;text-transform:uppercase;}
.valen-date{position:relative;isolation:isolate;overflow:hidden;width:min(760px,100%);margin-top:10px;padding:25px 32px 22px;border:1px solid rgba(227,188,99,.32);border-radius:20px;background:linear-gradient(135deg,rgba(7,32,15,.68),rgba(0,0,0,.52));box-shadow:0 18px 45px rgba(0,0,0,.25),inset 0 1px rgba(255,244,209,.1);backdrop-filter:blur(9px);}
.valen-date::before{content:"";position:absolute;z-index:-1;width:240px;height:240px;top:-145px;right:-60px;border-radius:50%;background:radial-gradient(circle,rgba(227,188,99,.28),transparent 68%);}
.valen-date::after{content:"";position:absolute;z-index:-1;inset:7px;border:1px solid rgba(227,188,99,.11);border-radius:14px;pointer-events:none;}
.calendar-kicker{margin:0 0 5px;color:#bfe1b4;font-family:'Cinzel',serif;font-size:12px;font-weight:600;letter-spacing:2.2px;text-transform:uppercase;}
.valen-date h3{margin:0;color:#f2dfb4;font-family:'Cinzel',serif;font-size:clamp(22px,3vw,31px);font-weight:400;letter-spacing:.5px;}
.calendar-dates{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:18px;margin:20px 0 17px;}
.calendar-date{min-width:0;padding:13px 10px;border-radius:12px;background:rgba(0,0,0,.18);}
.calendar-label{display:block;margin-bottom:4px;color:#e3bc63;font-family:'Cinzel',serif;font-size:13px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;}
.calendar-date strong{display:block;color:#fff1cc;font-size:clamp(20px,2.7vw,27px);font-weight:600;line-height:1.05;}
.calendar-detail{display:block;margin-top:6px;color:#c9c1a9;font-family:"Open Sans",Tahoma,Geneva,sans-serif;font-size:11px;line-height:1.25;}
.calendar-connector{display:grid;width:32px;height:32px;place-items:center;border:1px solid rgba(227,188,99,.4);border-radius:50%;color:#e3bc63;font-size:15px;box-shadow:0 0 18px rgba(227,188,99,.18);}
.calendar-image-links{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin:0 0 16px;}
.calendar-image-links a{padding:7px 12px;border:1px solid rgba(227,188,99,.38);border-radius:999px;color:#e9d9ae;background:rgba(0,0,0,.16);font-family:'Cinzel',serif;font-size:11px;letter-spacing:.7px;text-decoration:none;transition:background .2s,transform .2s;}
.calendar-image-links a:hover,.calendar-image-links a:focus-visible{outline:none;background:rgba(227,188,99,.18);transform:translateY(-1px);}
.valen-converter{margin:2px auto 0;padding:16px 0 0;border-top:1px solid rgba(227,188,99,.18);}
.converter-label{display:block;margin-bottom:8px;color:#bfe1b4;font-family:'Cinzel',serif;font-size:12px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;}
.converter-controls{display:flex;justify-content:center;gap:9px;}
.converter-controls label{display:grid;gap:4px;color:#c7d8ba;font-family:'Cinzel',serif;font-size:10px;letter-spacing:1px;text-align:left;text-transform:uppercase;}
.converter-controls input{width:90px;min-width:0;padding:9px 11px;border:1px solid rgba(227,188,99,.35);border-radius:7px;color:#fff1cc;background:rgba(0,0,0,.24);font:14px "Open Sans",Tahoma,Geneva,sans-serif;color-scheme:dark;}
.conversion-result{margin:13px auto 0;padding:11px 16px;border-radius:9px;background:linear-gradient(90deg,rgba(227,188,99,.13),rgba(126,208,113,.11));animation:result-reveal .35s ease-out;}
.conversion-result span{display:block;margin-bottom:2px;color:#c7d8ba;font-family:'Cinzel',serif;font-size:11px;letter-spacing:1.5px;text-transform:uppercase;}
.conversion-result strong{display:block;color:#fff1cc;font-family:'Cinzel',serif;font-size:clamp(19px,2.5vw,25px);font-weight:600;}
.calendar-explanation{display:inline-flex;align-items:center;gap:10px;margin-top:8px;padding:9px 16px;border:1px solid rgba(227,188,99,.5);border-radius:999px;color:#f2dfb4;background:rgba(227,188,99,.08);cursor:pointer;font-family:'Cinzel',serif;font-size:13px;letter-spacing:.5px;transition:background .25s,transform .25s,box-shadow .25s;}
.calendar-explanation:hover,.calendar-explanation:focus-visible{outline:none;background:rgba(227,188,99,.22);transform:translateY(-2px);box-shadow:0 8px 20px rgba(0,0,0,.2);}
.calendar-explanation span{color:#77ca70;font-size:18px;line-height:0;}
.calendar-modal{width:min(650px,calc(100% - 32px));overflow:hidden;border:1px solid rgba(227,188,99,.44);border-radius:22px;color:#f4e8c8;background:linear-gradient(145deg,#0d2918,#06120b);box-shadow:0 25px 80px rgba(0,0,0,.75);}
.calendar-modal::backdrop{background:rgba(0,0,0,.72);backdrop-filter:blur(5px);}
.calendar-modal__content{position:relative;padding:35px 42px 34px;}
.calendar-modal__glow{position:absolute;width:320px;height:320px;top:-205px;right:-120px;border-radius:50%;background:radial-gradient(circle,rgba(227,188,99,.34),transparent 67%);pointer-events:none;}
.calendar-modal h2{margin:0 40px 20px 0;color:#f2dfb4;font-family:'Cinzel',serif;font-size:clamp(24px,3.5vw,30px);line-height:1.1;}
.calendar-modal ul{display:grid;gap:10px;margin:0;padding-left:21px;color:#ded4bb;font-family:"Open Sans",Tahoma,Geneva,sans-serif;font-size:15px;line-height:1.45;}
.calendar-modal li::marker{color:#77ca70;}
.calendar-modal strong{color:#fff1cc;}
.calendar-modal__close{position:absolute;top:17px;right:18px;width:34px;height:34px;border:1px solid rgba(227,188,99,.35);border-radius:50%;color:#f2dfb4;background:rgba(0,0,0,.18);cursor:pointer;font-size:28px;line-height:28px;transition:background .2s,transform .2s;}
.calendar-modal__close:hover,.calendar-modal__close:focus-visible{outline:none;background:rgba(227,188,99,.22);transform:rotate(90deg);}
.calendar-image-modal{width:min(1100px,calc(100% - 32px));max-height:calc(100% - 32px);overflow:hidden;border:1px solid rgba(227,188,99,.44);border-radius:16px;color:#f4e8c8;background:#06120b;box-shadow:0 25px 80px rgba(0,0,0,.75);}
.calendar-image-modal::backdrop{background:rgba(0,0,0,.78);backdrop-filter:blur(5px);}
.calendar-image-modal__content{position:relative;padding:22px;}
.calendar-image-modal h2{margin:0 42px 14px 0;color:#f2dfb4;font-family:'Cinzel',serif;font-size:clamp(18px,3vw,25px);}
.calendar-image-modal img{display:block;max-width:100%;max-height:calc(100vh - 150px);margin:auto;}
.calendar-image-modal__close{position:absolute;top:12px;right:14px;width:34px;height:34px;border:1px solid rgba(227,188,99,.35);border-radius:50%;color:#f2dfb4;background:rgba(0,0,0,.4);cursor:pointer;font-size:28px;line-height:28px;}
.divider{width:220px;height:1px;background:#b28d43;margin:10px 0;}
.motto{position:relative;width:min(760px,100%);margin-top:10px;padding:38px 46px 34px;border:1px solid rgba(242,223,180,.22);border-radius:8px 28px 8px 28px;background:linear-gradient(115deg,rgba(6,26,13,.88),rgba(18,42,22,.8));box-shadow:12px 12px 0 rgba(0,0,0,.17),0 18px 35px rgba(0,0,0,.24);}
.motto::before{content:"";position:absolute;top:24px;bottom:24px;left:16px;width:2px;background:linear-gradient(transparent,#e3bc63 18%,#e3bc63 82%,transparent);opacity:.8;}
.motto::after{content:"";position:absolute;top:13px;right:13px;bottom:13px;left:13px;border:1px solid rgba(242,223,180,.09);border-radius:3px 20px 3px 20px;pointer-events:none;}
.motto h3{position:relative;margin:0;font-family:'Cinzel',serif;color:#f4dfaa;font-size:clamp(28px,4vw,43px);font-weight:600;letter-spacing:2px;line-height:1.15;text-shadow:0 2px 12px rgba(0,0,0,.4);}
.motto h3 span{display:inline-block;padding:0 13px;color:#81d276;font-size:.45em;vertical-align:middle;text-shadow:0 0 13px rgba(129,210,118,.55);}
.translation{position:relative;margin:13px 0 0;color:#b8c9aa;font-family:'Cinzel',serif;font-size:clamp(16px,2.5vw,21px);letter-spacing:2px;text-transform:uppercase;}
.pronunciation{position:relative;margin:24px 0 0;padding:16px 19px;border-left:3px solid #6ab262;border-radius:0 8px 8px 0;color:#c8d1bf;background:rgba(0,0,0,.18);font-family:"Open Sans",Tahoma,Geneva,sans-serif;font-size:16px;line-height:1.6;text-align:left;}
.pronunciation span{display:block;margin-bottom:5px;color:#e3bc63;font-family:'Cinzel',serif;font-size:18px;font-weight:600;letter-spacing:.7px;}
.pronunciation b{color:#f3e4c1;}
h4{position:relative;margin:31px 0 0;font-family:'Cinzel',serif;color:#d7bb78;font-size:clamp(21px,3vw,30px);letter-spacing:3px;}
h5{position:relative;margin:7px 0 0;font-family:'Cinzel',serif;font-size:clamp(28px,4vw,39px);color:#f2dfb4;letter-spacing:1px;}
h5 span{color:#80d275;}
.login{margin-top:45px;text-decoration:none;color:#e3bc63;border:1px solid #b28d43;padding:14px 42px;border-radius:40px;font-family:'Cinzel',serif;font-size:20px;transition:.35s;}
.login:hover{background:#d4a84b;color:#07200f;box-shadow:0 0 18px rgba(232,194,98,.45);}
footer{text-align:center;padding:18px;color:#ccb98d;font-size:18px;background:rgba(0,0,0,.25);backdrop-filter:blur(4px);}
@keyframes fadein{
    from {opacity:0;transform:translateY(25px);}
    to {opacity:1;transform:translateY(0);}
}
@keyframes result-reveal{
    from {opacity:0;transform:translateY(-5px);}
    to {opacity:1;transform:translateY(0);}
}
@media(max-width:900px){
    .heart{width:170px;}
    .motto{padding:31px 34px 28px;}
}
@media(max-width:600px){
    body{background-attachment:scroll;}
    .motto{padding:28px 25px 25px;}
    .motto::before{left:11px;}
    .pronunciation{padding:14px 15px;font-size:12px;}
    .married{font-size:22px;}
    .valen-wedding-date{font-size:13px;}
    main{padding:26px 16px;}
    .valen-date{padding:22px 16px 18px;}
    .calendar-dates{grid-template-columns:1fr;gap:7px;margin:16px 0;}
    .calendar-connector{justify-self:center;transform:rotate(90deg);}
    .converter-controls{flex-direction:column;align-items:stretch;}
    .converter-controls input{width:100%;}
    .calendar-modal__content{padding:30px 24px 28px;}
    .calendar-modal ul{font-size:14px;}
}

.header_bar {font-family:"Open Sans", Tahoma, Geneva, sans-serif;background:#003300;text-align:center;box-shadow: 0 3px 6px rgba(0, 0, 0, 0.5);margin:8px 8px 8px 8px;padding:0px 10px 0px 10px;border-radius:20px;}
.text_body{font-family:"Open Sans", Tahoma, Geneva, sans-serif;font-size:100%;padding:3px 3px 0px 3px;vertical-align:middle;font-weight:normal;}
.text_body_bold{font-family:"Open Sans", Tahoma, Geneva, sans-serif;font-size:100%;padding:3px 3px 0px 3px;vertical-align:middle;font-weight:bold;}
.text_body_small{font-family:"Open Sans", Tahoma, Geneva, sans-serif;color:#757575;font-size:80%;padding:0px 3px 0px 3px;vertical-align:middle;}
a.closebtn{color:#003300;font-weight:bold;font-size:40px;font-family:"Open Sans", Tahoma, Geneva, sans-serif;}
a.closebtn:hover{color:#f1f1f1;}
/* Container Light */
.panel_main {font-size:100%;color:#000000;background:#ffffff;box-shadow: 0 3px 6px rgba(0, 0, 0, 0.5);text-align:left;border:1px solid #DDDDDD;margin:auto 0px 10px 0px;padding:1px 6px 6px 6px;border-radius:20px;margin-right:5px;}
.panel_main_bar {font-size:95%;color:#000000;background:#d8d8d8;text-align:left;margin:5px 0px 0px 0px;padding:3px 0px 3px 10px;border-radius:20px;}
.panel_main_h2 {font-weight:bold;padding-left:5px;padding-top:3px;padding-bottom:0px;color:#000000;font-size:160%;}
.panel_main_h3 {font-weight:bold;padding-left:5px;padding-top:0px;padding-bottom:4px;color:#000000;font-size:130%;}
.panel_main_h3p {font-weight:bold;padding-left:0px;padding-top:0px;padding-bottom:4px;color:#000000;font-size:130%;}
.panel_main a{font-size:95%;color:#000000;text-decoration:none;font-weight:normal;}
.panel_main a:hover{font-size:95%;color:#003300;text-decoration:none;font-weight:normal;}
.panel_main a.closebtn{color:#000000;font-weight:bold;font-size:180%;font-family:"Open Sans", Tahoma, Geneva, sans-serif;}
.panel_main a.closebtn:hover{color:#003300;}

/* Left Sidenav */
.left_sidenav {text-align:left;height:100%;width:0;position:fixed;z-index:19;top:0px;left:0px;background-color:#e5e5e5;overflow-x:hidden;transition:0.2s;padding-top:60px;}
.left_sidenav a {padding:8px 8px 8px 2px;text-decoration:none;color:#FFFFFF;transition:0.1s;}
.left_sidenav a:hover {color:#969696;}
.left_sidenav .left_closebtn {color:#606060;font-weight:bold;position:absolute;top:0px;right:25px;font-size:40px;margin-left:50px;font-family:"Open Sans", Tahoma, Geneva, sans-serif;}
.left_sidenav .left_title {color:#202020;font-weight:bold;position:absolute;top:12px;left:12px;font-size:30px;margin-left:0px;}
/* Right Sidenav */
.right_sidenav {text-align:left;height:100%;width:0;position:fixed;z-index:19;top:0px;right:0px;background-color:#e5e5e5;overflow-x:hidden;transition:0.2s;padding-top:60px;}
.right_sidenav a {padding:8px 8px 8px 2px;text-decoration:none;color:#FFFFFF;transition:0.1s;}
.right_sidenav a:hover {color:#969696;}
.right_sidenav .right_closebtn {color:#606060;font-weight:bold;position:absolute;top:0px;right:25px;font-size:40px;margin-left:50px;font-family:"Open Sans", Tahoma, Geneva, sans-serif;}
.right_sidenav .right_title {color:#202020;font-weight:bold;position:absolute;top:12px;left:12px;font-size:30px;margin-left:0px;}


a.form_btn2{transition: transform 0.1s, box-shadow 0.1s;display:inline-block;font-size:100%;font-weight:bold;color:#efefef;background:#003300;padding:4px 14px 4px 14px;cursor:pointer;border-radius:20px;}
a.form_btn2:hover {box-shadow: 0 10px 10px -5px rgb(0 0 0 / 0.5), 0 8px 10px -6px rgb(0 0 0 / 0.8);font-size:100%;font-weight:bold;color:#ffffff;background:#002200;}
a.form_btn3{transition: transform 0.1s, box-shadow 0.1s;display:inline-block;font-size:100%;font-weight:bold;color:#003300;background:#c8c8c8;padding:4px 14px 4px 14px;cursor:pointer;border-radius:20px;}
a.form_btn3:hover {box-shadow: 0 10px 10px -5px rgb(0 0 0 / 0.5), 0 8px 10px -6px rgb(0 0 0 / 0.8);font-size:100%;border:none;font-weight:bold;color:#ffffff;background:#002200;}

.form_input {color:#000000;background:#F6F6F6;border:1px solid #DDDDDD;width:98%;font-size:100%;padding:3px;border-radius:10px;}
#submit {transition: transform 0.1s, box-shadow 0.1s;display:inline-block;font-size:100%;font-weight:bold;color:#efefef;background:#003300;border:1px solid #003300;padding:4px 8px 4px 8px;cursor:pointer;border-radius:20px;}
#submit:hover {box-shadow: 0 10px 10px -5px rgb(0 0 0 / 0.5), 0 8px 10px -6px rgb(0 0 0 / 0.8);color:#003300;background:#efefef;border:1px solid #003300;}

input[type=checkbox] { transform: scale(1.2); }
input[type=radio] { transform: scale(1.3); }

@media (orientation: landscape){
    a.form_btn2{padding:4px 14px 4px 14px;}
    a.form_btn3{padding:4px 14px 4px 14px;}
}
@media (orientation: portrait){
    a.form_btn2{padding:8px 16px 9px 16px;}
    a.form_btn3{padding:8px 16px 9px 16px;}
}
</style>
