:root{color-scheme:light;--ink: #1a1a1a;--white: #ffffff;--lavender: #e6ddf5;--pink: #f9dde7;--sky: #d9e8f7;--mint: #d8f0e4;--peach: #fbe6d4;--yellow: #fff3c4;--gold: #c9a227;--serif: "Cormorant Garamond", Georgia, serif;--script: "Allura", cursive;--sans: "Poppins", sans-serif}*{box-sizing:border-box}html{min-height:100%;background:var(--white)}body{min-width:320px;min-height:100vh;margin:0;background:var(--white);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}button,input,select{font:inherit;color:inherit}button{cursor:pointer}.page-shell{position:relative;display:flex;flex-direction:column;align-items:center;width:min(100%,860px);min-height:100vh;margin:0 auto;padding:30px 22px 25px}.top-mark{display:flex;align-items:center;gap:8px;height:18px;margin-bottom:27px}.top-mark span{width:29px;height:1px;background:var(--gold)}.top-mark i{width:6px;height:6px;border:1px solid var(--gold);transform:rotate(45deg)}.screen{display:flex;flex-direction:column;align-items:center;width:100%;text-align:center;animation:arrive .52s ease both}.screen[hidden]{display:none}.eyebrow{margin:0 0 11px;font-size:10px;font-weight:500;letter-spacing:.21em}.title{max-width:100%;margin:0;font-family:var(--serif);font-size:clamp(31px,7.3vw,52px);font-weight:600;line-height:.98;letter-spacing:.075em}.script-title{display:inline-block;margin:0 .04em 0 .08em;font-family:var(--script);font-size:1.22em;font-weight:400;letter-spacing:0;text-transform:lowercase;white-space:nowrap}.gold-rule{width:54px;height:1px;margin:23px auto 22px;background:var(--gold)}.intro{max-width:646px;margin:0;font-size:14px;line-height:1.9}.invitation{margin:25px 0 17px;font-size:14px;font-weight:500}#birth-form{width:min(100%,500px)}.date-fields{display:grid;grid-template-columns:.8fr 1.5fr 1fr;gap:12px}.field{text-align:left}.field label{display:block;margin:0 0 7px 3px;font-size:11px;letter-spacing:.04em}.field select,.field input{width:100%;height:53px;padding:0 14px;border:1px solid rgba(26,26,26,.12);border-radius:12px;outline:none;background:var(--lavender);font-size:13px;transition:border-color .18s ease,box-shadow .18s ease}.field-month select{background:var(--pink)}.field-year input{background:var(--sky)}.field select:focus,.field input:focus{border-color:var(--gold);box-shadow:0 0 0 3px #c9a22726}.field input::placeholder{color:#1a1a1a94}.form-error{min-height:20px;margin:9px 0 5px;font-size:12px;line-height:1.55}.form-error:not(:empty){padding:7px 10px;border-radius:8px;background:var(--peach)}.button{min-height:50px;padding:12px 22px;border:1px solid var(--gold);border-radius:999px;color:var(--ink);font-size:12px;font-weight:500;letter-spacing:.015em;box-shadow:0 4px 12px #1a1a1a0f;transition:transform .18s ease,background-color .18s ease,box-shadow .18s ease}.button:hover{transform:translateY(-2px);box-shadow:0 7px 16px #1a1a1a17}.button:active{transform:translateY(0)}.button:focus-visible,a:focus-visible{outline:2px solid var(--gold);outline-offset:3px}.button-primary{width:100%;margin-top:7px;background:var(--yellow)}.button-primary:hover{background:#ffefae}.privacy-note{margin:15px 0 0;font-size:10px;line-height:1.6;opacity:.76}.site-footer{margin-top:auto;padding-top:32px;font-size:10px;letter-spacing:.12em}.screen-result{max-width:600px}.result-heading{font-size:clamp(28px,6vw,43px)}.number-orbit{display:grid;width:144px;height:144px;margin:20px 0 16px;place-items:center;border:1px solid var(--gold);border-radius:50%;background:var(--number-pastel, var(--lavender))}.number-circle{display:grid;width:111px;height:111px;place-items:center;border:1px solid rgba(201,162,39,.85);border-radius:50%;background:#ffffff6b;font-family:var(--serif);font-size:66px;font-weight:600;line-height:1}.calculation{width:min(100%,410px);padding:14px 18px 16px;border-top:1px solid rgba(201,162,39,.55);border-bottom:1px solid rgba(201,162,39,.55)}.calculation-label{margin:0 0 9px;font-family:var(--serif);font-size:20px;font-weight:600}.calculation-steps{display:flex;flex-direction:column;gap:4px;font-size:13px;line-height:1.6}.calculation-step:last-child{font-weight:600}.master-notice{max-width:500px;margin:17px 0 0;padding:12px 16px;border-radius:12px;background:var(--yellow);font-size:12px;line-height:1.7}.message-card{width:min(100%,540px);margin:18px 0 13px;padding:19px 22px;border-radius:17px;background:var(--number-pastel, var(--lavender));text-align:left}.message-copy{margin:0;font-size:13px;line-height:1.85}.message-copy strong{font-weight:600}.result-actions{display:flex;flex-direction:column;align-items:center;gap:9px;width:min(100%,340px)}.button-share{width:100%;background:var(--pink)}.button-quiet{min-height:42px;padding:8px 18px;background:var(--white);box-shadow:none}.share-status{min-height:16px;margin:0;font-size:11px}.martha-invitation{max-width:465px;margin:18px 0 8px;font-size:12px;line-height:1.8}.martha-invitation a{color:var(--ink);text-decoration-color:var(--gold);text-underline-offset:3px}.disclaimer{margin:3px 0 0;font-size:10px;line-height:1.6;opacity:.75}@keyframes arrive{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}@media(min-width:700px){.page-shell{padding:38px 40px 28px}.top-mark{margin-bottom:32px}.intro{font-size:14px}.screen-result{padding-bottom:4px}.message-copy{font-size:14px}}@media(max-width:390px){.page-shell{padding-right:16px;padding-left:16px}.date-fields{gap:8px}.field select,.field input{padding-right:8px;padding-left:10px;font-size:12px}.message-card{padding:17px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}
