:root{font-family:Hiragino Mincho ProN,Yu Mincho,"Noto Serif JP",serif;color:#eef1f7;background:#08111f;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}html{background:#08111f}body{margin:0;min-width:320px;min-height:100vh;background:radial-gradient(circle at 50% -10%,rgba(69,102,155,.3),transparent 42%),linear-gradient(180deg,#08111f,#0b1629 52%,#07101d)}button,input{font:inherit}button{cursor:pointer}.app-shell{position:relative;width:min(100%,720px);min-height:100vh;margin:0 auto;padding:max(18px,env(safe-area-inset-top)) 18px max(36px,env(safe-area-inset-bottom));overflow:hidden}.star-field,.star-field:before,.star-field:after{position:fixed;inset:0;pointer-events:none;content:"";background-image:radial-gradient(circle,rgba(242,220,163,.85) 0 1px,transparent 1.5px),radial-gradient(circle,rgba(195,215,245,.55) 0 1px,transparent 1.5px);background-position:18px 42px,91px 124px;background-size:137px 151px,211px 197px;opacity:.2}.brand{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;gap:8px;margin-bottom:16px;color:#d9c17f;font-family:Georgia,serif;font-size:.95rem;letter-spacing:.22em}.brand-mark{font-size:1.25rem}.intro-card,.result-card{position:relative;z-index:1;border:1px solid rgba(210,188,126,.22);border-radius:28px;background:linear-gradient(145deg,#0f1e33f5,#081221f5);box-shadow:0 30px 80px #00000059}.intro-card{min-height:calc(100vh - 92px);padding:40px 24px 28px;text-align:center}.orbital-mark{position:relative;width:152px;height:152px;margin:0 auto 26px}.orbit{position:absolute;inset:14px;border:1px solid rgba(214,191,125,.35);border-radius:50%;transform:rotate(-22deg) scaleY(.62)}.orbit-two{inset:38px 6px;transform:rotate(37deg) scaleY(.75)}.sun-dot,.moon-dot{position:absolute;display:block;border-radius:50%}.sun-dot{width:46px;height:46px;left:53px;top:53px;background:radial-gradient(circle at 40% 35%,#fff7d8,#d3a948 58%,#8d6020);box-shadow:0 0 30px #ddb24a8c}.moon-dot{width:15px;height:15px;top:21px;right:23px;background:#d9e6f4;box-shadow:0 0 16px #cadff5a6}.eyebrow,.section-label{margin:0 0 10px;color:#cdb474;font-family:-apple-system,BlinkMacSystemFont,Hiragino Kaku Gothic ProN,sans-serif;font-size:.76rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase}h1,h2,h3,p{margin-top:0}h1{margin-bottom:18px;font-size:clamp(2rem,9vw,3.25rem);font-weight:500;letter-spacing:.06em;line-height:1.3}.lead{max-width:510px;margin:0 auto 30px;color:#cfd7e5;font-size:1rem;line-height:1.9}.birthday-form{max-width:440px;margin:0 auto;text-align:left}.birthday-form label{display:block;margin-bottom:9px;color:#e8e4d9;font-family:-apple-system,BlinkMacSystemFont,Hiragino Kaku Gothic ProN,sans-serif;font-size:.9rem;font-weight:700}.birthday-form input{width:100%;min-height:56px;padding:0 16px;border:1px solid rgba(216,195,137,.36);border-radius:14px;color:#f5f1e8;background:#030a149e;color-scheme:dark;font-family:-apple-system,BlinkMacSystemFont,Hiragino Kaku Gothic ProN,sans-serif;font-size:1rem}.birthday-form input:focus{outline:2px solid #c5a85e;outline-offset:2px}.primary-button,.secondary-button,.share-button{width:100%;min-height:56px;border:0;border-radius:999px;font-family:-apple-system,BlinkMacSystemFont,Hiragino Kaku Gothic ProN,sans-serif;font-size:1rem;font-weight:700}.primary-button{margin-top:16px;color:#0a1320;background:linear-gradient(135deg,#f0dd9b,#bd9342);box-shadow:0 10px 28px #b88e393d}.primary-button:active{transform:translateY(1px)}.share-button{border:0;color:#071019;background:#83d59a}.error{margin:8px 4px 0;color:#ffb8b8;font-size:.88rem}.privacy-note{display:flex;align-items:flex-start;gap:10px;max-width:440px;margin:24px auto 0;padding:14px 16px;border:1px solid rgba(197,216,239,.13);border-radius:14px;color:#aebbd0;background:#ffffff06;text-align:left;font-family:-apple-system,BlinkMacSystemFont,Hiragino Kaku Gothic ProN,sans-serif}.privacy-note span{color:#d4bd7d}.privacy-note p{margin:0;font-size:.8rem;line-height:1.7}.privacy-note strong{color:#dfe5ee}.method-note{max-width:460px;margin:20px auto 0;color:#7f8da4;font-size:.75rem;line-height:1.7}.result-card{padding:30px 20px}.result-heading{text-align:center}.result-heading h1{font-size:clamp(1.7rem,7vw,2.65rem)}.result-heading>p:last-child{color:#b9c5d6;line-height:1.8}.cosmic-pair{display:grid;grid-template-columns:1fr 56px 1fr;align-items:center;margin:30px 0 22px}.celestial{text-align:center}.celestial-icon{display:block;margin-bottom:8px;color:#e0c77f;font-size:2.2rem}.celestial-moon .celestial-icon{color:#dce7f4}.celestial small,.celestial span{display:block;color:#91a1b9;font-size:.75rem;line-height:1.5}.celestial strong{display:block;margin:5px 0;color:#f0eadb;font-size:.92rem;line-height:1.5}.connection{position:relative;height:1px;background:linear-gradient(90deg,transparent,#9b8653,transparent);text-align:center}.connection span{position:relative;top:-10px;padding:2px 6px;color:#a89566;background:#0d1b2e;font-size:.68rem}.cusp-note{padding:12px;border:1px solid rgba(220,190,109,.25);border-radius:10px;color:#cabf9f;background:#b4892f12;font-size:.78rem;line-height:1.7}.main-reading,.reading-grid article,.action-card,blockquote{border:1px solid rgba(202,218,239,.12);background:#ffffff06}.main-reading{padding:24px 20px;border-radius:18px}.main-reading h2,.action-card h2{margin-bottom:14px;font-size:1.35rem;font-weight:500;line-height:1.55}.main-reading>p:not(.section-label),.action-card p{color:#c2ccdb;line-height:1.9}.solar-season{margin:16px 0 0;padding-top:14px;border-top:1px solid rgba(205,180,116,.16);color:#d0bd88!important;font-size:.9rem}.reading-grid{display:grid;gap:12px;margin:14px 0}.reading-grid article{position:relative;padding:20px;border-radius:16px}.reading-number{color:#887649;font-family:Georgia,serif;font-size:.76rem}.reading-grid h3{margin:6px 0 10px;font-size:1rem;font-weight:600}.reading-grid p{margin:0;color:#abb8ca;font-size:.93rem;line-height:1.8}.action-card{display:flex;gap:16px;align-items:flex-start;padding:22px 20px;border-color:#d3b56540;border-radius:18px;background:linear-gradient(135deg,#8e6d271f,#ffffff05)}.action-moon{flex:0 0 auto;color:#e1c679;font-size:2rem}.action-card h2{margin-bottom:8px}.action-card p:last-child{margin:0;font-size:.85rem}blockquote{margin:14px 0 0;padding:26px 20px;border-radius:18px;color:#f1ead8;font-size:1.08rem;line-height:1.8;text-align:center}blockquote span{display:block;margin-bottom:10px;color:#9eabc0;font-family:-apple-system,BlinkMacSystemFont,Hiragino Kaku Gothic ProN,sans-serif;font-size:.72rem;letter-spacing:.08em}.result-actions{display:grid;gap:10px;margin-top:22px}.share-note,.share-status{margin:-2px 8px 4px;color:#7f8fa6;font-family:-apple-system,BlinkMacSystemFont,Hiragino Kaku Gothic ProN,sans-serif;font-size:.73rem;line-height:1.6;text-align:center}.share-status{margin-top:0;color:#a9cdb4}.secondary-button{border:1px solid rgba(212,188,121,.45);color:#e6d59f;background:transparent}.text-button{min-height:44px;border:0;color:#8998ad;background:transparent;font-size:.85rem}.disclaimer{margin:24px 4px 0;color:#738197;font-size:.75rem;line-height:1.7;text-align:center}@media(min-width:620px){.app-shell{padding:30px 24px 54px}.intro-card{padding:48px 54px 34px}.result-card{padding:42px}.reading-grid{grid-template-columns:repeat(3,1fr)}.reading-grid article{padding:20px 18px}}@media(prefers-reduced-motion:no-preference){.moon-dot{animation:float 5s ease-in-out infinite}@keyframes float{50%{transform:translate(-4px,5px)}}}
