*{box-sizing:border-box;margin:0}html,body{color:#f6e7c8;background:#0b1430;height:100%;font-family:system-ui,-apple-system,Segoe UI,sans-serif;overflow:hidden}#app canvas{display:block}.glass{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#1e120a9e;border:1px solid #e6b45040;border-radius:18px}#brand{padding:10px 18px;font:600 18px Georgia,serif;position:fixed;top:16px;left:16px}#profile{width:270px;padding:16px;position:fixed;top:70px;left:16px}.pname{font:600 20px Georgia,serif}.plv{color:#e6b450;margin:2px 0 10px;font-size:14px}.bar{background:#ffffff1f;border-radius:4px;height:6px;overflow:hidden}.bar i{background:linear-gradient(90deg,#f3c862,#ff8a4a);height:100%;display:block}.pmeta{opacity:.75;margin:6px 0 10px;font-size:12px}.tasks{padding:0;font-size:14px;list-style:none}.tasks li{border-top:1px solid #ffffff0f;gap:6px;padding:6px 0;display:flex}.tasks li b{color:#e6b450;margin-left:auto}.tasks li.ok{opacity:.5;text-decoration:line-through}#top{gap:6px;padding:6px;display:flex;position:fixed;top:16px;right:16px}#top button{cursor:pointer;color:inherit;background:0 0;border:0;padding:6px 10px;font-size:20px}#actions{gap:4px;padding:8px;display:flex;position:fixed;bottom:18px;left:50%;transform:translate(-50%)}#actions button{color:#f6e7c8;cursor:pointer;background:0 0;border:0;border-radius:12px;flex-direction:column;align-items:center;gap:4px;padding:8px 12px;font-size:13px;display:flex}#actions button span{font-size:22px}#actions button:hover{background:#e6b4502e}#toast{opacity:0;pointer-events:none;padding:12px 22px;font-size:15px;transition:all .4s;position:fixed;bottom:110px;left:50%;transform:translate(-50%,20px)}#toast.show{opacity:1;transform:translate(-50%)}#rosary{text-align:center;background:#1d120b;width:min(480px,100%);height:100%;padding:28px;transition:all .4s;position:fixed;top:0;right:0;overflow:auto;transform:translate(100%)}#rosary.open{transform:none}#rosary .back{color:#e6b450;cursor:pointer;background:0 0;border:0;font-size:16px;display:block}#rosary h2{text-align:left;margin:18px 0 6px;font:600 34px Georgia,serif}.sub{opacity:.7;text-align:left;font-size:14px}.ring{cursor:pointer;-webkit-user-select:none;user-select:none;width:100%;max-width:340px;margin:20px auto 0;display:block}.ring .cur{fill:#ffd36a;filter:drop-shadow(0 0 6px #ffb347)}.count{pointer-events:none;height:200px;margin-top:-220px;font:600 44px Georgia,serif}.count #chant{color:#e6b450;margin-top:6px;font-size:18px}.count small{opacity:.6;font-family:system-ui;font-size:12px;display:block}.chants{flex-direction:column;gap:6px;margin-top:40px;display:flex}.chants button{color:inherit;cursor:pointer;background:#ffffff0d;border:1px solid #e6b45033;border-radius:10px;padding:10px}.chants button.on{background:#e6b45026;border-color:#e6b450}#loading{z-index:9;background:#0b1430;place-items:center;font:20px Georgia,serif;display:grid;position:fixed;inset:0}.lab-bar{flex-wrap:wrap;justify-content:center;gap:6px;max-width:95vw;display:flex;position:fixed;bottom:16px;left:50%;transform:translate(-50%)}.lab-bar button{color:#ddd;cursor:pointer;background:#2a3142;border:1px solid #444c60;border-radius:8px;padding:8px 12px}.lab-bar button.on{color:#222;background:#e6b450}body.lab .hud{display:none}@media (width<=700px){#profile{display:none}#actions button{padding:6px 7px;font-size:11px}}:root{--ui:#e6b450;--uibg:#1e120a9e}.glass{background:var(--uibg)!important;border-color:color-mix(in srgb,var(--ui) 35%,transparent)!important}.plv,.tasks li b,#rosary .back,.count #chant{color:var(--ui)!important}#brand a{color:var(--ui);margin-right:6px;text-decoration:none}#brand small{opacity:.7;margin-left:6px;font:12px system-ui}body.picking .hud,#picker:empty{display:none}#picker{text-align:center;background:radial-gradient(at top,#2a1d3a,#0b0f1e 70%);padding:48px 24px;position:fixed;inset:0;overflow:auto}#picker h1{letter-spacing:.12em;color:#f3c862;font:600 46px Georgia,serif}#picker .lead{opacity:.75;margin:8px 0 32px}.cards{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;max-width:1200px;margin:0 auto;display:grid}.card{text-align:left;color:#f6e7c8;background:linear-gradient(160deg,color-mix(in srgb,var(--s) 85%,#000),#0d0d14);border:1px solid color-mix(in srgb,var(--c) 40%,transparent);border-radius:18px;flex-direction:column;gap:8px;min-height:220px;padding:22px;text-decoration:none;transition:all .25s;display:flex}.card:hover{border-color:var(--c);box-shadow:0 10px 40px color-mix(in srgb,var(--c) 30%,transparent);transform:translateY(-4px)}.card small{color:var(--c);text-transform:uppercase;letter-spacing:.08em;font-size:11px}.card h3{font:600 24px Georgia,serif}.card p{opacity:.75;flex:1;font-size:14px}.card span{color:var(--c);font-weight:600}#picker footer{opacity:.4;letter-spacing:.1em;margin-top:40px;font-size:13px}.cards{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))!important;gap:20px!important}.card{overflow:hidden;min-height:0!important;padding:0!important}.card .art{aspect-ratio:16/10;width:100%;transition:transform .5s;display:block}.card:hover .art{transform:scale(1.04)}.card .body{flex-direction:column;gap:6px;padding:16px 20px 20px;display:flex}.card ul{opacity:.85;flex-direction:column;gap:5px;margin-top:6px;padding:0;font-size:13px;list-style:none;display:flex}.card li:before{content:"◆";color:var(--c);vertical-align:2px;margin-right:8px;font-size:9px}#brand{font:inherit;padding:0!important}#brand .switch{color:inherit;cursor:pointer;background:0 0;border:0;padding:10px 18px;font:600 18px Georgia,serif}#brand .switch small{opacity:.7;margin:0 4px;font:12px system-ui}#brand .menu{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0c0a10eb;border:1px solid #ffffff1a;border-radius:14px;width:290px;padding:8px;display:none;position:absolute;top:calc(100% + 8px);left:0}#brand.open .menu{display:block}#brand .menu a{color:#f6e7c8;border-left:3px solid var(--c,transparent);border-radius:10px;flex-direction:column;padding:10px 12px;text-decoration:none;display:flex}#brand .menu a:hover,#brand .menu a.on{background:#ffffff14}#brand .menu a small{opacity:.6;font-size:12px}#brand .menu .home{opacity:.75;border:0;font-size:13px}#profile{top:74px!important}#philo{z-index:5;background:#15110d;width:min(520px,100%);height:100%;padding:28px 32px;line-height:1.6;transition:all .4s;position:fixed;top:0;left:0;overflow:auto;transform:translate(-100%)}#philo.open{transform:none}#philo .back{color:var(--ui);cursor:pointer;background:0 0;border:0;font-size:16px}#philo .trad{color:var(--ui);text-transform:uppercase;letter-spacing:.1em;margin-top:18px;font-size:12px;display:block}#philo h2{margin:4px 0 12px;font:600 30px Georgia,serif}.sum{opacity:.85}#philo ol{counter-reset:p;margin:20px 0;padding:0;list-style:none}#philo ol li{counter-increment:p;border-top:1px solid #ffffff14;grid-template-columns:34px 1fr;gap:2px 10px;padding:12px 0;display:grid}#philo ol li:before{content:counter(p);border:1px solid var(--ui);width:28px;height:28px;color:var(--ui);border-radius:50%;grid-row:span 2;place-items:center;font-size:13px;display:grid}#philo ol b{color:#f6e7c8}#philo ol span{opacity:.75;font-size:14px}#philo blockquote{border-left:3px solid var(--ui);background:#ffffff0a;margin:20px 0;padding:16px 18px;font:italic 17px Georgia,serif}#philo cite{opacity:.6;margin-top:8px;font:13px system-ui;display:block}#philo h4{color:var(--ui);margin-top:12px}#philo .ch{opacity:.85;padding-left:18px}#brand{z-index:10}#brand .menu{max-height:75vh;overflow:auto}body.busy #actions button{opacity:.55;pointer-events:none;opacity:.55;pointer-events:none}#picker h1{margin-bottom:28px}.card .body{gap:2px!important;padding:12px 18px 16px!important}.card .body h3{font-size:21px!important}#musicpanel{z-index:6;flex-direction:column;gap:4px;width:260px;padding:12px;display:none;position:fixed;top:72px;right:16px}#musicpanel.open{display:flex}#musicpanel h4{color:var(--ui);margin:0 0 6px;font:600 15px Georgia,serif}#musicpanel button{color:#f6e7c8;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;padding:8px 10px;font-size:14px}#musicpanel button:hover,#musicpanel button.on{background:#ffffff14}#musicpanel button.on{color:var(--ui)}#musicpanel pre{white-space:pre-wrap;opacity:.85;border-top:1px solid #ffffff1a;margin:8px 4px 0;padding-top:8px;font:italic 14px/1.6 Georgia,serif}#musicpanel small{opacity:.5;font-size:11px}:root{--ui2:#9b2a1c;--ui3:#3c7a3a;--ink:#2a1208;--paper:#e8d9b5;--font:Georgia,serif;--motif:none;--bead1:#b27a3e;--bead2:#8a5a2b;--guru:#c0392b}body{font-family:var(--font)}.glass{font-family:var(--font);position:relative}.glass:before{content:"";background:var(--motif) repeat-x;opacity:.95;background-size:auto 4px;border-radius:2px;height:4px;position:absolute;top:0;left:14px;right:14px}#brand .switch,#profile .pname,#philo h2,#rosary h2,#musicpanel h4{font-family:var(--font)}.bar i{background:linear-gradient(90deg,var(--ui),var(--ui3))!important}#top{gap:2px!important;padding:4px!important}#top button{line-height:0;padding:3px!important}#top button.off,#top #music.off{opacity:.4}.ico{display:block}#actions{gap:6px!important;padding:10px 12px!important}#actions button{min-width:78px;font-family:var(--font);gap:6px!important;font-size:12.5px!important}#actions .i3{background:radial-gradient(circle at 50% 40%,color-mix(in srgb,var(--ui) 28%,transparent),transparent 70%);border:1.5px solid color-mix(in srgb,var(--ui) 55%,transparent);border-radius:50%;place-items:center;width:58px;height:58px;display:grid;position:relative}#actions .i3 img{object-fit:contain;filter:drop-shadow(0 3px 4px #00000080);width:56px;height:56px}#actions .i2{line-height:0;position:absolute;bottom:-4px;right:-6px}#actions button:hover .i3{border-color:var(--ui);transition:all .2s;transform:translateY(-2px)}.tasks li{align-items:center}.tasks li .ico{flex:none}#toast{font-family:var(--font);border-color:var(--ui)!important}#rosary,#philo{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-left:3px solid var(--ui2);background:var(--uibg)!important}#rosary:before,#philo:before{content:"";background:var(--motif) repeat-x;background-size:auto 6px;height:6px;position:absolute;top:0;left:0;right:0}.ring circle{fill:var(--bead1)!important}.ring circle:nth-child(2n){fill:var(--bead2)!important}.ring .guru{fill:var(--guru)!important}.chants button.on{border-color:var(--ui)!important;background:color-mix(in srgb,var(--ui) 18%,transparent)!important}#philo ol li:before{background:color-mix(in srgb,var(--ui2) 35%,transparent);border-color:var(--ui2)!important;color:var(--ui)!important}#philo blockquote{border-left-color:var(--ui2)!important}#brand .menu{background:var(--uibg)!important}@media (width<=700px){#actions button{min-width:56px}#actions .i3{width:44px;height:44px}#actions .i3 img{width:42px;height:42px}}#toast{bottom:150px!important}
