.natal-page{background:linear-gradient(#f0eff9,#f7f9f7 420px);min-height:calc(100vh - 80px);padding:36px 24px 100px}.natal-shell{width:min(1240px,100%);margin:0 auto}.natal-shell .back-link{margin-bottom:26px}.natal-header{max-width:780px;margin-bottom:36px}.natal-header h1{letter-spacing:-.06em;margin:9px 0 13px;font-size:clamp(46px,7vw,75px);line-height:1}.natal-header p{color:#687285;max-width:690px;margin:0;font-size:16px;line-height:1.6}.natal-layout{grid-template-columns:minmax(320px,390px) minmax(0,1fr);align-items:start;gap:18px;display:grid}.natal-form-card,.natal-result-card{background:#fff;border:1px solid #dce0e8;border-radius:24px;box-shadow:0 18px 46px #1820390f}.natal-form-card{padding:27px}.natal-form-card h2,.natal-result-card h2{letter-spacing:-.035em;margin:0 0 22px;font-size:23px}.natal-form-card form{flex-direction:column;gap:16px;display:flex}.natal-form-card label{color:#353d54;flex-direction:column;gap:7px;font-size:13px;font-weight:750;display:flex}.natal-form-card input{color:#17213a;width:100%;min-height:43px;font:inherit;background:#fcfcfe;border:1px solid #cfd5e2;border-radius:10px;outline:none;padding:9px 11px;font-weight:500}.natal-form-card input:focus{border-color:#8951de;box-shadow:0 0 0 3px #8951de1f}.natal-field-row{grid-template-columns:1.2fr 1fr;gap:12px;display:grid}.natal-search-button{color:#7444b8;cursor:pointer;background:#f8f3ff;border:1px solid #d8caef;border-radius:10px;min-height:39px;margin-top:-8px;padding:8px 12px;font-size:13px;font-weight:800}.natal-place-list{border:1px solid #dce0e8;border-radius:10px;max-height:240px;margin-top:-8px;overflow-y:auto}.natal-place-list button{text-align:left;cursor:pointer;background:#fff;border:0;border-bottom:1px solid #ebedf2;flex-direction:column;gap:2px;width:100%;padding:10px 12px;display:flex}.natal-place-list button:last-child{border-bottom:0}.natal-place-list button:hover,.natal-place-list button.selected{background:#f6efff}.natal-place-list small{color:#858c9c}.natal-selected{color:#7144af;margin:-5px 0 0;font-size:12px;line-height:1.4}.natal-hint{color:#8790a0;margin:0;font-size:12px;line-height:1.5}.natal-generate-button{color:#fff;cursor:pointer;background:#874bdd;border:0;border-radius:12px;justify-content:center;align-items:center;gap:6px;min-height:48px;font-size:14px;font-weight:850;display:flex}.natal-generate-button:disabled,.natal-search-button:disabled{opacity:.55;cursor:not-allowed}.natal-result-card{min-height:455px;padding:29px}.natal-empty{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:395px;display:flex}.natal-empty span{color:#fff;background:#874bdd;border-radius:20px;place-items:center;width:65px;height:65px;font-size:33px;display:grid}.natal-empty h2{margin:20px 0 9px}.natal-empty p{color:#798293;max-width:360px;margin:0;font-size:14px;line-height:1.6}.natal-result-heading{justify-content:space-between;align-items:start;gap:12px;display:flex}.natal-result-heading h2{margin:6px 0}.natal-result-heading p{color:#8a91a0;margin:0;font-size:13px}.natal-cost{color:#7645b8;white-space:nowrap;background:#f3ecfd;border-radius:9px;padding:7px 9px}.natal-big-three{grid-template-columns:repeat(3,1fr);gap:10px;margin:25px 0;display:grid}.natal-big-three div{background:#f4effb;border-radius:14px;flex-direction:column;gap:6px;padding:17px;display:flex}.natal-big-three span{color:#886db0;font-size:12px;font-weight:700}.natal-big-three strong{color:#272038;font-size:19px}.natal-result-section{margin-top:28px}.natal-result-section h3{margin:0 0 11px;font-size:17px}.natal-data-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1px 16px;display:grid}.natal-data-grid>div{border-top:1px solid #e9ebef;flex-direction:column;gap:3px;min-width:0;padding:10px 0;display:flex}.natal-data-grid b{overflow-wrap:anywhere;font-size:13px}.natal-data-grid span{color:#747f90;font-size:12px}.natal-interpretation .markdown-content{color:#384256;font-size:14px;line-height:1.65}.natal-disclaimer{color:#8a91a0;border-top:1px solid #e9ebef;margin:25px 0 0;padding-top:13px;font-size:12px}@media (max-width:900px){.natal-layout{grid-template-columns:1fr}}@media (max-width:560px){.natal-page{padding:24px 12px 70px}.natal-header h1{font-size:49px}.natal-form-card,.natal-result-card{padding:20px}.natal-field-row,.natal-data-grid{grid-template-columns:1fr}.natal-big-three{gap:5px}.natal-big-three div{padding:10px}.natal-big-three strong{font-size:15px}}
