:root{--ink:#0E1220;--panel:#161C2E;--panel2:#1C2340;--line:#2A3355;--gold:#E4B15C;--sindoor:#C4523B;--mist:#98A1BF;--bright:#EEF0F8;--dim:#6B7495}*{box-sizing:border-box;margin:0;padding:0}html{background:var(--ink)}.daiva{min-height:100vh;background:radial-gradient(1200px 600px at 50% -200px,#1A2138 0%,var(--ink) 60%);color:var(--bright);font-family:Georgia,Times New Roman,serif;padding-bottom:calc(64px + env(safe-area-inset-bottom));padding-top:env(safe-area-inset-top)}.wrap{margin:0 auto;padding:0 clamp(20px,3vw,44px)}.mast{text-align:center;padding:34px 0 6px}.wordmark{font-family:Palatino Linotype,Book Antiqua,Palatino,Georgia,serif;font-size:34px;letter-spacing:.42em;text-indent:.42em;color:var(--gold);font-weight:400}.mast small{display:block;margin-top:6px;font-family:ui-sans-serif,system-ui,sans-serif;font-size:10px;letter-spacing:.28em;text-transform:uppercase;color:var(--dim)}.u{font-family:ui-sans-serif,system-ui,sans-serif;font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--mist)}.tabs{display:flex;justify-content:center;gap:4px;margin:26px 0 22px;flex-wrap:wrap}.tabs button{position:relative;font-family:ui-sans-serif,system-ui,sans-serif;font-size:11px;letter-spacing:.18em;text-transform:uppercase;background:none;border:1px solid transparent;color:var(--dim);padding:8px 18px;cursor:pointer;border-radius:2px;transition:color .2s,border-color .2s}.tabs button:hover{color:var(--bright)}.tabs button.on{color:var(--gold);border-color:var(--line);background:var(--panel)}.tabs button:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.tabdot{position:absolute;top:6px;right:7px;width:6px;height:6px;border-radius:50%;background:var(--sindoor)}.card{background:var(--panel);border:1px solid var(--line);border-radius:3px;padding:22px 24px;margin-bottom:14px}.card h3{font-family:ui-sans-serif,system-ui,sans-serif;font-size:10px;letter-spacing:.26em;text-transform:uppercase;color:var(--gold);font-weight:600;margin-bottom:14px}.prose{font-size:15.5px;line-height:1.75;color:#d6daea}.versa{font-style:italic;color:var(--bright);font-size:16px;line-height:1.8}.verseref{color:var(--sindoor);font-family:ui-sans-serif,system-ui,sans-serif;font-size:10px;letter-spacing:.2em}.term b{color:var(--gold);font-style:italic;font-weight:600}.panch{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}.panch .cell{background:var(--panel2);border:1px solid var(--line);border-radius:3px;padding:12px 14px}.panch .cell b{display:block;font-size:15px;color:var(--bright);font-weight:400;margin-top:4px}.grow{display:flex;flex-wrap:wrap;gap:8px}.chip{display:flex;align-items:baseline;gap:8px;background:var(--panel2);border:1px solid var(--line);border-radius:3px;padding:9px 12px;flex:1 1 240px}.chip .g{font-size:17px}.chip.fav .g{color:var(--gold)}.chip.hard .g{color:var(--sindoor)}.chip p{font-size:12.5px;line-height:1.5;color:var(--mist)}.chip p b{color:var(--bright);font-weight:400}.strat{list-style:none}.strat li{display:flex;gap:14px;padding:10px 0;border-top:1px solid var(--line);font-size:14.5px;line-height:1.6;color:#d6daea}.strat li:first-child{border-top:none}.strat .tag{flex:0 0 84px;font-family:ui-sans-serif,system-ui,sans-serif;font-size:9.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--sindoor);padding-top:4px}.datenav{display:flex;align-items:center;justify-content:center;gap:18px;margin-bottom:18px}.datenav button{background:none;border:1px solid var(--line);color:var(--mist);width:34px;height:34px;border-radius:50%;cursor:pointer;font-size:15px}.datenav button:hover{color:var(--gold);border-color:var(--gold)}.datenav span{font-size:15px;letter-spacing:.04em}table.tbl{width:100%;border-collapse:collapse;font-size:14px}.tbl th{text-align:left;font-family:ui-sans-serif,system-ui,sans-serif;font-size:9.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--dim);font-weight:600;padding:8px 10px;border-bottom:1px solid var(--line)}.tbl td{padding:9px 10px;border-bottom:1px solid #222947;color:#d6daea}.tbl td.g{color:var(--gold);font-size:16px}.setup label{display:block;margin-bottom:14px}.setup input,.setup select{width:100%;margin-top:6px;background:var(--panel2);border:1px solid var(--line);color:var(--bright);padding:10px 12px;border-radius:3px;font-family:inherit;font-size:14px}.setup input:focus{outline:1px solid var(--gold)}.btn{background:var(--gold);color:#211a0c;border:none;padding:12px 28px;font-family:ui-sans-serif,system-ui,sans-serif;font-size:11px;letter-spacing:.22em;text-transform:uppercase;cursor:pointer;border-radius:2px;font-weight:700}.btn:hover{filter:brightness(1.08)}.btn:disabled{cursor:default}.note{font-size:12.5px;color:var(--dim);line-height:1.6;margin-top:10px}.ringbox{display:flex;justify-content:center;padding:8px 0 2px}@media (prefers-reduced-motion: no-preference){.ringspin{animation:settle 1.6s cubic-bezier(.2,.8,.2,1) 1}@keyframes settle{0%{transform:rotate(-14deg);opacity:0}to{transform:rotate(0);opacity:1}}}.wk td.nkname{color:var(--gold)}.plainsub{font-family:ui-sans-serif,system-ui,sans-serif;font-size:12.5px;color:var(--mist);line-height:1.55;margin:-8px 0 16px}.panch .cell small{display:block;font-family:ui-sans-serif,system-ui,sans-serif;font-size:10.5px;color:var(--dim);margin-top:3px;letter-spacing:.02em}.gloss{margin:0}.gloss dt{color:var(--gold);font-size:15px;margin-top:14px}.gloss dd{margin:4px 0 0;font-family:ui-sans-serif,system-ui,sans-serif;font-size:13.5px;line-height:1.65;color:#c9cee2}.jarg{border-bottom:1px dotted rgba(228,177,92,.65);cursor:pointer}.jarg:hover,.jarg:focus-visible{color:var(--gold);outline:none}.defbox{display:block;background:var(--panel2);border-left:2px solid var(--gold);border-radius:2px;padding:8px 12px;margin:7px 0;font-family:ui-sans-serif,system-ui,sans-serif;font-size:12.5px;font-style:normal;letter-spacing:0;line-height:1.6;color:#c9cee2;cursor:pointer}.defbox b{color:var(--gold);font-weight:600}.defhint{display:block;margin-top:4px;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--dim)}.figure{display:block;margin:10px auto 8px;text-align:center;max-width:340px}.figure img{display:block;width:100%;height:auto;border-radius:4px;border:1px solid #242C4E}.figcap{display:block;margin-top:5px;font-family:ui-sans-serif,system-ui,sans-serif;font-size:11px;color:var(--mist);line-height:1.5}.figcredit{display:block;margin-top:1px;font-family:ui-sans-serif,system-ui,sans-serif;font-size:9.5px;letter-spacing:.08em;color:var(--dim)}.skyfig{display:block;margin:2px auto 8px;text-align:center}.skyfig svg{display:block;margin:0 auto 4px}.skycap{display:block;font-family:ui-sans-serif,system-ui,sans-serif;font-size:11px;color:var(--mist);line-height:1.5;font-style:normal;max-width:240px;margin:0 auto}.skypan{overflow-x:auto;border-radius:4px}@media (prefers-reduced-motion: no-preference){.twk{animation-name:twk;animation-timing-function:ease-in-out;animation-iteration-count:infinite;animation-direction:alternate}@keyframes twk{0%{opacity:var(--twhi, 1)}to{opacity:var(--twlo, .4)}}.meteor{animation:meteor var(--dur, .8s) linear forwards;opacity:0}@keyframes meteor{0%{transform:translate(0);opacity:0}12%{opacity:1}70%{opacity:.9}to{transform:translate(var(--dx, 120px),var(--dy, 60px));opacity:0}}.sat{animation:sat var(--dur, 16s) linear forwards;opacity:0}@keyframes sat{0%{transform:translate(0);opacity:0}6%{opacity:var(--sato, .8)}94%{opacity:var(--sato, .8)}to{transform:translate(var(--dx, 400px),var(--dy, -60px));opacity:0}}}.ringwrap{max-width:360px;margin:0 auto}.ringinfo{background:var(--panel2);border-left:2px solid var(--gold);border-radius:2px;padding:10px 13px;margin:4px 0 10px;font-family:ui-sans-serif,system-ui,sans-serif;font-size:12.5px;line-height:1.6;color:#c9cee2;cursor:pointer}.ringinfo b{color:var(--gold);font-weight:600;display:block;margin-bottom:4px;font-size:13px}.ringinfo p{margin:0}.ringlegend{margin:6px 0 2px}.ringlegend div{display:flex;align-items:baseline;gap:9px;font-family:ui-sans-serif,system-ui,sans-serif;font-size:11.5px;color:var(--mist);line-height:1.5;padding:3px 0}.ringlegend .sw{flex:0 0 26px;height:4px;border-radius:2px;align-self:center}.ringlegend .swtext{background:none!important;height:auto;font-size:13px;letter-spacing:1px;align-self:baseline}.ringnote{font-family:ui-sans-serif,system-ui,sans-serif;font-size:11px;color:var(--dim);line-height:1.55;margin:6px 0 4px}.chalctl{width:100%;max-width:360px;margin-top:4px}.chalrow{display:flex;align-items:center;gap:6px;flex-wrap:wrap;padding:4px 0}.chalrow button{font-family:ui-sans-serif,system-ui,sans-serif;font-size:10px;letter-spacing:.12em;text-transform:uppercase;background:none;border:1px solid var(--line);color:var(--mist);padding:5px 10px;border-radius:2px;cursor:pointer}.chalrow button:hover{color:var(--gold);border-color:var(--gold)}.chalrow button.on{color:var(--gold);background:var(--panel);border-color:var(--gold)}.chalrow button.big{padding:6px 16px}.chalrow input[type=range]{flex:1;accent-color:var(--gold);min-width:120px}.chaldate{font-family:ui-sans-serif,system-ui,sans-serif;font-size:11.5px;color:var(--bright);letter-spacing:.06em}.jnote{width:100%;margin-top:10px;background:var(--panel2);border:1px solid var(--line);border-radius:3px;color:var(--bright);font-family:Georgia,serif;font-size:14px;padding:9px 12px;resize:vertical;line-height:1.5}.jnote:focus{outline:1px solid var(--gold)}.jnote::placeholder{color:var(--dim);font-style:italic}.citylist{position:absolute;z-index:5;left:0;right:0;top:100%;background:var(--panel2);border:1px solid var(--line);border-radius:3px;max-height:240px;overflow-y:auto}.citylist button{display:block;width:100%;text-align:left;background:none;border:none;color:var(--bright);font-family:inherit;font-size:13.5px;padding:9px 12px;cursor:pointer}.citylist button:hover,.citylist button:focus-visible{background:#242c4e;color:var(--gold);outline:none}.citylist button span{color:var(--dim)}.linkbtn{display:block;background:none;border:none;color:var(--mist);font-family:inherit;font-size:12.5px;cursor:pointer;margin-top:14px;text-decoration:underline;text-underline-offset:3px}.linkbtn:hover{color:var(--gold)}.loading{text-align:center;color:var(--dim);font-family:ui-sans-serif,system-ui,sans-serif;font-size:11px;letter-spacing:.22em;text-transform:uppercase;padding:60px 0}.profileswitch{position:relative;display:inline-block;margin-top:10px}.profilebtn{background:none;border:1px solid var(--line);color:var(--mist);font-family:ui-sans-serif,system-ui,sans-serif;font-size:11px;letter-spacing:.12em;padding:6px 14px;border-radius:2px;cursor:pointer}.profilebtn:hover,.profilebtn:focus-visible{color:var(--gold);border-color:var(--gold);outline:none}.profilelist{position:absolute;z-index:6;left:50%;transform:translate(-50%);top:calc(100% + 6px);background:var(--panel);border:1px solid var(--line);border-radius:3px;min-width:180px;list-style:none;padding:4px 0;text-align:left}.profilelist li{margin:0}.profilelist button{display:block;width:100%;text-align:left;background:none;border:none;color:var(--bright);font-family:ui-sans-serif,system-ui,sans-serif;font-size:13px;padding:9px 14px;cursor:pointer}.profilelist button:hover,.profilelist button:focus-visible{background:var(--panel2);color:var(--gold);outline:none}.profilelist button.on{color:var(--gold)}.profilelist .addperson{border-top:1px solid var(--line);color:var(--mist);margin-top:4px;padding-top:10px}.pairpick{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap}.pairpick label{flex:1 1 150px}.pairpick label .u{display:block;margin-bottom:5px}.pairpick select{width:100%;background:var(--panel2);border:1px solid var(--line);color:var(--bright);padding:9px 11px;border-radius:3px;font-family:inherit;font-size:14px}.pairpick button{background:none;border:1px solid var(--line);color:var(--mist);width:38px;height:38px;border-radius:50%;cursor:pointer;font-size:16px;flex:0 0 auto}.pairpick button:hover,.pairpick button:focus-visible{color:var(--gold);border-color:var(--gold);outline:none}.slines p{margin-bottom:10px}.slines p:last-child{margin-bottom:0}.kutarow{cursor:pointer}.kutarow:hover td,.kutarow:focus-visible td{color:var(--bright)}.kutarow:focus-visible{outline:1px solid var(--gold);outline-offset:-1px}.kutanote{font-family:ui-sans-serif,system-ui,sans-serif;font-size:12.5px;line-height:1.6;color:#c9cee2;background:var(--panel2);border-left:2px solid var(--gold)}.doshaflag{font-family:ui-sans-serif,system-ui,sans-serif;font-size:12px;line-height:1.6;color:#c9cee2;border-left:2px solid var(--sindoor)}.doshaflag b{color:var(--sindoor);font-weight:600}.doshaflag.soft{color:var(--dim);border-left-color:var(--line)}.doshaflag.soft b{color:var(--mist);font-weight:400}.synhi td{color:var(--bright)}.synhi td.g{color:var(--gold)}.synlagna{display:block;margin-top:3px;font-family:ui-sans-serif,system-ui,sans-serif;font-size:11px;color:var(--dim)}.sgrid{margin-top:16px;border-top:1px solid var(--line);padding-top:12px}.sgrid summary{font-family:ui-sans-serif,system-ui,sans-serif;font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--mist);cursor:pointer}.sgrid summary:hover,.sgrid summary:focus-visible{color:var(--gold);outline:none}.predblock{margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}.predlabel{display:inline-block;font-family:ui-sans-serif,system-ui,sans-serif;font-size:9.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--sindoor);border:1px solid var(--sindoor);border-radius:10px;padding:3px 10px;margin-bottom:10px}.predframing{color:var(--mist);font-style:italic}.watchblock{margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}.prose.quiet{color:var(--mist)}.childlink{margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}.childlink label{display:block;margin-bottom:10px}.childlink select{display:block;margin-top:6px;background:var(--panel2);border:1px solid var(--line);color:var(--bright);padding:8px 11px;border-radius:3px;font-family:inherit;font-size:13.5px}.omengroup{margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}.omengroup:first-child{margin-top:0;padding-top:0;border-top:none}.vbar{background:var(--panel2);border-radius:2px;height:6px;overflow:hidden}.vbar>div{height:100%;border-radius:2px}.kundalipair{display:flex;gap:18px;align-items:flex-start;flex-wrap:wrap}.kundalihalf{min-width:130px}.kundalihalf svg{display:block;width:100%;height:auto}.khcap{text-align:center;font-family:ui-sans-serif,system-ui,sans-serif;font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--mist);margin-bottom:8px}.khelp{margin-top:16px;border-top:1px solid var(--line);padding-top:12px}.khelprow{font-family:ui-sans-serif,system-ui,sans-serif;font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--mist);cursor:pointer;margin:0}.khelprow:hover{color:var(--gold)}.khelprow:focus-visible{color:var(--gold);outline:1px solid var(--gold);outline-offset:3px}.khelpmark{display:inline-block;width:14px;color:var(--gold)}.khelpbody{margin-top:12px}.khp{font-size:14px;margin-bottom:11px}.ksigns{list-style:none;margin:0 0 13px;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(155px,1fr));gap:1px 10px}.ksigns li{font-family:ui-sans-serif,system-ui,sans-serif;font-size:12.5px;color:#c9cee2;line-height:1.75;display:flex;gap:8px;align-items:baseline}.ksigns .kkey{flex:0 0 auto;min-width:38px;color:var(--gold);text-align:right}.markhit:focus{outline:none}.markhit:focus-visible{outline:1px solid var(--gold);outline-offset:1px}.chsum{margin-bottom:4px}.chattr{color:var(--gold);margin-bottom:9px}.chrow{border-top:1px solid var(--line)}.chrow:first-child{border-top:none}.chhead{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px;padding:10px 0;margin:0;cursor:pointer;font-family:ui-sans-serif,system-ui,sans-serif;font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--mist)}.chhead:hover .chlord{color:var(--gold)}.chhead:focus-visible{outline:1px solid var(--gold);outline-offset:2px}.chmark{display:inline-block;width:14px;color:var(--gold)}.chlord{color:var(--bright)}.chspan{color:var(--dim);letter-spacing:.1em}.chstate{margin-left:auto;color:var(--dim)}.chpast .chmark,.chpast .chlord{color:var(--mist)}.chrow.chcur .chmark,.chrow.chcur .chlord,.chrow.chcur .chstate{color:var(--gold)}.chbody{padding:2px 0 16px}.chbody .prose{font-size:14.5px}.chscenes{list-style:none;margin:14px 0 0;padding:0}.chscenes li{border-top:1px solid #222947;padding:10px 0 0;margin-bottom:10px}.chscenes li:last-child{margin-bottom:0}.chscenes .u{color:var(--dim);margin-bottom:5px}.chscenes li.chcur .u{color:var(--gold)}.chscenes .prose{font-size:13.5px;color:#c9cee2}.viewmode{display:inline-flex;margin-top:10px;margin-left:8px;border:1px solid var(--line);border-radius:2px;overflow:hidden;vertical-align:top}.viewmode button{background:none;border:none;color:var(--mist);font-family:ui-sans-serif,system-ui,sans-serif;font-size:11px;letter-spacing:.12em;padding:6px 14px;cursor:pointer}.viewmode button+button{border-left:1px solid var(--line)}.viewmode button:hover,.viewmode button:focus-visible{color:var(--gold);outline:none}.viewmode button.on{color:var(--gold);background:var(--panel2)}.findring{opacity:.85}@media (prefers-reduced-motion: no-preference){.findring{animation:findpulse 4.2s ease-out 1 both}@keyframes findpulse{0%{opacity:0;transform:scale(.45)}8%{opacity:.9;transform:scale(.7)}24%{opacity:.1;transform:scale(1.6)}32%{opacity:.75;transform:scale(.8)}50%{opacity:.15;transform:scale(1.6)}64%{opacity:.3;transform:scale(1.3)}to{opacity:0;transform:scale(1.6)}}}@media (prefers-reduced-motion: reduce){.findring{animation:findfade 4.2s ease-out 1 both}@keyframes findfade{0%{opacity:.85}70%{opacity:.85}to{opacity:0}}}.upline{margin:16px 0 8px;color:var(--gold)}.mline{display:block;margin:4px 0 6px}.mdev{display:block;font-size:17px;line-height:1.7;color:var(--bright)}.miast{display:block;font-style:italic;color:var(--bright)}.mgloss{display:block;color:var(--mist);font-size:.92em}.msource{display:block;margin-top:6px}.chip .gifts{color:var(--gold);font-weight:400}.mantra{margin:16px 0 6px;text-align:center}.mantra .u{color:var(--gold);margin-bottom:6px}.mantra .mline{font-size:16px;line-height:1.8}.malabox{text-align:center;margin:6px 0 14px}.mala{position:relative;display:inline-block;width:min(232px,68vw);aspect-ratio:1;background:none;border:none;padding:0;cursor:pointer;border-radius:50%;-webkit-tap-highlight-color:transparent}.mala:focus-visible{outline:1px solid var(--gold);outline-offset:6px}.malaring{display:block;width:100%;height:100%}.malaring .bwait{fill:var(--line)}.malaring .btold{fill:var(--gold)}.malaring .bmeru{fill:var(--sindoor)}.malanum{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-family:Palatino Linotype,Book Antiqua,Palatino,Georgia,serif;font-size:38px;color:var(--bright)}.mala:hover .malanum,.mala:active .malanum{color:var(--gold)}.malalabel{margin-top:2px}.audiorow{margin-top:14px;padding-top:12px;border-top:1px solid var(--line)}.audiotoggle{font-family:ui-sans-serif,system-ui,sans-serif;font-size:11px;letter-spacing:.12em;text-transform:uppercase;background:var(--panel2);border:1px solid var(--line);color:var(--dim);padding:6px 14px;border-radius:2px;cursor:pointer}.audiotoggle:hover{color:var(--gold);border-color:var(--gold)}.audiotoggle:focus-visible{outline:1px solid var(--gold);outline-offset:2px}.audiotoggle[aria-pressed=true]{color:var(--gold);border-color:var(--gold);background:var(--panel)}.audioel{display:none}.malarowcount{color:var(--gold)}.mupick{border-top:1px solid var(--line);padding:11px 0 12px}.murow{display:flex;align-items:baseline;margin:0;cursor:pointer;color:var(--bright);font-size:15px;line-height:1.5}.murow:hover{color:var(--gold)}.murow:focus-visible{color:var(--gold);outline:1px solid var(--gold);outline-offset:3px}.murow[aria-pressed=true]{color:var(--gold)}.mugloss{font-family:ui-sans-serif,system-ui,sans-serif;font-size:12.5px;line-height:1.6;color:var(--mist);margin:3px 0 0 14px}.muhorizon{margin:13px 0 2px 14px;padding-left:13px;border-left:1px solid var(--line)}.muwindow{color:var(--dim);margin-bottom:12px}.muhead{color:var(--gold);margin:16px 0 9px}.muwindow+.muhead{margin-top:0}.muday{margin-bottom:11px}.mudate{font-family:ui-sans-serif,system-ui,sans-serif;font-size:12.5px;letter-spacing:.06em;color:var(--bright);margin-bottom:2px}.mureasons{list-style:none;margin:0;padding:0}.mureasons li{position:relative;padding-left:13px;font-size:13.5px;line-height:1.6;color:#c9cee2}.mureasons li:before{content:"·";position:absolute;left:3px;color:var(--dim)}.munone{font-size:14px}
