.lab-birth{--birth-ink:#293746;--birth-paper:#f5efdf;--birth-gold:#a16a27;--birth-blue:#46768c;--birth-sage:#507452;color:var(--birth-ink);background:var(--birth-paper);border-radius:12px;min-width:0;padding:clamp(.7rem,2vw,1.3rem);font:16px/1.5 system-ui,sans-serif}.lab-birth.lab-birth :is(h3,h4){color:var(--birth-ink)}.lab-birth *,.lab-birth :before,.lab-birth :after{box-sizing:border-box}.lab-birth .birth-intro{max-width:78ch;margin-bottom:1.1rem}.lab-birth h3{margin:0 0 .55rem;font:600 clamp(1.35rem,3vw,1.9rem)/1.15 Georgia,serif}.lab-birth p{overflow-wrap:anywhere;margin:.5rem 0;line-height:1.55}.lab-birth .birth-layout{grid-template-columns:minmax(240px,.9fr) minmax(300px,1.2fr);align-items:start;gap:clamp(1rem,3vw,2.25rem);display:grid}.lab-birth .birth-form,.lab-birth .birth-results{min-width:0}.lab-birth .birth-form{background:#eee6d5;border:1px solid #c7b99f;border-radius:16px;padding:clamp(.75rem,2vw,1.2rem)}.lab-birth label{flex-direction:column;gap:.35rem;min-width:0;margin:.6rem 0;font-size:.9rem;font-weight:600;display:flex}.lab-birth.lab-birth input:not([type=checkbox]),.lab-birth.lab-birth select{color:#26323e;width:100%;min-width:0;max-width:100%;min-height:44px;font:inherit;color-scheme:light;background:#fffaf0;border:1px solid #958772;border-radius:8px;padding:.55rem .65rem;font-size:16px}.lab-birth input[type=date],.lab-birth input[type=time]{appearance:none}.lab-birth.lab-birth input[type=range]{accent-color:#56796c;-webkit-appearance:none;appearance:none;background:linear-gradient(#978771,#978771) 50%/1px 14px no-repeat;border:0;padding:0}.lab-birth input[type=range]::-webkit-slider-runnable-track{background:#b7b2a4;border-radius:3px;height:4px}.lab-birth input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:#56796c;border:2px solid #f7edda;border-radius:50%;width:18px;height:18px;margin-top:-7px}.lab-birth input[type=range]::-moz-range-track,.lab-birth input[type=range]::-moz-range-progress{background:#b7b2a4;border-radius:3px;height:4px}.lab-birth input[type=range]::-moz-range-thumb{background:#56796c;border:2px solid #f7edda;border-radius:50%;width:15px;height:15px}.lab-birth.lab-birth button{color:#293746;min-width:44px;max-width:100%;min-height:44px;font:inherit;cursor:pointer;white-space:normal;overflow-wrap:anywhere;background:#faf2df;border:1px solid #9c8a6b;border-radius:9px;padding:.65rem .9rem;font-size:.92rem;line-height:1.3}.lab-birth button:hover:not(:disabled){background:#fff9ee;border-color:#997440}.lab-birth button:disabled{cursor:default;opacity:.55}.lab-birth.lab-birth .birth-primary{color:#fff8e7;background:#415f56;border-color:#415f56;width:100%;margin-top:.7rem;font-weight:700}.lab-birth .birth-primary:hover:not(:disabled){background:#324f47}.lab-birth :is(button,input,select,summary):focus-visible{outline-offset:3px;outline:3px solid #b17c23}.lab-birth .birth-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;display:grid}.lab-birth .birth-check{cursor:pointer;flex-direction:row;align-items:center;gap:.65rem;min-height:44px}.lab-birth.lab-birth input[type=checkbox]{accent-color:#415f56;flex:0 0 22px;width:22px;height:22px;min-height:22px;padding:0}.lab-birth .birth-small{color:#59616a;font-size:.83rem}.lab-birth a{color:#385f7a;text-underline-offset:3px}.lab-birth .birth-location{border-left:3px solid #92a496;padding:.5rem .75rem;font-size:.86rem}.lab-birth summary{cursor:pointer;min-height:44px;padding:.7rem .2rem;font-size:.87rem;font-weight:600}.lab-birth .birth-places{gap:.4rem;display:grid}.lab-birth .birth-places button{text-align:left}.lab-birth .birth-places strong,.lab-birth .birth-places span{display:block}.lab-birth .birth-places span{margin-top:.25rem;font-size:.8rem}.lab-birth .birth-ambiguity{background:#fff1c9;border:1px solid #b3893e;border-radius:8px;margin:.65rem 0;padding:.6rem}.lab-birth .birth-status{min-height:1.5em;font-size:.86rem}.lab-birth [hidden]{display:none!important}.lab-birth .birth-result-heading h4{margin:0;font:600 1.25rem/1.2 Georgia,serif}.lab-birth .birth-stale{background:#fff0cc;border-radius:6px;padding:.45rem .65rem;font-size:.83rem}.lab-birth .birth-wheel{width:100%;max-width:440px;margin:.2rem auto .7rem}.lab-birth .birth-wheel svg{width:100%;height:auto;display:block;overflow:visible}.lab-birth .birth-rim{fill:#f2ead8;stroke:#a79066;stroke-width:2px}.lab-birth .birth-inner{fill:#faf6eb;stroke:#c2b293}.lab-birth .birth-divider{stroke:#b6a487;stroke-width:1px}.lab-birth .birth-sector-name{fill:#41434a;font:11px system-ui,sans-serif}.lab-birth .birth-glyph{fill:#776b58;font:17px Georgia,serif}.lab-birth .birth-centre{fill:#494f53;font:15px Georgia,serif}.lab-birth .birth-centre-small{letter-spacing:.7px;fill:#687078;font:10px system-ui,sans-serif}.lab-birth .birth-marker-symbol{fill:#fff9eb;font:18px Georgia,serif}.lab-birth .birth-sun{--mark:var(--birth-gold)}.lab-birth .birth-moon{--mark:var(--birth-blue)}.lab-birth .birth-rising{--mark:var(--birth-sage)}.lab-birth .birth-marker{fill:var(--mark);stroke:#fff7e8;stroke-width:1.5px}.lab-birth .birth-ray{stroke:var(--mark);stroke-width:1.2px;opacity:.7}.lab-birth .birth-possible{stroke:var(--mark);stroke-width:13px;fill:none;stroke-linecap:round}.lab-birth .birth-readout{grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;display:grid}.lab-birth .birth-sign{border-top:3px solid var(--mark);background:#f3ead9;border-radius:5px;min-width:0;padding:.65rem .6rem}.lab-birth .birth-sign span,.lab-birth .birth-sign strong,.lab-birth .birth-sign small{overflow-wrap:anywhere;display:block}.lab-birth .birth-sign span{margin-bottom:.2rem;font-size:.74rem}.lab-birth .birth-sign strong{font:600 clamp(.95rem,2vw,1.2rem)/1.2 Georgia,serif}.lab-birth .birth-sign small{color:#59616a;margin-top:.4rem;font-size:.72rem;line-height:1.4}.lab-birth .birth-explore{border:1px solid #c0b499;border-radius:11px;min-width:0;margin:1rem 0;padding:.6rem .85rem .85rem}.lab-birth .birth-explore legend{padding:0 .3rem;font-size:.95rem}.lab-birth .birth-explore label{flex-direction:row;justify-content:space-between;margin:.3rem 0 0}.lab-birth .birth-explore output{font-variant-numeric:tabular-nums}.lab-birth .birth-actions{flex-wrap:wrap;gap:.5rem;margin-top:.6rem;display:flex}.lab-birth .birth-actions button{flex:120px}@media (width<=760px){.lab-birth .birth-layout{grid-template-columns:minmax(0,1fr)}.lab-birth .birth-results{border-top:1px solid #bdad90;padding-top:1.1rem}}@media (width<=400px){.lab-birth .birth-fields{grid-template-columns:minmax(0,1fr);gap:0}.lab-birth .birth-readout{gap:.3rem}.lab-birth .birth-sign{padding:.5rem .35rem}}
