.storage-consent{display:flex;align-items:center;gap:12px;min-height:44px;margin:16px 0;font-size:12px}.storage-consent input[type=checkbox]{flex:0 0 22px;width:22px;min-height:22px;height:22px;margin:0;accent-color:var(--accent)}#storage-notice{font-size:12px;color:var(--ink);line-height:1.65}
:root{--paper:#f6f3ed;--ink:#29232f;--muted:#6b626d;--accent:#6e3991;--line:#dcd5de;--surface:#fcfaf6}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--paper);font:15px/1.6 'Avenir Next','Segoe UI',sans-serif}header,main{max-width:1376px;margin:auto;padding:0 54px}header{height:100px;display:flex;align-items:center;gap:60px;border-bottom:1px solid var(--line)}a{color:var(--accent)}.brand{text-decoration:none;font-size:32px;font-weight:650;letter-spacing:-2px;color:var(--ink)}.brand span{color:var(--accent)}.brand i{font-size:28px;margin-left:10px;font-style:normal;color:var(--accent)}.edition,.local,.eyebrow,.empty-caption,footer>span{font-size:10px;letter-spacing:1.5px}.edition b,footer b{color:#bca9c4;margin:0 10px}.local{margin-left:auto;letter-spacing:.4px;color:var(--muted)}.intro{display:flex;justify-content:space-between;align-items:flex-end;padding:54px 0 42px}.eyebrow{color:var(--accent);font-weight:700;margin:0 0 17px}h1{font:normal clamp(40px,4.7vw,66px)/1.06 Georgia,serif;letter-spacing:-2px;margin:0}h1 em{color:var(--accent);font-weight:normal}.lede{color:var(--muted);margin:0 0 5px;padding-right:55px;font-size:15px;line-height:1.8}.workspace{display:grid;grid-template-columns:minmax(340px,.88fr) minmax(0,1.12fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.input-panel{padding:30px 38px 30px 0;border-right:1px solid var(--line)}.output-panel{padding:30px 0 30px 38px;min-width:0}.section-heading{display:flex;align-items:center;gap:12px;margin-bottom:26px}.step{font-size:10px;color:var(--accent);border:1px solid #cbb9d4;border-radius:50%;width:26px;height:26px;display:grid;place-items:center}h2{font-size:17px;margin:0;font-weight:550;letter-spacing:-.4px}.tag{font-size:9px;letter-spacing:1px;margin-left:auto;color:var(--accent)}label{font-size:12px;font-weight:600;display:block}input,select{font:inherit;width:100%;display:block;min-height:46px;padding:10px 12px;margin:7px 0 0;background:var(--surface);color:var(--ink);border:1px solid #cfc6d2;border-radius:5px;min-width:0}input::placeholder{color:#8a808e;font-size:13px}input:focus,select:focus{outline:2px solid var(--accent);outline-offset:2px}button,summary{cursor:pointer}button{font:inherit;min-height:44px;border:1px solid var(--accent);border-radius:5px;color:var(--accent);background:transparent;padding:9px 16px;font-size:13px}button:hover{background:#ece3f1}button:focus-visible,summary:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:4px}button:disabled{opacity:.6;cursor:wait}.two{display:grid;grid-template-columns:1fr 1fr;gap:16px}.hint{font-size:11px;color:var(--muted);line-height:1.6;margin:10px 0 18px}.search{display:flex;gap:8px;margin-top:7px}.search input{margin:0;flex:1}.search button{flex-shrink:0}details{border-top:1px solid var(--line);padding:13px 0;font-size:12px}summary{min-height:25px;color:var(--accent);font-size:12px}summary span{float:right;font-size:10px;color:var(--muted)}details .two{margin-top:12px}details label{margin-top:12px}.text-button{border:none;padding:4px 0;text-align:left;font-size:11px}.primary{width:100%;display:flex;justify-content:space-between;align-items:center;background:var(--accent);color:white;padding:13px 18px;font-size:14px;margin-top:17px;border:0;min-height:51px}.primary:hover{background:#54266f}.primary span{font-size:23px;line-height:1}.privacy{text-align:center;color:var(--muted);font-size:10px;line-height:1.7;margin:13px 0 0}#empty{text-align:center;padding:30px 0 40px}.orbit{width:min(275px,80%);aspect-ratio:1;border:1px solid #d4c5dc;border-radius:50%;margin:0 auto 27px;display:grid;place-items:center;position:relative}.orbit:before,.orbit:after{content:'';position:absolute;inset:22px;border:1px solid #e0d5e4;border-radius:50%}.orbit:after{inset:52px;border-style:dashed;transform:rotate(24deg)}.orbit span{color:#bca1cd;font:normal 70px Georgia,serif}h3{font:normal 24px Georgia,serif;margin:0 0 10px}#empty p{color:var(--muted);font-size:13px}.empty-caption{margin-top:30px;font-size:9px;letter-spacing:1px;color:var(--muted)}.empty-caption span{padding:0 10px;color:#bda6c8}footer{display:flex;justify-content:space-between;gap:30px;padding:25px 0}footer>span{font-size:9px;align-self:center}footer p{font-size:10px;color:var(--muted);margin:0;max-width:520px}.legal{margin-bottom:28px}.legal p{max-width:900px;color:var(--muted)}#error{background:#f7e7e3;color:#852f20;padding:12px;border:1px solid #d5a397;border-radius:5px;font-size:13px}#places button{display:block;width:100%;text-align:left;margin:6px 0;font-size:12px;border-color:var(--line)}.chosen{font-size:12px;color:var(--accent)}#angles{display:flex;gap:24px;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:14px}#angles span{display:block;font-size:10px;letter-spacing:1px;color:var(--muted)}#angles strong{font:normal 22px Georgia,serif}#wheel svg{display:block;width:100%;max-width:530px;margin:12px auto}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:12px}caption{text-align:left;font-size:13px;padding:12px 0;font-weight:600}th{text-align:left;font-size:10px;color:var(--muted);font-weight:500}td,th{padding:9px 5px;border-bottom:1px solid var(--line)}td:first-child{font-weight:600}#cusps{columns:2;padding-left:22px;font-size:12px}#cusps li{padding:4px}#result>details{margin-top:18px}[hidden]{display:none!important}@media(max-width:1000px){header,main{padding-left:28px;padding-right:28px}.edition{display:none}.lede{padding-right:0}.input-panel{padding-right:24px}.output-panel{padding-left:24px}h2{font-size:15px}.tag{display:none}}@media(max-width:740px){header,main{padding-left:20px;padding-right:20px}header{height:78px;gap:15px}.brand{font-size:29px}.local{font-size:9px;letter-spacing:0}.intro{display:block;padding:34px 0 28px}h1{font-size:47px}.lede{margin:22px 0 0;font-size:13px}.lede br{display:none}.workspace{display:block}.input-panel{border-right:0;padding:24px 0}.output-panel{border-top:1px solid var(--line);padding:24px 0}.section-heading{margin-bottom:22px}h2{font-size:17px}footer{display:block}footer>span{display:block;margin-bottom:12px}#empty{padding-top:8px}.orbit{width:210px}.two{gap:12px}input{font-size:16px}.tag{display:block}summary{min-height:32px;padding-top:4px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
