/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.relative{position:relative}.start{inset-inline-start:var(--spacing)}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}}:root{--ink:#173b2b;--deep:#245b3f;--green:#5f9b68;--mint:#a8c99f;--pale:#dce9c9;--cream:#fff8dd;--peach:#f4b39c}*{box-sizing:border-box}html,body{min-height:100%}body{background:var(--pale);color:var(--ink);margin:0;font-family:Courier New,Courier,monospace}button{font:inherit}.love-page{background:linear-gradient(#fff3 1px,transparent 1px),linear-gradient(90deg,#fff3 1px,transparent 1px),radial-gradient(circle at 50% 20%,#f8f2ce 0 12%,transparent 45%),var(--pale);background-size:22px 22px,22px 22px,auto,auto;place-items:center;min-height:100svh;padding:38px 18px 52px;display:grid;position:relative;overflow-x:hidden}.love-page.said-yes{place-items:start center;padding-top:28px;padding-bottom:70px}.love-page:before,.love-page:after{content:"";pointer-events:none;border:3px solid #245b3f1f;width:180px;height:180px;position:absolute;transform:rotate(45deg)}.love-page:before{top:12%;left:-105px}.love-page:after{bottom:8%;right:-110px}.pixel-sky{pointer-events:none;position:absolute;inset:0}.heart-rain,.plan-party{z-index:8;pointer-events:none;position:fixed;inset:0;overflow:hidden}.heart-rain span{color:#d87567;text-shadow:2px 2px #fff8ddcc;animation:linear infinite heart-fall;position:absolute;top:-12vh}.heart-rain span:nth-child(3n+1){color:var(--deep)}.heart-rain span:nth-child(3n+2){color:var(--peach)}.plan-party span{color:#f4b39c;text-shadow:1px 1px 0 var(--cream);font-size:16px;animation:2.9s cubic-bezier(.1,.55,.4,1) both party-fall;position:absolute;top:-8vh}.plan-party span:nth-child(3n+1){color:#397b52}.plan-party span:nth-child(3n+2){color:#f6d15e}@keyframes heart-fall{to{transform:translateY(118vh)rotate(540deg)}}@keyframes party-fall{0%{opacity:0;transform:translateY(-5vh)rotate(0)}10%{opacity:1}to{opacity:.9;transform:translateY(115vh)rotate(720deg)}}.float-bit{color:var(--green);opacity:.55;font-size:20px;animation:3.2s steps(3,end) infinite alternate bob;position:absolute}.bit-1{top:10%;left:8%}.bit-2{animation-delay:-.6s;top:18%;right:8%}.bit-3{bottom:18%;left:13%}.bit-4{animation-delay:-1.1s;bottom:12%;right:13%}.bit-5{top:32%;left:22%}.bit-6{animation-delay:-.3s;top:48%;right:19%}.bit-7{bottom:6%;left:32%}.bit-8{animation-delay:-.8s;top:6%;right:28%}@keyframes bob{to{opacity:.9;transform:translateY(-9px)rotate(5deg)}}.retro-window{z-index:2;background:var(--cream);border:3px solid var(--ink);width:min(100%,610px);box-shadow:9px 9px 0 var(--ink),14px 14px 0 #5f9b6861;border-radius:8px;position:relative}.window-bar{background:var(--deep);height:38px;color:var(--cream);border-bottom:3px solid var(--ink);letter-spacing:.08em;justify-content:space-between;align-items:center;padding:0 12px;font-size:11px;font-weight:700;display:flex}.window-dots{gap:5px;display:flex}.window-dots span{border:1px solid var(--ink);background:var(--peach);width:9px;height:9px;display:block}.window-dots span:nth-child(2){background:var(--pale)}.window-dots span:nth-child(3){background:var(--mint)}.window-heart{color:#ffd5c7;font-size:16px}.window-content{text-align:center;padding:22px 34px 20px}.eyebrow{letter-spacing:.15em;color:var(--green);justify-content:center;align-items:center;gap:10px;font-size:9px;font-weight:700;display:flex}.eyebrow span{background:var(--deep);color:var(--cream);padding:3px 6px}.portrait-frame{border:3px solid var(--ink);background:var(--mint);width:224px;height:158px;box-shadow:4px 4px 0 var(--green);margin:18px auto 15px;position:relative;overflow:visible;transform:rotate(-1deg)}.portrait-frame img{z-index:2;object-fit:cover;object-position:45% 55%;filter:saturate(.88)contrast(.98)sepia(.05);width:100%;height:100%;display:block;position:relative}.tape{z-index:4;background:#f4b39cd1;border:1px solid #173b2b47;width:46px;height:15px;position:absolute;top:-8px}.tape-left{left:-18px;transform:rotate(-36deg)}.tape-right{right:-18px;transform:rotate(32deg)}.photo-celebrate{animation:1.05s cubic-bezier(.25,.85,.25,1.15) both photo-turn}.drawn-heart{z-index:1;pointer-events:none;width:310px;height:228px;position:absolute;top:50%;left:50%;overflow:visible;transform:translate(-50%,-48%)}.drawn-heart path{fill:none;stroke:#d87567;stroke-width:5px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:820;stroke-dashoffset:820px;filter:drop-shadow(2px 2px 0 var(--cream));animation:1.65s cubic-bezier(.45,0,.25,1) .72s forwards draw-heart,1.1s ease-in-out 2.35s infinite alternate heart-glow}.photo-hearts{z-index:5;color:#d87567;letter-spacing:20px;width:170px;text-shadow:2px 2px 0 var(--cream);opacity:0;pointer-events:none;margin-left:-85px;font-size:18px;font-weight:900;animation:1.4s ease-out 1.25s both hearts-pop;position:absolute;top:-26px;left:50%}@keyframes photo-turn{0%{transform:rotate(-1deg)rotateY(0)scale(1)}45%{transform:rotate(2deg)rotateY(180deg)scale(1.12)}to{transform:rotate(-1deg)rotateY(360deg)scale(1)}}@keyframes hearts-pop{0%{opacity:0;transform:translateY(12px)scale(.4)}45%{opacity:1;transform:translateY(-8px)scale(1.15)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes draw-heart{to{stroke-dashoffset:0}}@keyframes heart-glow{to{stroke:#f09c8b;stroke-width:6px;filter:drop-shadow(0 0 5px #d875678c) drop-shadow(2px 2px 0 var(--cream))}}.tiny-intro{color:var(--green);margin:0 0 6px;font-size:11px;font-weight:700}h1{letter-spacing:-.04em;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(35px,7vw,49px);font-weight:700;line-height:.98}h1>span{font-size:.82em}h1 em,.inline-success h2 em{color:var(--deep);-webkit-text-decoration:underline wavy;text-decoration:underline wavy;-webkit-text-decoration-color:var(--peach);-webkit-text-decoration-color:var(--peach);-webkit-text-decoration-color:var(--peach);text-decoration-color:var(--peach);text-underline-offset:6px}.subline{color:#4b6f58;max-width:430px;margin:15px auto 23px;font-family:Georgia,serif;font-size:13px;font-style:italic;line-height:1.45}.button-zone{justify-content:center;align-items:flex-start;gap:78px;min-height:142px;padding-top:13px;display:flex;position:relative}.yes-button,.no-button{border:3px solid var(--ink);cursor:pointer;box-shadow:4px 4px 0 var(--ink);transition:transform .28s cubic-bezier(.2,1.4,.4,1),box-shadow .15s,background .15s}.yes-button{transform-origin:top;background:var(--deep);width:105px;height:58px;color:var(--cream);z-index:3;justify-content:center;align-items:center;gap:8px;font-size:22px;font-weight:900;display:flex;position:relative}.yes-button small{color:#ffbca9;font-size:16px;animation:.8s steps(2,end) infinite pulse}.yes-button:hover{box-shadow:6px 6px 0 var(--ink);background:#347550}.yes-button:focus-visible,.no-button:focus-visible{outline:4px solid var(--peach);outline-offset:5px}.no-side{z-index:4;width:150px;position:relative}.no-button{width:88px;height:43px;color:var(--ink);background:0 0;font-size:13px}.no-button:hover{background:#f5e5c2;transform:translate(-1px,-1px)}.message-slot{place-items:start center;min-height:67px;display:grid}.message-slot p{width:200px;color:var(--deep);margin:11px -25px 0;font-family:Georgia,serif;font-size:11px;font-style:italic;line-height:1.35;animation:.28s steps(3,end) pop-message}@keyframes pop-message{0%{opacity:0;transform:scale(.65)rotate(-2deg)}}@keyframes pulse{50%{opacity:.5}}.love-meter{border-top:2px dashed var(--mint);letter-spacing:.06em;justify-content:center;align-items:center;gap:9px;padding-top:13px;font-size:8px;font-weight:900;display:flex}.love-meter .meter-track{border:2px solid var(--ink);background:#fff;flex:none;width:118px;height:16px;padding:3px;display:block;position:relative;overflow:hidden}.love-meter .meter-track:after{content:"";z-index:2;pointer-events:none;background:repeating-linear-gradient(90deg,#0000 0 10px,#fff8ddd9 10px 12px);position:absolute;inset:3px}.love-meter .meter-fill{background:linear-gradient(90deg,var(--green) 0 73%,var(--peach) 88%);height:100%;transition:width 80ms linear;display:block}.love-meter .meter-shine{z-index:3;background:#ffffff94;width:14px;animation:2.2s ease-in-out 2s infinite meter-shine;position:absolute;top:3px;bottom:3px;left:-18px;transform:skew(-18deg)}.love-meter b{text-align:left;width:31px;color:var(--deep);font-variant-numeric:tabular-nums}@keyframes meter-shine{0%,35%{left:-18px}72%,to{left:122px}}.footer-note{z-index:2;letter-spacing:.07em;color:var(--deep);margin:0;font-size:9px;position:absolute;bottom:12px}.footer-note span{color:#d87567}.footer-note .coffee{color:#8a5a3b;font-size:12px}.answer-area{min-height:173px}.inline-success{border-top:2px dashed var(--mint);min-height:173px;margin-top:4px;padding:13px 4px 4px;animation:.6s cubic-bezier(.2,.9,.3,1) both success-rise}.success-heart{color:#d87567;text-shadow:3px 3px 0 var(--pale);font-size:31px;line-height:.8;animation:.8s steps(2,end) infinite heartbeat;display:inline-block}.inline-success h2{letter-spacing:-.035em;margin:0;font-family:Georgia,serif;font-size:clamp(23px,5vw,31px);line-height:1.04}.new-chapter{color:#4b6f58;margin:9px 0 17px;font-family:Georgia,serif;font-size:12px;font-style:italic;line-height:1.35}.date-planner{text-align:left;border:2px solid var(--ink);width:min(100%,460px);box-shadow:4px 4px 0 var(--mint);background:#fffdf0;margin:0 auto;padding:14px}.planner-title,.activity-label{letter-spacing:.1em;color:var(--deep);justify-content:space-between;align-items:center;gap:12px;font-size:9px;font-weight:900;display:flex}.planner-title{border-bottom:1px dashed var(--mint);padding-bottom:10px}.planner-title b,.activity-label b{background:var(--deep);color:var(--cream);flex:none;padding:3px 5px;font-size:8px}.date-field{gap:7px;margin:12px 0 15px;font-size:10px;font-weight:700;display:grid}.date-field input{width:100%;min-height:43px;color:var(--ink);background:var(--cream);border:2px solid var(--ink);box-shadow:2px 2px 0 var(--mint);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;border-radius:0;padding:8px 10px;font:700 12px Courier New,monospace}.activity-label{margin-bottom:8px}.activity-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.activity-option{text-align:left;min-height:43px;color:var(--ink);background:var(--cream);border:2px solid var(--ink);cursor:pointer;box-shadow:2px 2px 0 var(--mint);align-items:center;gap:7px;padding:7px 8px;font-size:9px;font-weight:700;transition:transform .15s,background .15s,box-shadow .15s;display:flex}.activity-option>span{font-size:15px}.activity-option:hover{box-shadow:3px 3px 0 var(--green);transform:translate(-1px,-1px)}.activity-option.selected{background:var(--deep);color:var(--cream);box-shadow:3px 3px 0 var(--peach)}.plan-complete{text-align:center;border-top:2px dashed var(--mint);margin-top:15px;padding:13px 10px 10px;animation:.55s cubic-bezier(.2,1.4,.4,1) both plan-pop}.party-line{color:#d87567;letter-spacing:.13em;font-size:9px;font-weight:900;animation:.7s steps(2,end) 4 party-blink;display:block}.plan-complete p{color:#4b6f58;margin:8px 0 11px;font:italic 13px/1.45 Georgia,serif}.plan-complete p b{color:var(--deep)}.plan-complete a{width:100%;min-height:44px;color:var(--cream);background:var(--deep);border:2px solid var(--ink);box-shadow:3px 3px 0 var(--ink);justify-content:center;align-items:center;gap:8px;padding:9px 12px;font-size:10px;font-weight:900;text-decoration:none;display:flex}.plan-complete a:hover{background:#347550}.plan-complete a:focus-visible{outline:4px solid var(--peach);outline-offset:3px}.plan-complete small{color:#66806f;margin-top:9px;font:italic 9px/1.35 Georgia,serif;display:block}@keyframes success-rise{0%{opacity:0;transform:translateY(24px)scale(.96)}}@keyframes heartbeat{50%{transform:scale(1.18)}}@keyframes plan-pop{0%{opacity:0;transform:scale(.85)rotate(-1deg)}}@keyframes party-blink{50%{color:var(--deep);transform:scale(1.08)}}@media (width<=560px){.love-page{align-items:start;padding:14px 10px 38px}.love-page.said-yes{padding-top:14px;padding-bottom:50px}.retro-window{box-shadow:6px 6px 0 var(--ink),10px 10px 0 #5f9b6861}.window-content{padding:17px 14px 15px}.portrait-frame{width:196px;height:139px;margin-top:15px}.button-zone{gap:38px;min-height:137px}.yes-button{width:93px;height:52px}.no-side{width:125px}.message-slot p{width:155px;margin-left:-15px;margin-right:-15px}.meter-track{width:101px}.activity-grid{grid-template-columns:1fr}.date-planner{padding:12px}.footer-note{display:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}
