@font-face{font-family:Library;src:url('/tu-tap/fonts/library-sans.woff') format('woff');font-display:swap}@font-face{font-family:Library;src:url('/tu-tap/fonts/library-sans-bold.woff') format('woff');font-weight:700;font-display:swap}@font-face{font-family:Book;src:url('/tu-tap/fonts/library-serif.woff') format('woff');font-display:swap}
:root{--bg:#f7f5ef;--surface:#fffdf8;--ink:#293c35;--muted:#63746b;--line:#dedfd3;--green:#244b40;--green-soft:#eaf0e6;--gold:#a47732;--red:#843f3c;--shadow:0 8px 30px #243d3510;--nav:234px;color-scheme:light;font-family:Library,system-ui,sans-serif;font-size:16px}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);line-height:1.7}body.dark{--bg:#14241e;--surface:#1d3028;--ink:#f2f0e4;--muted:#b4c5b8;--line:#395144;--green:#d1dfc4;--green-soft:#304538;--gold:#e0b76c;--red:#edb4a4;--shadow:none;color-scheme:dark}a{color:var(--green);text-underline-offset:4px}button,input,select,textarea{font:inherit;color:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,.button{border:1px solid var(--line);background:var(--surface);border-radius:12px;min-height:44px;padding:9px 16px;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:7px;font-size:.9rem;line-height:1.5}button:hover,.button:hover{border-color:var(--gold);filter:brightness(.98)}button:disabled{opacity:.55;cursor:default}button.primary,.button.primary{background:var(--green);color:var(--surface);border-color:var(--green)}button.danger{color:var(--red);border-color:var(--red)}.icon{padding:6px;min-width:44px;flex-shrink:0}svg{width:23px;height:23px;vertical-align:middle;flex-shrink:0}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--gold);outline-offset:3px}input:not([type=checkbox]):not([type=range]),select,textarea{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:11px 12px;min-height:46px;width:100%;max-width:100%}input[type=range]{width:100%;accent-color:var(--green);min-height:40px}input[type=checkbox]{accent-color:var(--green);min-width:20px;min-height:20px}textarea{resize:vertical;min-height:110px}.check{display:flex;align-items:center;gap:10px;padding:8px 0}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}[hidden]{display:none!important}.skip{position:fixed;top:-80px;left:10px;z-index:100;background:var(--surface);padding:12px}.skip:focus{top:10px}
.sidebar{width:var(--nav);position:fixed;inset:0 auto 0 0;background:var(--surface);border-right:1px solid var(--line);display:flex;flex-direction:column;z-index:20;padding:28px 16px}.brand{display:flex;gap:12px;align-items:center;text-decoration:none;font-family:Book,Georgia,serif;font-size:21px;line-height:1.3;padding:0 4px 32px}.brand img{width:44px}.brand small{font-family:Library,sans-serif;font-size:9px;letter-spacing:1.7px;display:block;color:var(--muted);margin-top:8px}.sidebar nav{display:grid;gap:8px}.nav-item{padding:12px 15px;display:flex;gap:13px;border-radius:13px;text-decoration:none;align-items:center;color:var(--muted);font-size:14px}.nav-item.active{background:var(--green-soft);color:var(--green);font-weight:bold}.sidebar-foot{margin-top:auto;display:grid;gap:10px;border-top:1px solid var(--line);padding:22px 10px 0;font-size:12px}.sidebar-foot a{text-decoration:none}.shell{margin-left:var(--nav)}.topbar{padding:18px 38px;display:flex;gap:20px;align-items:center;border-bottom:1px solid var(--line);background:var(--surface);min-height:82px}.topbar form{position:relative;max-width:640px;flex:1}.topbar input{padding-right:50px!important;background:var(--bg)!important;border:0!important}.topbar form button{position:absolute;right:1px;top:1px;border:0;background:transparent}.topbar>a{font-size:13px;text-decoration:none;white-space:nowrap}.mobile-brand{display:none}.connection{font-size:12px;padding:0 38px;background:var(--green-soft);color:var(--ink);line-height:2}.connection:empty{display:none}main{max-width:1440px;margin:auto;padding:30px 38px 60px;min-height:80vh;outline:none}.page-head{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:26px}.eyebrow{text-transform:uppercase;letter-spacing:2px;font-size:10px;font-weight:bold;color:var(--gold);margin:0 0 9px}h1,h2,h3{font-family:Book,Georgia,serif;font-weight:normal;line-height:1.4;margin:0 0 12px}h1{font-size:32px}h2{font-size:25px}h3{font-size:20px}p{margin:0 0 15px}.muted,.fine{color:var(--muted)}.fine{font-size:12px;line-height:1.8}.section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:28px 0 16px}.section-head h2{margin:0}.section-head a{font-size:13px}.actions{display:flex;flex-wrap:wrap;gap:9px;align-items:center;margin-top:16px}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.card{background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:23px;box-shadow:var(--shadow);min-width:0;overflow-wrap:anywhere}.card p{font-size:14px}.card-link{text-decoration:none;display:block;color:inherit;transition:transform .15s}.card-link:hover{transform:translateY(-3px);border-color:var(--gold)}.card-symbol{color:var(--gold);background:var(--green-soft);border-radius:16px;display:flex;align-items:center;justify-content:center;width:52px;height:52px;margin-bottom:18px}.card-symbol svg{width:28px;height:28px}.tag{display:inline-block;padding:3px 9px;border-radius:20px;background:var(--green-soft);color:var(--green);font-size:10px;margin:0 6px 8px 0}.hero{background:linear-gradient(110deg,#e7ecdf,#f3eee0);border:1px solid #d9dfcc;border-radius:26px;padding:38px;position:relative;overflow:hidden;min-height:300px;display:flex;align-items:center;color:#244b40}.hero-content{max-width:61%;position:relative;z-index:2}.hero h1{font-size:39px}.hero p{max-width:520px;font-size:15px}.hero .primary{background:#244b40;color:#fffdf8}.hero-art{position:absolute;width:330px;height:330px;right:1%;bottom:-30px;color:#a48449}.hero-art svg{width:100%;height:100%;opacity:.72}.hero-art:before,.hero-art:after{content:'';position:absolute;border:1px solid #bba46e66;border-radius:50%;inset:15px}.hero-art:after{inset:45px}.verse-card{background:var(--surface);border-left:3px solid var(--gold);padding:22px 28px;border-radius:0 18px 18px 0}.verse-card blockquote{font-family:Book,serif;font-size:20px;margin:10px 0;white-space:pre-line}.split{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(260px,1fr);gap:22px}.stats{display:flex;flex-wrap:wrap;gap:24px}.stat strong{display:block;font-family:Book,serif;font-size:28px;color:var(--green)}.stat span{font-size:12px;color:var(--muted)}.tabs{display:flex;gap:8px;overflow:auto;max-width:100%;padding:2px 1px 12px;margin-bottom:18px}.tabs a,.tabs button{white-space:nowrap;text-decoration:none;border-radius:30px;font-size:13px}.tabs .active{background:var(--green);color:var(--surface)}.empty{padding:25px;border:1px dashed var(--line);border-radius:16px;color:var(--muted);text-align:center}.list{display:grid;gap:12px}.list-row{display:flex;gap:16px;align-items:center;padding:17px 20px;background:var(--surface);border:1px solid var(--line);border-radius:15px;min-width:0}.list-row .grow{min-width:0;flex:1}.list-row h3{font-size:17px;margin-bottom:5px}.list-row p{font-size:12px;margin:0}.list-row .actions{margin:0}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:15px 0}.form-grid label,form>label{font-size:13px;display:block}.form-grid input,.form-grid select{margin-top:7px}.full{grid-column:1/-1}.error{color:var(--red);padding:12px 0;white-space:pre-line}.notice{background:var(--green-soft);padding:15px 18px;border-radius:12px;font-size:13px}.foot{padding:20px 38px;border-top:1px solid var(--line);font-size:11px;color:var(--muted)}.foot a{color:inherit}
.practice-stage{min-height:440px;padding:32px 24px;text-align:center;border-radius:24px;display:flex;align-items:center;justify-content:center;flex-direction:column;background:radial-gradient(ellipse at 50% 15%,#f5ebc7,#d4e0ce 70%,#98b5a2);color:#244b40}.practice-stage.dawn{background:radial-gradient(ellipse at 60% 20%,#fff3ba,#e6c2a3 50%,#75867c);color:#433a30}.practice-stage.forest{background:radial-gradient(ellipse at 50% 20%,#7a9c77,#244b40 70%);color:#f3f0df}.practice-stage .primary{background:#244b40;color:white}.breath-orbit{width:210px;height:210px;border:1px solid currentColor;border-radius:50%;display:grid;place-items:center;position:relative;margin:16px 0;isolation:isolate}.breath-orbit:before{content:'';position:absolute;inset:15px;border-radius:50%;background:currentColor;opacity:.08;z-index:-1}.breath-orbit:before{transform:scale(var(--breath-scale,1));transition:transform .25s linear}.breath-orbit.breathing:before{opacity:.16}.timer-number{font-size:48px;line-height:1.2;font-variant-numeric:tabular-nums;font-family:Book,serif}.timer-label{font-size:12px;margin-top:8px}.mala-tap{border-radius:50%;width:230px;height:230px;display:flex;flex-direction:column;border:8px dotted #bfa66d;background:#fffdf8;color:#244b40;font-size:15px;touch-action:manipulation;user-select:none;-webkit-user-select:none}.mala-tap strong{font-family:Book,serif;font-size:58px;line-height:1.3}.mala-tap:active{transform:scale(.98)}.instrument{min-height:130px;font-size:22px}.tool-panel{max-width:900px;margin:auto}.plan-step{display:grid;grid-template-columns:1fr 1fr 70px 44px;gap:8px;padding:12px 0;border-bottom:1px solid var(--line)}.plan-current{border:2px solid var(--gold)}.timeline{border-left:2px solid var(--line);padding-left:20px;margin:20px 0}.timeline>div{margin-bottom:18px}
.reader-page{max-width:850px;margin:auto}.reader-tools{position:sticky;top:0;background:var(--surface);z-index:10;padding:10px 0;display:flex;gap:8px;flex-wrap:wrap;border-bottom:1px solid var(--line)}.reader-tools button{font-size:12px;padding:7px 12px}.reader-body{font-family:Book,Georgia,serif;font-size:var(--read-size,24px);line-height:var(--read-line,1.9);background:var(--read-bg,#fffdf5);color:var(--read-ink,#25382e);padding:30px 36px;border-radius:16px;margin-top:18px;overflow-wrap:anywhere;user-select:text;-webkit-user-select:text}.reader-body.sans{font-family:Library,sans-serif}.verse{margin:0 0 34px;scroll-margin-top:110px;position:relative}.verse header{display:flex;gap:12px;align-items:center;justify-content:space-between;font:12px Library,sans-serif;color:#677365}.verse p{white-space:pre-line;margin-top:8px}.verse.saved{border-left:3px solid var(--gold);padding-left:14px}.verse button{min-height:35px;font-size:11px;padding:4px 8px;background:transparent;border:1px solid currentColor;color:inherit}.reader-page .collection{font-size:12px;color:var(--muted)}.read-progress{position:fixed;height:3px;top:0;left:var(--nav);width:0;background:var(--gold);z-index:50}.calendar-layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(260px,1fr);gap:20px}.calendar-toolbar{display:flex;gap:10px;align-items:center;justify-content:space-between;margin-bottom:15px}.calendar-toolbar h2{font-size:22px;margin:0}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.weekday{text-align:center;font-size:11px;color:var(--muted);padding:6px}.calendar-day{border:0;min-height:66px;padding:5px 1px;border-radius:9px;display:flex;flex-direction:column;gap:0;position:relative;background:transparent}.calendar-day strong{font-size:17px;font-weight:normal}.calendar-day small{font-size:10px;color:var(--muted)}.calendar-day.out{opacity:.4}.calendar-day.today{box-shadow:inset 0 0 0 1px var(--gold)}.calendar-day.selected{background:var(--green);color:var(--surface)}.calendar-day.selected small{color:inherit}.calendar-day.has-event:after{content:'';width:4px;height:4px;background:var(--gold);border-radius:50%;position:absolute;bottom:3px}.year-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.day-number{font-family:Book,serif;font-size:54px;color:var(--gold);line-height:1.3}.prayer-card header{display:flex;justify-content:space-between;gap:10px;font-size:12px;margin-bottom:12px}.prayer-card .body{white-space:pre-wrap;font-size:15px;overflow-wrap:anywhere}.prayer-card .recipient{font-size:12px;color:var(--gold)}.prayer-card .actions button{font-size:11px;min-height:36px;padding:6px 10px}.ambient-wall{background:linear-gradient(160deg,#122f2b,#48674c);border-radius:24px;padding:35px;color:#fff9df;min-height:420px}.ambient-wall blockquote{font-family:Book,serif;font-size:23px;border-bottom:1px solid #c7b77c55;padding:16px 0;margin:0 0 20px}.gallery-img{width:100%;height:260px;object-fit:contain;border-radius:14px;background:#ebe5d8}.article{max-width:780px;line-height:1.95}.article p{margin-bottom:22px}.article h2{margin-top:28px}.audio-art{display:grid;place-items:center;background:var(--green-soft);border-radius:20px;height:110px;color:var(--gold);font-size:48px;margin-bottom:20px}.heatmap{display:grid;grid-template-columns:repeat(14,1fr);gap:5px;margin:20px 0}.heatmap div{aspect-ratio:1;border-radius:4px;background:var(--green-soft)}.heatmap div.done{background:#75946b}.heatmap div.goal{background:#244b40}.mini-player{position:fixed;bottom:20px;left:calc(var(--nav) + 26px);right:26px;z-index:35;border:1px solid var(--line);background:var(--surface);box-shadow:0 6px 30px #0002;padding:10px 15px;border-radius:16px;display:flex;gap:10px;align-items:center}.player-name{background:transparent;border:0;display:block;text-align:left;min-width:0;flex:1;padding:0;overflow:hidden}.player-name span{display:block;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;font-size:13px}.player-name small{display:block;color:var(--muted);font-size:10px}.has-audio .foot{padding-bottom:100px}.toast{position:fixed;left:50%;transform:translateX(-50%);bottom:105px;background:#243d35;color:#fffdf5;z-index:100;padding:14px 22px;border-radius:14px;box-shadow:0 8px 40px #0003;max-width:calc(100vw - 24px);width:max-content;font-size:14px}.loading{padding:45px;text-align:center;color:var(--muted)}dialog{background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:22px;max-width:min(680px,calc(100vw - 24px));width:680px;max-height:calc(100dvh - 36px);padding:0;box-shadow:0 20px 80px #0003}dialog::backdrop{background:#142d2877;backdrop-filter:blur(3px)}dialog>header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 24px;border-bottom:1px solid var(--line);position:sticky;top:0;background:var(--surface);z-index:2}dialog>header h2{font-size:22px;margin:0}.dialog-body{padding:24px}.settings-row{display:flex;gap:16px;justify-content:space-between;align-items:center;padding:16px 0;border-bottom:1px solid var(--line)}.settings-row p{margin:0;font-size:12px}.settings-row strong{font-size:14px}.settings-row select{width:160px}.settings-row input[type=range]{width:160px}.chart-bar{display:flex;align-items:center;gap:10px;margin:12px 0;font-size:12px}.chart-bar>span{width:100px}.chart-bar>div{height:12px;background:var(--green-soft);border-radius:10px;flex:1;overflow:hidden}.chart-bar i{height:12px;display:block;background:var(--gold)}.conflict{border-color:var(--red)}.conflict pre{white-space:pre-wrap;font-size:11px;max-height:150px;overflow:auto}.inline-link{border:0;padding:0;min-height:24px;background:transparent;text-decoration:underline;font-size:inherit}.back{font-size:12px;display:inline-block;margin-bottom:15px}.onboarding{text-align:center;padding:12px 0}.onboarding svg{width:70px;height:70px;color:var(--gold);margin:16px}.caption{font-size:12px;color:var(--muted);text-align:center}.floating-tools{position:fixed;right:15px;bottom:30px;display:flex;gap:8px;z-index:20}.has-audio .floating-tools{bottom:100px}
.reduced-motion *{animation:none!important;transition:none!important;scroll-behavior:auto!important}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media(min-width:1600px){main{padding-top:38px}.hero{min-height:330px}.hero-art{right:5%}}
@media(max-width:1150px){:root{--nav:200px}.sidebar{padding:24px 12px}.brand{font-size:18px}.brand img{width:36px}.topbar{padding:15px 24px}main{padding:26px 24px 50px}.connection{padding:0 24px}.grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}.hero{padding:30px}.hero h1{font-size:32px}.hero-art{width:270px;right:-20px}.split,.calendar-layout{grid-template-columns:minmax(0,1fr)}.calendar-grid{gap:6px}.calendar-day{min-height:70px}}
@media(max-width:800px){:root{--nav:0px}.sidebar{width:100%;height:65px;top:auto;bottom:0;right:0;padding:0 5px;padding-bottom:env(safe-area-inset-bottom);height:calc(65px + env(safe-area-inset-bottom));border-right:0;border-top:1px solid var(--line);background:var(--surface);z-index:45}.brand,.sidebar-foot{display:none}.sidebar nav{display:flex;gap:0;justify-content:space-around}.nav-item{flex:1;flex-direction:column;gap:3px;min-width:0;font-size:9px;line-height:1.3;padding:8px 0;border-radius:0;min-height:60px}.nav-item svg{width:22px;height:22px}.nav-home{display:none}.shell{margin:0}.topbar{display:grid;grid-template-columns:1fr auto;gap:12px;padding:15px 20px}.topbar .mobile-brand{display:block;font-family:Book,serif;font-size:20px}.topbar form{grid-column:1/-1;grid-row:2;max-width:none}.topbar>a{font-size:12px}.topbar input{min-height:44px!important}.topbar form button{min-height:42px}.connection{padding:3px 20px;font-size:11px}.hero{padding:27px 25px;min-height:270px}.hero-content{max-width:76%}.hero h1{font-size:31px}.hero-art{width:230px;height:230px;right:-80px;bottom:-30px;opacity:.5}main{padding:22px 20px 60px;min-height:80vh}.page-head{align-items:flex-start;gap:12px;margin-bottom:20px}h1{font-size:28px}h2{font-size:23px}.page-head p{font-size:13px}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.grid.two{gap:13px}.card{padding:20px;border-radius:17px}.foot{padding:18px 20px 95px;font-size:10px}.mini-player{left:10px;right:10px;bottom:calc(74px + env(safe-area-inset-bottom));gap:5px;padding:9px}.mini-player .icon{min-width:37px;min-height:37px;font-size:12px}.mini-player .player-name{padding-left:5px}.has-audio .foot{padding-bottom:170px}.toast{bottom:155px;font-size:13px}.reader-tools{gap:5px;padding:7px 0}.reader-tools button{padding:7px 9px;min-height:38px;font-size:11px}.reader-body{padding:23px 20px}.read-progress{left:0}.floating-tools{bottom:80px}.has-audio .floating-tools{bottom:155px}.practice-stage{min-height:400px}.year-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:480px){.grid,.grid.two{grid-template-columns:minmax(0,1fr)}.grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.four .card{padding:17px}.grid.four h3{font-size:18px}.grid.four .card p{font-size:12px}.hero{min-height:265px}.hero-content{max-width:90%}.hero h1{font-size:29px}.hero p{font-size:13px}.hero-art{opacity:.25;right:-95px}.card{padding:19px}.list-row{padding:14px 13px;gap:9px}.list-row .actions{gap:5px}.list-row .actions button{padding:7px 9px;font-size:11px}.form-grid{grid-template-columns:minmax(0,1fr);gap:12px}.plan-step{grid-template-columns:1fr 1fr 44px}.plan-step>input{grid-column:1/3}.calendar-grid{gap:1px}.calendar-day{min-height:58px}.calendar-day strong{font-size:15px}.calendar-toolbar h2{font-size:19px}.calendar-toolbar button{padding:5px;min-width:39px}.stats{gap:18px}.stat strong{font-size:24px}.dialog-body{padding:19px}dialog>header{padding:15px 19px}dialog>header h2{font-size:20px}.reader-body{padding:22px 15px}.reader-page h1{font-size:25px}.heatmap{grid-template-columns:repeat(14,1fr);gap:3px}.settings-row{gap:10px}.settings-row select,.settings-row input[type=range]{width:130px}.verse-card{padding:20px}.verse-card blockquote{font-size:19px}.page-head>.actions{margin-top:0}.year-grid{gap:8px}.year-grid button{font-size:12px;padding:8px}.topbar{padding:13px 16px}main{padding-left:16px;padding-right:16px}.foot{padding-left:16px;padding-right:16px}.caption{font-size:11px}}
@media print{.sidebar,.topbar,.reader-tools,.mini-player,.foot,.toast,.floating-tools,.actions{display:none!important}.shell{margin:0}main{padding:0}.reader-body{background:white;color:black;font-size:18px;box-shadow:none}.verse{break-inside:avoid}body{background:white;color:black}}

/* Shared gold/ivory refinement + phase 3 reading. Old PDF library is separate. */
@font-face{font-family:VNS;src:url('/tu-tap/fonts/roboto-v76.woff') format('woff');font-style:normal;font-weight:100 900;font-display:swap}
:root{font-family:VNS,Library,Arial,sans-serif;--bg:#fffdf8;--surface:#fffefa;--ink:#422013;--muted:#66574d;--gold:#a76b12;--line:#efdfc5}
body{font-family:VNS,Library,Arial,sans-serif}h2,h3,.page-head h1,.reading-focus-head strong,.meditation-head h1,.timer-face .timer-number{font-family:VNS,Library,Arial,sans-serif;font-weight:650}
button,.button{font-weight:500}.primary{font-weight:600}.nav-item{font-weight:400}.nav-item.active{font-weight:600}
.sidebar{scrollbar-width:thin;padding-top:18px;padding-bottom:12px;background:linear-gradient(#fffdf8,#fff8e8)}
.brand{font-size:29px;padding-bottom:16px;gap:3px}.brand img{height:70px}.brand small{margin-top:14px;padding-top:12px;font-size:17px;letter-spacing:3px}
.sidebar nav{gap:5px}.nav-item{min-height:52px;padding:9px 19px;font-size:20px;gap:20px;flex-shrink:0}.nav-item svg,.nav-item .lotus-icon{width:29px;height:29px}
.nav-secondary{margin-top:23px;padding-top:19px}.nav-secondary .nav-item,.nav-secondary .nav-item:first-child{font-size:19px;min-height:49px}
.sidebar-landscape{background-image:url('/tu-tap/design/sidebar-landscape-v76.webp');background-position:center bottom;background-size:100% auto;flex:1 0 180px;min-height:180px;margin:4px -16px 0}
.sidebar-foot{font-size:12px;line-height:1.5;gap:7px 10px;padding-top:13px}.sidebar-foot a:first-child{grid-column:1/-1;text-align:center}
.topbar form input{background:#fffefa!important;border:1px solid #e3dfd5!important;font-size:19px}.topbar form button{color:#8b5014}.topbar #account-link{font-size:17px;font-weight:500}
.gold-hero{background-size:65% auto;background-position:right 56%;isolation:isolate;overflow:hidden;padding:18px 36px}
.gold-hero:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#fffdf8 0%,#fffdf8f5 25%,#fffdf8b8 43%,transparent 73%);z-index:-1}
.gold-hero h1{font-size:clamp(34px,3.65vw,56px);letter-spacing:-1.4px;font-weight:700}.gold-hero p{font-family:VNS,Library,Arial,sans-serif;font-size:clamp(18px,1.85vw,28px);letter-spacing:0}
.section-head h2{font-size:27px;font-weight:650;line-height:1.25}.section-head a{font-size:15px;color:#784715}
.resume-grid{gap:14px}.resume-card{grid-template-columns:40% minmax(0,1fr);gap:21px;padding:13px}.resume-card h3{font-size:27px;font-weight:650;margin:5px 0 7px}.resume-card p{font-size:17px;font-weight:400;line-height:1.35;color:#625b59}.resume-card .tag{font-weight:550;border-radius:8px;font-size:13px}.resume-card .button,.resume-card button{font-size:20px;font-weight:600;min-height:53px}.resume-cover{max-height:180px;aspect-ratio:1.18}.resume-cover img{object-position:center}
.library-banner h2{font-size:27px;font-weight:650}.library-banner p{font-size:19px}.library-banner>.button{font-size:19px}.library-symbol svg{width:75px;height:62px;stroke-width:1.3}
.home-practice-row{grid-template-columns:minmax(0,1.8fr) minmax(290px,1fr)}.home-practice-row .section-head h2{font-size:26px}.quick-tool{font-size:18px;gap:12px;min-height:88px;color:#34251b;white-space:nowrap}.quick-tool>svg,.quick-tool>.lotus-icon{width:47px;height:47px}.quick-tool .chevron{margin-left:auto;color:#8c8582;font-size:22px}.quick-tool span:not(.chevron){white-space:normal}.home-practice-row .text-link{display:inline-block;font-size:13px;margin-top:8px;color:#815419;text-decoration:none}
.home-calendar h2{font-size:23px!important}.calendar-today{font-size:14px;color:#6c6257}.home-calendar .muted{font-size:17px;line-height:1.55}.home-calendar>.button{font-size:18px}.home-event{font-size:19px}
.discussion-entry strong{font-size:23px;font-weight:650}.discussion-entry small{font-size:18px}.discussion-entry .button{font-size:17px}.home-rooms .section-head h2{font-size:25px}
.reader-body.sans{font-family:VNS,Library,Arial,sans-serif}.reader-page,.reading-bottom{color:var(--reader-page-ink,var(--ink));background:var(--reader-page-bg,var(--surface))}
body[data-route="read"] main{max-width:860px;background:var(--reader-page-bg,var(--bg));color:var(--reader-page-ink,var(--ink));padding:0 0 112px}
.reading-focus-head{gap:10px;background:var(--reader-page-bg,#fff8e5);color:var(--reader-page-ink,var(--ink));min-height:66px;padding:8px 22px;border-color:#b8872930}
.reading-focus-head strong{font-size:22px;font-weight:600;flex:1}.reader-head-actions{display:flex;gap:1px}.reader-head-actions .icon{min-width:38px;min-height:44px;padding:6px}
.reading-meta{padding:25px 30px 4px}.reading-meta h1{font:600 26px/1.35 VNS,Library,Arial,sans-serif;margin:0 0 8px;color:inherit}.reading-place{font-size:12px;line-height:1.5;opacity:.7;margin:0}
.reader-more{margin:0 30px;color:inherit}.reader-v76 .reader-more>summary{display:none}.reader-v76 .reader-more:not([open]){display:none}.reader-tools{border-color:#b8872930;padding:12px 0 14px;margin:6px 0 12px;gap:8px}.reader-tools button{font-size:14px;min-height:44px;background:transparent;color:inherit;white-space:normal}.reader-language-choice{display:flex;align-items:center;gap:12px;margin-bottom:16px}.reader-language-choice select{width:auto;flex:1}
.reader-body{margin-top:0;padding:23px 30px 10px;background:var(--read-bg);color:var(--read-ink);border:0;line-height:var(--read-line,1.9)}
.verse{padding-left:36px;margin:0 0 42px;scroll-margin-top:95px}.verse.saved{padding-left:36px;border-left:0}.verse.saved:before{content:'';position:absolute;width:3px;inset:0 auto 0 -9px;background:#bd8a23;border-radius:2px}
.verse header{display:contents;font:inherit;line-height:inherit}.verse header>span{position:absolute;top:0;left:0;font:inherit;line-height:inherit;color:inherit}.verse header button,.verse header button:after{float:none;position:absolute;right:-20px;top:0;border:0;min-width:24px;min-height:38px;width:24px;padding:3px;margin:0;opacity:.45;content:none}.verse header button svg{width:17px;height:20px}.verse header button:hover,.verse header button:focus-visible,.verse header button[aria-pressed="true"]{opacity:1;color:#ad7518}.verse header button[aria-pressed="true"] svg{fill:#d8a94144}
.verse-lines p{margin:0;line-height:inherit}.verse-lines{padding-right:8px}.reading-language-line.translation{font-size:.82em;opacity:.78;border-left:2px solid #d1b27380;margin:8px 0 24px;padding-left:14px}.reader-body[data-language="root"] .translation,.reader-body[data-language="en"] .root-text{display:none}
.reading-bottom{max-width:860px;width:100%;padding-top:7px;border-color:#b8872930}.reading-bottom button{color:inherit;font-family:VNS,Library,Arial,sans-serif;font-size:15px;min-height:70px;border-color:#b8872930;gap:4px}.reading-bottom strong{font:500 30px/1.15 VNS,Library,Arial,sans-serif}.reading-bottom svg{width:28px;height:28px}
.reading-chapter-nav{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;padding:15px 30px;border-top:1px solid #b8872930;font-size:14px}.reading-chapter-nav>span:last-child{text-align:right}.reading-chapter-nav .button{background:transparent;color:inherit;font-size:15px}.reading-chapter-nav .primary{background:#f3c252;color:#38200e}
.reader-attribution{font-size:13px;line-height:1.8;margin:18px 30px 0;color:inherit;opacity:.8}.reader-attribution a{color:inherit}.reader-end-actions{padding:0 30px;margin:15px 0 20px}
.reader-toc-list .button{justify-content:space-between;font-size:16px}.reader-toc-list small{font-size:12px;font-weight:400}.reader-jump{display:flex;flex-wrap:wrap;align-items:end;gap:12px;margin-bottom:20px}.reader-jump label{flex:1}.reader-jump .error{flex-basis:100%;margin:0;padding:0}
.reader-find-results,.reader-note-list{display:grid;gap:10px;margin-top:18px}.reader-find-results button,.reader-note-list button{display:block;text-align:left;white-space:normal;max-width:100%;overflow-wrap:anywhere;padding:14px}.reader-find-results strong,.reader-note-list strong{display:block;font-size:15px;margin-bottom:6px}.reader-find-results span,.reader-note-list span{display:block;font-size:15px;font-weight:400;line-height:1.7;white-space:pre-wrap}.note-excerpt{font-size:15px;line-height:1.7;background:var(--green-soft);padding:13px;border-radius:10px}.reading-options-preview{border:1px solid var(--line);padding:15px;border-radius:12px;overflow-wrap:anywhere;margin:14px 0}
.reading-library-head{margin-bottom:18px}.reading-library-head h1{font-size:34px}.reading-library-head .muted{font-size:17px}
.reading-filter{display:grid;grid-template-columns:minmax(0,1fr) 230px;gap:18px;margin:12px 0 18px}.reading-filter label span{display:block;font-size:14px;margin-bottom:7px}.reading-filter input{font-size:17px}.reading-filter select{font-size:16px}.reading-library-meta{display:flex;align-items:center;justify-content:space-between;gap:14px;font-size:14px;margin-bottom:16px}.reading-library-meta p{margin:0;color:var(--muted)}
.reading-collections{display:grid;gap:19px}.reading-collection{border:1px solid var(--line);background:var(--surface);border-radius:16px;overflow:hidden}.collection-heading{display:flex;gap:25px;padding:22px}.collection-heading .grow{min-width:0;flex:1}.collection-heading h2{font-size:26px;margin:3px 0 8px;line-height:1.35}.collection-heading p{font-size:16px;margin:0 0 7px;color:var(--muted)}.collection-heading small{font-size:14px;color:var(--muted)}.collection-art{width:120px;align-self:stretch;display:grid;place-items:center;background:#fff4d9;border-radius:10px;overflow:hidden;flex-shrink:0}.collection-art img{width:100%;height:100%;object-fit:cover}.collection-art svg{width:65px;height:65px;color:var(--gold)}.collection-heading .actions{margin-top:15px}.collection-heading .tag{font-size:12px;margin-bottom:3px;border-radius:8px}
.collection-chapters{border-top:1px solid var(--line)}.collection-chapters>summary{cursor:pointer;padding:14px 22px;font-weight:550;min-height:48px;font-size:16px}.collection-chapters>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding:0 10px 12px;gap:1px 10px}.collection-chapter{display:flex;align-items:center;gap:12px;padding:13px;border-top:1px solid var(--line);text-decoration:none;color:var(--ink);font-size:16px;min-width:0}.collection-chapter>span:first-child{flex:1;min-width:0}.collection-chapter strong{font-weight:500}.collection-chapter small{font-size:12px;color:var(--muted);font-weight:400}.collection-chapter>span>small{display:block;line-height:1.6;margin-top:6px}.collection-chapter>small{flex-shrink:0}.collection-chapter:hover{background:var(--green-soft);border-radius:7px}
.reading-source-note{margin-top:28px;border-top:1px solid var(--line);padding:22px 0;font-size:14px;line-height:1.8;color:var(--muted)}.reading-source-note p{margin:6px 0 8px}.reading-source-note a{display:inline-block;margin-right:20px}
.reading-pdf-list{display:grid;gap:12px}.reading-pdf{display:flex;align-items:center;gap:16px;border:1px solid var(--line);border-radius:13px;padding:17px;background:var(--surface);min-width:0}.reading-pdf>div:nth-child(2){flex:1;min-width:0}.reading-pdf h2{font-size:18px;line-height:1.45;margin:1px 0 6px}.reading-pdf h2 a{text-decoration:none;color:var(--ink)}.reading-pdf .tag{font-size:11px;margin-bottom:2px}.source-filename{font-size:13px;line-height:1.5;overflow-wrap:anywhere;color:var(--muted);margin:0 0 4px}.reading-pdf small{font-size:12px;color:var(--muted)}.reading-pdf-symbol{color:var(--gold);flex-shrink:0}.reading-pdf-symbol svg{width:33px;height:33px}.reading-pdf>.button{flex-shrink:0;font-size:14px}#reading-more{margin-top:18px}
body.dark .reading-collection,body.dark .reading-pdf{background:var(--surface)}body.dark .collection-art{background:var(--green-soft)}body.dark .sidebar{background:var(--surface)}body.dark .sidebar-landscape{opacity:.35}body.dark .topbar form input{background:var(--surface)!important;border-color:var(--line)!important}body.dark .resume-card p{color:var(--muted)}body.dark .gold-hero:before{background:linear-gradient(90deg,#dbc8a5,#dbc8a577 40%,transparent 73%)}
@media(min-width:801px) and (max-height:850px){.brand{font-size:26px;padding-bottom:13px}.brand img{height:57px}.brand small{margin-top:10px;padding-top:10px;font-size:15px}.nav-item{min-height:47px;font-size:18px}.nav-secondary{margin-top:16px;padding-top:13px}.nav-secondary .nav-item,.nav-secondary .nav-item:first-child{min-height:43px;font-size:17px}.sidebar-landscape{min-height:130px;flex-basis:130px}.sidebar-foot{font-size:11px}}
@media(max-width:1250px) and (min-width:801px){.brand{font-size:24px}.nav-item{font-size:18px;padding:9px 12px;gap:16px}.nav-secondary .nav-item,.nav-secondary .nav-item:first-child{font-size:17px}.gold-hero h1{font-size:35px}.gold-hero p{font-size:20px}.resume-card{grid-template-columns:36% minmax(0,1fr);gap:14px}.resume-card h3{font-size:23px}.resume-card p{font-size:15px}.resume-card button,.resume-card .button{font-size:17px;min-height:47px}.home-practice-row{grid-template-columns:minmax(0,1.7fr) minmax(250px,1fr)}.home-practice-row .section-head h2{font-size:24px}.quick-tool{flex-direction:column;gap:5px;white-space:normal;font-size:16px}.quick-tool .chevron{display:none}.home-calendar h2{font-size:21px!important}.library-banner h2{font-size:25px}.library-banner p{font-size:17px}.collection-chapters>div{grid-template-columns:1fr}}
@media(max-width:800px){
 .sidebar{padding:0 5px env(safe-area-inset-bottom);background:var(--surface)}.sidebar .nav-item{min-height:64px;font-size:11px;gap:3px;padding:7px 1px}.nav-item svg,.nav-item .lotus-icon{width:27px;height:27px}.topbar .mobile-brand{font-family:VNS,Library,Arial,sans-serif!important;font-size:22px!important;font-weight:600}.topbar #account-link{font-size:14px}.topbar form input{font-size:16px}.topbar{padding:9px 16px;min-height:111px}
 .gold-hero{min-height:126px;padding:17px 20px;background-size:auto 145%;background-position:right 62%}.gold-hero:before{z-index:-1;background:linear-gradient(90deg,#fff9e9 0%,#fff9e9e6 27%,#fff9e988 53%,transparent 85%)}.gold-hero>div{max-width:78%}.gold-hero h1{font-size:29px;line-height:1.12;letter-spacing:-.6px}.gold-hero p{font-size:16px;line-height:1.35}
 .section-head{margin:11px 0 7px}.section-head h2{font-size:21px;font-weight:650}.section-head a{font-size:12px}.resume-card{grid-template-columns:32% minmax(0,1fr);padding:8px;gap:14px;min-height:133px}.resume-card .resume-cover{min-height:116px;max-height:133px}.resume-card h3{font-size:21px;font-weight:650;margin:1px 0 5px}.resume-card p{font-size:15px;margin-bottom:7px}.resume-card .tag{font-size:11px;font-weight:600}.resume-card button,.resume-card .button{font-size:18px;min-height:44px;padding:7px 10px}
 .library-banner{min-height:65px;gap:15px;padding:10px 14px}.library-banner h2{font-size:20px}.library-banner p{font-size:14px}.library-symbol svg{width:46px;height:43px}.home-practice-row{grid-template-columns:minmax(0,1fr);margin-top:12px;gap:9px}.home-practice-row .section-head h2{font-size:21px}.quick-tool{min-height:85px;padding:7px 4px;gap:4px;font-size:15px;line-height:1.2}.quick-tool>svg,.quick-tool>.lotus-icon{width:41px;height:41px}.home-practice-row .text-link{font-size:12px;margin-top:6px}.home-calendar h2{font-size:20px!important}.home-calendar .muted{font-size:14px;line-height:1.4}.home-event{font-size:15px}.calendar-today{font-size:13px}.home-calendar{padding:11px 14px!important}.discussion-entry strong{font-size:19px}.discussion-entry small{font-size:14px}.discussion-entry .button{font-size:0}.home-rooms .section-head h2{font-size:23px}
 .reading-focus-head{min-height:61px;padding:7px 13px;gap:4px}.reading-focus-head strong{font-size:20px;line-height:1.25}.reader-head-actions .icon{min-width:33px;width:33px}.reader-head-actions svg{width:22px}.reading-meta{padding:24px 23px 0}.reading-meta h1{font-size:23px}.reading-place{font-size:11px;line-height:1.5}.reader-body{padding:22px 23px 10px}.verse{padding-left:29px;margin-bottom:38px}.verse.saved{padding-left:29px}.verse header button{right:-14px;width:24px}.verse-lines{padding-right:5px}.reader-more{margin:8px 23px}.reading-bottom button{min-height:68px;font-size:14px}.reading-chapter-nav{padding:15px 19px;gap:7px}.reading-chapter-nav .button{padding:8px 10px;font-size:14px}.reader-attribution{margin:15px 23px 0;font-size:12px}.reader-end-actions{padding:0 23px}.reader-jump input{font-size:18px}.reader-toc-list .button{font-size:15px;text-align:left;gap:10px}.reader-toc-list small{font-size:11px;flex-shrink:0}
 .reading-library-head h1{font-size:29px}.reading-library-head{align-items:flex-start;gap:10px}.reading-library-head>.button{font-size:12px;padding:9px;max-width:125px}.reading-library-head .muted{font-size:15px}.reading-filter{grid-template-columns:1fr;gap:12px}.reading-filter>label:nth-child(2){display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px}.reading-filter label span{font-size:13px}.reading-filter input{font-size:16px}.reading-library-meta{font-size:13px;gap:10px;align-items:flex-start}.reading-library-meta a{flex-shrink:0}.collection-heading{gap:15px;padding:16px}.collection-art{width:85px;max-height:145px}.collection-heading h2{font-size:22px}.collection-heading p{font-size:14px;line-height:1.5}.collection-heading small{font-size:12px}.collection-heading .actions{gap:7px}.collection-heading .button,.collection-heading button{font-size:14px;padding:8px 11px}.collection-chapters>div{grid-template-columns:1fr}.collection-chapters>summary{padding:12px 16px;font-size:15px}.collection-chapter{font-size:15px;padding:12px 8px}.collection-chapter small{font-size:11px}.reading-pdf{padding:14px;gap:12px;flex-wrap:wrap}.reading-pdf h2{font-size:17px}.reading-pdf>.button{margin-left:45px;min-height:44px;font-size:14px}.reading-pdf>div:nth-child(2){flex-basis:calc(100% - 50px)}.reading-pdf-symbol{align-self:flex-start}.reading-pdf-symbol svg{width:30px}.source-filename{font-size:12px}.reading-source-note{font-size:13px}
}
@media(max-width:360px){.topbar .mobile-brand{font-size:20px!important}.gold-hero h1{font-size:25px}.gold-hero p{font-size:14px}.quick-tool{font-size:13px;min-height:80px}.quick-tool>svg,.quick-tool>.lotus-icon{width:36px;height:36px}.resume-card h3{font-size:19px}.resume-card p{font-size:13px}.library-banner h2{font-size:18px}.reading-meta{padding-left:17px;padding-right:17px}.reader-body{padding-left:17px;padding-right:17px}.reading-focus-head strong{font-size:18px}.collection-heading{padding:13px;gap:12px}.collection-art{width:68px}.collection-heading h2{font-size:20px}.reading-library-meta{flex-wrap:wrap}}
@media print{.reading-bottom,.reader-more,.reading-focus-head,.reading-chapter-nav,.reader-end-actions,.reading-place,.verse button{display:none!important}.reader-body{color:#000!important;background:#fff!important}.reader-page{color:#000!important;background:#fff!important}.verse{break-inside:avoid}.reader-attribution a{color:#000!important}.reader-attribution{font-size:11px}}

/* Keep controls visible in every reader background and avoid legacy pseudo-icons. */
.reading-focus-head .icon{color:inherit}.verse header button:after,.verse header button[aria-pressed="true"]:after{content:none!important}

/* V76.1: keep legacy details accessible and give verse markers a full touch target. */
.reader-page:not(.reader-v76) .reader-more>summary{display:list-item;min-height:44px;cursor:pointer}
.reader-page:not(.reader-v76) .verse header button{position:static;width:auto;min-width:44px;min-height:44px;white-space:nowrap}
.reader-v76 .verse-lines{padding-right:28px}
.reader-v76 .verse header button{right:-10px;width:44px;min-width:44px;height:44px;min-height:44px;padding:11px;display:flex;align-items:center;justify-content:center}
.reader-v76 .reader-head-actions .icon,.reader-v76 .reading-focus-head>a.icon{width:44px;min-width:44px;min-height:44px}
.reader-v76 .reading-focus-head>strong{min-width:0;overflow-wrap:anywhere}
.reader-v76 .reader-head-actions{flex-shrink:0}
@media(max-width:800px){.reader-v76 .verse header button{right:-12px}.reader-v76 .verse-lines{padding-right:26px}.reader-v76 .reading-focus-head{padding-left:7px;padding-right:7px}}

/* Đợt 3.5 — phone composition referenced to IMG_3994 / IMG_3995.
   Presentation only. No API, record identifiers or stored content changes. */
:root{--bg:#f7f6f9;--surface:#fff;--ink:#202022;--muted:#646267;--line:#ebe9ed;--green:#85601e;--green-soft:#fff0d3;--gold:#9b711e;--red:#a23b39;--shadow:0 5px 24px #32260a04;--nav:0px;--tab-height:64px;--top-height:64px;color-scheme:light}
body{font-family:VNS,Library,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:16px;line-height:1.55;background:var(--bg);color:var(--ink)}
h1,h2,h3{font-family:inherit;letter-spacing:0;font-weight:650;color:inherit}h1{font-size:28px;line-height:1.25}h2{font-size:23px;line-height:1.3}h3{font-size:18px;line-height:1.35}a{color:var(--green)}button,.button{border-radius:14px;font-size:15px;font-weight:500;min-height:44px;box-shadow:none}.primary,button.primary,.button.primary{background:linear-gradient(125deg,#b98a40,#876024);border-color:transparent;color:#fff}.button.primary:hover,button.primary:hover{filter:brightness(1.05)}.icon{background:transparent;border:0;min-width:44px;min-height:44px}.lotus-icon{object-fit:contain}.eyebrow{color:var(--gold);letter-spacing:1.1px}.page-head{margin:8px 0 22px;gap:14px}.page-head h1{font-size:28px}.page-head p{font-size:15px}.page-head>.eyebrow,.page-head>div>.eyebrow{display:none}.card{border:0;border-radius:23px;padding:22px;box-shadow:none}.notice{border:0;background:var(--green-soft);line-height:1.65}.card p{font-size:15px}.fine{font-size:13px;line-height:1.6}.error{color:var(--red)}.section-head{margin:26px 0 16px}.section-head h2{font-size:23px}.section-head a{font-size:14px;color:var(--muted);text-decoration:none}.list{gap:10px}.list-row{border:0;border-radius:19px;background:var(--surface);padding:16px}.list-row h3{font-size:17px}.list-row p{font-size:13px}.tabs{gap:6px;margin:0 0 20px;padding-bottom:10px;scrollbar-width:thin}.tabs .button,.tabs button{border:0;background:var(--surface);font-size:14px;border-radius:22px;color:var(--muted);min-height:44px}.tabs .active{background:var(--green-soft);color:var(--green)}.group-link{display:flex;align-items:center;gap:14px;width:100%;padding:17px 18px;text-align:left;border:0;border-radius:18px;text-decoration:none;background:var(--surface);color:var(--ink);font-size:16px;line-height:1.35;min-height:66px}.group-link>span:nth-child(2){flex:1;min-width:0}.group-link strong,.group-link small{display:block}.group-link strong{font-size:16px;font-weight:550}.group-link small{font-size:14px;color:var(--muted);margin-top:4px}.group-link>svg,.group-link>.lotus-icon{width:25px;height:25px;color:var(--muted);flex-shrink:0}.group-link>span:last-child:not(:nth-child(2)){color:var(--muted)}.group-link>img:not(.lotus-icon){width:48px;height:48px;object-fit:cover;border-radius:12px}.card-symbol{background:var(--green-soft);color:var(--gold)}.tag{font-size:11px;background:var(--green-soft);color:var(--green);border:0}
/* The same five destinations on desktop and mobile. */
.sidebar{position:sticky;top:0;inset:0 0 auto;width:100%;height:72px;padding:0 24px;background:var(--surface);border:0;border-bottom:1px solid var(--line);display:flex;flex-direction:row;align-items:center;gap:28px;z-index:40}.sidebar .brand{display:flex;flex-direction:row;align-items:center;font-family:inherit;font-size:20px;font-weight:650;gap:10px;white-space:nowrap;padding:0;margin:0}.sidebar .brand img{width:42px;height:42px}.sidebar #nav{display:flex;flex:1;gap:6px;align-items:center;justify-content:center}.sidebar .nav-item{display:flex;flex-direction:row;justify-content:center;min-width:0;padding:10px 13px;gap:8px;font-size:15px;min-height:46px;color:var(--muted);border-radius:14px}.sidebar .nav-item svg{width:23px;height:23px}.sidebar .nav-item.active{background:var(--green-soft);color:var(--green)}.desktop-library{font-size:14px;white-space:nowrap;text-decoration:none}.shell{margin:0}.topbar{max-width:1120px;min-height:72px;margin:auto;padding:8px 24px;display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:center;background:var(--bg);border:0;position:relative}.topbar .mobile-brand{display:flex!important;align-items:center;padding:0;width:40px;min-width:40px}.mobile-brand img{width:38px;height:38px;background:#b2802c;border-radius:50%;padding:4px}.topbar #shell-heading{flex:1;text-align:center;font-size:20px;line-height:1.4;min-width:0;overflow-wrap:anywhere}.topbar #account-link{font-size:14px;color:var(--green);white-space:nowrap}.topbar #search-open{padding:9px;color:var(--ink)}.topbar #global-search{position:relative;flex:1 0 100%;order:5;margin:4px 0;max-width:100%;display:flex;gap:6px}.topbar #global-search input{width:100%;min-height:46px;padding:10px 70px 10px 16px!important;font-size:16px;background:var(--surface)!important;border:1px solid var(--line)!important}.topbar #global-search button{position:absolute;right:5px;left:auto;top:1px;bottom:1px;padding:5px 14px;color:var(--green);font-size:15px;min-height:40px}.connection{padding:5px 20px;text-align:center;font-size:12px;line-height:1.5}.connection:empty{display:none}main{max-width:1120px;padding:8px 24px 30px;margin:auto;min-height:72vh}.foot{max-width:1072px;margin:24px auto 0;padding:22px 0 32px;border-top:1px solid var(--line);font-size:12px;text-align:center}.foot nav{display:flex;flex-wrap:wrap;justify-content:center;gap:12px 22px}.foot p{margin-bottom:12px}.foot a{white-space:nowrap}.mini-player{left:50%;right:auto;transform:translateX(-50%);width:min(840px,calc(100% - 24px));bottom:18px;border:1px solid var(--line);background:var(--surface);border-radius:18px;box-shadow:0 6px 30px #0002}.has-audio .foot{padding-bottom:110px}.toast{background:#403727;bottom:100px}
/* Home composition: week, lunar-photo, verse, audio, radial practices and rooms. */
.week-strip{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;padding:0 4px 16px;max-width:620px;margin:auto}.week-day{text-decoration:none;text-align:center;min-width:0;color:var(--ink);font-size:15px}.week-day>span{display:block;color:var(--muted);font-size:14px;padding:3px 0 6px}.week-day>div{position:relative;padding:9px 0 7px;max-width:50px;margin:auto;border-radius:9px}.week-day strong{display:block;font-size:17px;font-weight:500}.week-day small{display:block;font-size:12px;color:var(--muted);margin-top:3px}.week-day.selected>div{background:linear-gradient(110deg,#a17427,#674519);color:white}.week-day.selected small{color:white}.week-day.sunday strong{color:#b44139}.week-day.sunday.selected strong{color:#fff}.week-day i{position:absolute;top:9px;right:4px;width:5px;height:5px;background:#39b774;border-radius:50%}.home-columns{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:26px;align-items:start}.home-lead,.home-secondary{min-width:0}.calendar-photo{display:block;position:relative;isolation:isolate;overflow:hidden;border-radius:25px;aspect-ratio:1.25;color:white;text-decoration:none}.calendar-photo>img{position:absolute;width:100%;height:100%;object-fit:cover;z-index:-2}.calendar-photo:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#0b140f8c,transparent 80%);z-index:-1}.calendar-photo>div{padding:40px 26px 28px;display:flex;flex-direction:column;justify-content:center;height:100%;max-width:78%}.calendar-photo p{font-size:14px;line-height:1.3;margin:0 0 12px;color:#f3f2e8}.calendar-photo .lunar-label{color:#ffe681;font-size:17px}.calendar-photo strong{font-size:clamp(62px,8vw,90px);font-weight:600;letter-spacing:-3px;line-height:1.15;margin:7px 0 4px}.calendar-photo h1{font-size:23px;font-weight:600;margin:0 0 15px;letter-spacing:0;line-height:1.2}.calendar-photo .lunar-year{color:#f7dfa6;font-weight:500;margin:0;font-size:15px}.daily-verse{position:relative;text-align:center;padding:26px 22px;margin:20px 0;background:linear-gradient(#fffaf3ed,#fffaf3ed),url('/tu-tap/design/lotus-gold.svg') center/contain no-repeat;isolation:isolate;border-radius:14px}.daily-verse:before,.daily-verse:after{content:'';position:absolute;width:76px;height:65px;bottom:0;background:url('/tu-tap/design/lotus-gold.svg') center/contain no-repeat;opacity:.3;z-index:-1}.daily-verse:before{left:0;transform:rotate(-28deg)}.daily-verse:after{right:0;transform:rotate(28deg)}.daily-verse blockquote{white-space:pre-line;margin:0 0 16px;font-size:17px;line-height:1.35;font-style:italic;font-weight:400}.daily-verse p{font-size:15px;font-style:italic;margin:0 0 4px}.daily-verse small{display:block;font-size:11px;color:var(--muted)}.daily-verse a{display:inline-block;margin-top:9px;font-size:12px;min-height:30px;padding:4px;text-decoration:none}.featured-audio{background:var(--surface);border:1px solid var(--line);border-radius:24px;overflow:hidden}.audio-feature-art{aspect-ratio:1.65;position:relative;display:flex;align-items:end;overflow:hidden;text-decoration:none;background:#231a0e;color:#fff}.audio-feature-art>img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:center 55%;filter:brightness(.73)}.audio-feature-art:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent,#251603c9)}.audio-feature-art>div{position:relative;z-index:1;padding:18px 20px}.audio-feature-art span{font-size:11px;letter-spacing:1.5px;color:#f5d79e}.audio-feature-art h2{font-family:Book,Georgia,serif;font-size:25px;line-height:1.2;margin:7px 0;color:#fff}.audio-feature-art p{font-size:14px;margin:0}.audio-feature-row{display:flex;align-items:center;gap:12px;padding:14px}.audio-feature-row>img{width:42px;height:42px;border-radius:9px;object-fit:cover}.audio-feature-row>div{flex:1;min-width:0}.audio-feature-row strong,.audio-feature-row small{display:block;overflow-wrap:anywhere}.audio-feature-row strong{font-size:15px;line-height:1.3}.audio-feature-row small{font-size:12px;color:var(--muted);margin-top:4px}.audio-feature-row .icon{border-radius:50%;min-width:44px;width:44px;height:44px}.audio-feature-row svg{width:19px;height:19px;fill:currentColor;stroke-width:0}.home-tools{background:var(--surface);border-radius:23px;padding:4px 20px 22px}.home-tools .section-head{margin:15px 0 5px}.practice-wheel{position:relative;aspect-ratio:1.12;max-width:440px;margin:30px auto 10px;isolation:isolate}.practice-wheel:before{content:'';position:absolute;inset:12% 12% 8%;border:1px solid #e7d7b5;border-radius:50%;z-index:-1}.practice-wheel:after{content:'';position:absolute;inset:22% 23% 20%;border:3px dotted #e4cea2;border-radius:50%;z-index:-1}.wheel-center{position:absolute;left:50%;top:54%;transform:translate(-50%,-50%);display:flex;flex-direction:column;gap:8px;align-items:center;justify-content:center;width:34%;aspect-ratio:1;border-radius:50%;background:linear-gradient(135deg,#c99d51,#8e6221);color:white;text-decoration:none;box-shadow:0 0 0 13px #fff,0 0 0 14px #ebdfc6}.wheel-center svg{width:30px;height:30px}.wheel-center strong{font-size:15px;font-weight:500}.wheel-tool{position:absolute;display:flex;align-items:center;flex-direction:column;gap:7px;text-decoration:none;color:var(--ink);width:29%;text-align:center}.wheel-tool>span{display:grid;place-items:center;background:#ffebc7;border-radius:50%;width:57%;aspect-ratio:1;min-width:48px;max-width:67px}.wheel-tool svg,.wheel-tool .lotus-icon{width:28px;height:28px;color:#94651b}.wheel-tool strong{font-size:14px;font-weight:500;line-height:1.25}.wheel-tool.top{left:35.5%;top:0}.wheel-tool.left-top{left:0;top:32%}.wheel-tool.right-top{right:0;top:32%}.wheel-tool.left-bottom{left:14%;bottom:0}.wheel-tool.right-bottom{right:14%;bottom:0}.all-practice{display:flex;justify-content:center;align-items:center;gap:7px;width:fit-content;min-height:44px;padding:9px 18px;border-radius:25px;background:var(--bg);margin:15px auto 0;font-size:13px;text-decoration:none;color:var(--muted)}.prayer-gateways{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.prayer-gateway{position:relative;isolation:isolate;aspect-ratio:1/1.15;display:flex;align-items:end;border-radius:23px;overflow:hidden;color:white;text-decoration:none;background:#b89a62}.prayer-gateway>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 25%;z-index:-2}.prayer-gateway:before{content:'';position:absolute;inset:25% 0 0;background:linear-gradient(transparent,#342211c9);z-index:-1}.prayer-gateway>div{padding:18px 14px;width:100%}.prayer-gateway h3{color:white;font-weight:600;font-size:20px;line-height:1.2;margin:0 0 7px}.prayer-gateway p{color:#fff7eb;font-size:13px;line-height:1.4;margin:0}.room-enter{display:block;font-size:12px;margin-top:10px}.continue-reading{display:flex;gap:13px;align-items:center;text-decoration:none;background:var(--surface);padding:15px;border-radius:20px;color:var(--ink);margin-top:20px}.continue-reading>img{width:43px;height:58px;object-fit:cover;border-radius:5px}.continue-reading>div{flex:1;min-width:0}.continue-reading small{display:block;font-size:10px;color:var(--gold);letter-spacing:.7px}.continue-reading strong{font-size:16px;display:block;margin:2px 0}.continue-reading span{font-size:12px;color:var(--muted)}.library-banner{display:flex;align-items:center;gap:16px;padding:20px;margin:24px 0;background:var(--surface);border-radius:20px;border:0;text-decoration:none;color:var(--ink)}.library-banner>div{flex:1;min-width:0}.library-banner h2{font-size:21px;margin:0 0 4px}.library-banner p{font-size:15px;margin:0;color:var(--muted)}.library-symbol svg{width:37px;height:37px;color:var(--gold)}.event-preview-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.event-preview{display:flex;align-items:center;gap:14px;text-decoration:none;color:var(--ink);padding:14px;border-radius:19px;background:var(--surface)}.event-date{border-radius:12px;background:var(--green-soft);width:54px;padding:7px 3px;flex-shrink:0;text-align:center;color:var(--green)}.event-date strong{font-size:24px;display:block;line-height:1.15}.event-date small{font-size:10px;display:block}.event-preview>div{flex:1}.event-preview>div strong{font-size:15px;font-weight:550;line-height:1.3;display:block}.event-preview>div small{font-size:12px;color:var(--muted);display:block;margin-top:4px}.explore-shortcuts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.explore-shortcuts>a{display:flex;align-items:center;gap:10px;min-width:0;text-decoration:none;background:var(--surface);padding:18px 14px;border-radius:17px;color:var(--ink);font-size:14px}.explore-shortcuts>a>svg,.explore-shortcuts>a>.lotus-icon{width:27px;height:27px;color:var(--gold)}.explore-shortcuts>a>span:first-of-type{flex:1}.home-articles{display:grid;gap:12px;margin-top:15px}.article-preview{display:flex;align-items:center;gap:15px;padding:20px;background:var(--surface);border-radius:18px;color:var(--ink);text-decoration:none}.article-preview>span:first-child{width:50px;height:60px;background:var(--green-soft);border-radius:12px;display:grid;place-items:center;color:var(--gold);flex-shrink:0}.article-preview>div{flex:1}.article-preview h3{font-size:18px;margin:0 0 6px}.article-preview p{color:var(--muted);font-size:14px;margin:0}.discussion-entry{display:flex;gap:16px;align-items:center;margin:24px 0 0;padding:18px;background:var(--surface);border-radius:18px;text-decoration:none;color:var(--ink)}.discussion-entry>svg{color:var(--gold);width:28px;height:28px}.discussion-entry>span:nth-child(2){flex:1}.discussion-entry strong,.discussion-entry small{display:block}.discussion-entry strong{font-size:18px}.discussion-entry small{font-size:14px;color:var(--muted);margin-top:4px}
/* Practice hub and quiet tools. */
.practice-hub{max-width:840px;margin:auto}.practice-hero{display:flex;align-items:end;min-height:260px;aspect-ratio:2.3;position:relative;isolation:isolate;overflow:hidden;border-radius:24px;color:white;text-decoration:none}.practice-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 48%;z-index:-2}.practice-hero:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent,#2c140f99);z-index:-1}.practice-hero>div{padding:26px}.practice-hero h1{color:white;font-size:28px;margin:0 0 6px}.practice-hero p{color:white;font-size:15px}.practice-hero .button{border-radius:25px;color:#39240c;background:#ffd383;font-size:14px;border:0}.practice-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.practice-photo{aspect-ratio:1.48;position:relative;isolation:isolate;border-radius:25px;overflow:hidden;display:flex;align-items:end;justify-content:center;text-align:center;color:white;text-decoration:none}.practice-photo>img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;z-index:-2}.practice-photo:before{content:'';position:absolute;inset:0;background:linear-gradient(#0001,#0001 15%,#16100bd9);z-index:-1}.practice-photo>div{padding:17px 10px 15px;width:100%}.practice-photo h3{font-size:18px;line-height:1.25;margin:0 0 4px;color:#fff}.practice-photo p{color:#eee4db;font-size:13px;line-height:1.35;margin:0}.photo-symbol{position:absolute;right:11px;top:11px;background:#ffffff2e;border:1px solid #fff2;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;color:#fff}.photo-symbol svg,.photo-symbol .lotus-icon{width:20px;height:20px}.practice-hub>.group-link{margin-top:24px}.focus-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 16px;min-height:60px}.focus-header h1{font-size:20px;text-align:center;margin:0}.focus-header>span{width:44px}.focus-header .icon{font-size:30px;text-decoration:none;color:inherit}.mala-page,.instruments-page{background:var(--surface);min-height:90dvh;max-width:760px}.mala-page .practice-stage{background:radial-gradient(#cabda23d .7px,transparent .7px) 0 0/8px 8px,var(--surface);border:0;border-radius:0;color:var(--ink);padding:18px 16px 25px;min-height:640px;justify-content:flex-start}.mala-page .practice-stage>label{font-size:13px;color:var(--muted)}.mala-page #mala-title{background:transparent!important;border:0!important;text-align:center;font-size:20px;max-width:340px!important;margin:2px 0 7px!important}.mala-counter{text-align:center;color:var(--muted);font-size:14px}.mala-counter strong{font-size:44px;color:var(--ink);font-weight:500}.mala-tap{position:relative;width:100%;height:390px;background:transparent;border:0;border-radius:0;display:block;margin:4px 0 0;isolation:isolate;overflow:hidden}.mala-tap:active{transform:none}.bead-string{position:absolute;left:50%;top:0;bottom:42px;width:160px;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px}.bead-string:before{content:'';position:absolute;top:0;bottom:0;left:50%;width:3px;background:#6e3c23;z-index:-1}.bead{display:block;border-radius:50%;background:radial-gradient(ellipse at 32% 24%,#bc8854 0,#7c4926 28%,#3f200e 67%,#1f1009 85%);box-shadow:inset -5px -5px 10px #16070088,inset 4px 3px 8px #dab38b66,4px 5px 9px #4421112a;width:54px;height:54px;position:relative}.bead:after{content:'';position:absolute;inset:5px;border:1px solid #e1b78130;border-radius:50%;transform:rotate(-25deg) scaleX(.5)}.bead-0,.bead-6{width:26px;height:26px;opacity:.7}.bead-1,.bead-5{width:41px;height:41px}.bead-3{width:85px;height:85px}.mala-tap:active .bead-string{transform:translate(-50%,10px)}.mala-hint{position:absolute;bottom:5px;left:0;right:0;text-align:center;color:var(--muted);font-size:14px}.mala-page #mala-rounds{font-size:14px;margin-top:4px!important}.mala-page .caption{padding:0 22px 20px}.instruments-page>p{font-size:13px;text-align:center;padding:0 20px;color:var(--muted)}.instruments-page>.grid{padding:5px 20px 15px;gap:22px}.instrument-card{background:var(--bg);text-align:center;border-radius:24px;padding:18px}.instrument-card h2{font-size:18px}.instrument-card label{display:block;font-size:12px;text-align:left;color:var(--muted)}.instrument-card .actions{justify-content:center;gap:7px}.instrument-card .actions button{font-size:13px;padding:8px 11px}.instrument{position:relative;width:100%;border:0;background:transparent;height:200px;margin:0 0 10px;padding:0;display:grid;place-items:center}.instrument:active .instrument-object{transform:scale(.96)}.instrument-object.bell{width:185px;height:85px;border-radius:10% 10% 48% 48% / 12% 12% 85% 85%;background:linear-gradient(95deg,#6b4a12,#bd8638 20%,#ffe3a4 40%,#b7802e 65%,#6c4716);box-shadow:inset 0 -10px 20px #56330066,0 12px 18px #6c461630;position:relative;margin-top:25px;border-bottom:5px solid #8a5520}.instrument-object.bell:before{content:'';position:absolute;top:-14px;left:0;right:0;height:29px;background:radial-gradient(ellipse at 50% 20%,#64451b,#22180c 75%);border:5px solid #d2a85c;border-radius:50%;box-shadow:0 2px 1px #5c4118}.instrument-object.bell i{position:absolute;right:-8px;top:-28px;width:13px;height:130px;border-radius:7px;background:linear-gradient(90deg,#513325,#a48057,#6b452d);transform:rotate(35deg);box-shadow:3px 3px 8px #0002}.instrument-object.wood{width:154px;height:121px;border-radius:48% 46% 40% 43%;background:radial-gradient(ellipse at 35% 20%,#f4b96d,#b46a25 42%,#5f310e 90%);box-shadow:inset 5px 5px 12px #edab5a,0 12px 18px #6c461630;position:relative;transform:rotate(-12deg)}.instrument-object.wood:before{content:'';position:absolute;top:53%;left:-4%;width:110%;height:15px;transform:rotate(-9deg);background:#321c0f;border-radius:80% 20% 45% 20%;box-shadow:0 -3px 2px #e4ac61,0 3px 2px #4f2b12}.instrument-object.wood i{position:absolute;width:72px;height:54px;border:3px solid #63390e;border-radius:50%;left:24px;top:15px;transform:rotate(-9deg);box-shadow:0 2px 1px #ffd295}.instrument-object.wood b{position:absolute;width:18px;height:105px;border-radius:12px;background:linear-gradient(90deg,#7f471d,#e3a561,#9b5c25);transform:rotate(42deg);right:-24px;top:-35px}.instruments-page>#stop-instruments{display:flex;margin:10px auto!important}
/* Meditation setup and active full-screen session. */
.meditation-focus{min-height:100dvh;padding:0 0 20px;color:var(--ink);background:var(--surface)}.meditation-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 18px;max-width:760px;margin:auto}.meditation-head h1{font-size:20px;margin:0;text-align:center}.meditation-head .icon{font-size:29px;text-decoration:none;color:inherit}.meditation-head svg{width:23px;height:23px}.meditation-main{max-width:600px;margin:auto;padding:16px 24px 24px}.meditation-setup h2{font-size:24px;margin:0 0 22px}.med-setup-duration{margin:0 0 34px}.duration-tiles{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.duration-tiles button,.custom-minutes{background:var(--bg);border:0;border-radius:19px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:12px 3px;min-height:78px;min-width:0;gap:2px;color:var(--ink)}.duration-tiles button strong{font-size:24px;line-height:1.2}.duration-tiles button small,.custom-minutes small{font-size:12px;color:var(--muted)}.duration-tiles button.primary{background:linear-gradient(120deg,#b98b42,#876024);color:white}.duration-tiles button.primary small{color:#fff7e8}.custom-minutes input#med-minutes{width:100%;background:transparent;border:0;min-height:30px;padding:0 0 0 8px;text-align:center;font-size:21px;font-weight:600;appearance:textfield}.custom-minutes input::-webkit-inner-spin-button{appearance:none}.med-setup-sound{margin:0 0 30px}.med-setup-sound .group-link{border-radius:22px;background:var(--bg);padding:16px}.med-preparation{background:var(--bg);padding:22px;border-radius:26px}.med-preparation h2{font-size:21px}.med-preparation ol{padding:0;list-style:none;counter-reset:step;margin:0}.med-preparation li{display:flex;gap:13px;padding:0 0 21px;position:relative;counter-increment:step}.med-preparation li:before{content:counter(step,decimal-leading-zero);width:33px;height:33px;flex-shrink:0;background:#ad8139;border-radius:50%;display:grid;place-items:center;font-size:13px;color:#fff}.med-preparation li:not(:last-child):after{content:'';position:absolute;width:2px;left:16px;top:36px;bottom:4px;background:#ded3bf}.med-preparation li:last-child{padding-bottom:0}.med-preparation strong{font-size:16px;font-weight:550}.med-preparation p{font-size:14px;line-height:1.4;color:var(--muted);margin:4px 0 0}.med-ready{text-align:center;padding:24px 8px 10px}.med-ready p{font-style:italic;color:var(--muted);font-size:17px}.med-ready #timer-start{width:78px;height:78px;min-height:78px;border-radius:50%;background:#ffda9b;color:#171717;box-shadow:0 0 0 9px #fff7e5,0 0 0 10px #f9edcf;border:0;padding:18px;margin:15px auto}.med-ready svg{width:32px;height:32px;fill:currentColor;stroke:0}.meditation-note{font-size:12px;text-align:center;line-height:1.5;color:var(--muted);margin:18px auto 10px;max-width:400px}.meditation-links{display:flex;justify-content:center;gap:24px;font-size:13px}.meditation-active{background:#db9a59 url('/tu-tap/design/meditation-sunset-v35.png') center/cover no-repeat;isolation:isolate;position:relative;color:#fff;display:flex;flex-direction:column;min-height:100dvh}.meditation-active:before{content:'';position:absolute;inset:0;background:linear-gradient(#0002,transparent 35%,#0009);z-index:-1}.meditation-active.lotus{background-image:url('/tu-tap/design/meditation-lake.webp')}.meditation-active.forest{background-image:url('/tu-tap/design/calendar-forest-v35.png')}.meditation-active .meditation-head{width:100%;max-width:900px;flex:none}.meditation-active .meditation-head .icon{background:#fff3;border:1px solid #fff4;border-radius:50%}.meditation-active .meditation-head h1{font-size:16px;font-weight:400;color:white;text-shadow:0 1px 4px #0008}.meditation-active .meditation-main{width:100%;max-width:600px;display:flex;align-items:center;flex-direction:column;justify-content:center;flex:1;padding-top:30px}.meditation-dial{width:210px;aspect-ratio:1;position:relative;display:grid;place-items:center;margin:clamp(30px,10vh,110px) auto 35px;color:#4b2d0c}.timer-ring{position:absolute;inset:0;width:100%;height:100%;fill:none;overflow:visible}.timer-track{stroke:#ffefbb99;stroke-width:2}#timer-progress{stroke:#ffe4a3;stroke-width:4;stroke-linecap:round;transform:rotate(-90deg);transform-origin:center}#timer-dot circle{fill:#fff0c6;stroke:0}.timer-face{position:relative;width:92%;aspect-ratio:1;border-radius:50%;display:grid;place-items:center;background:#ffe3a490;border:1px solid #fff1c9c9;padding:25px;text-align:center;box-shadow:0 0 0 5px #ffebbd2e}.timer-label{font-size:23px;line-height:1.4;font-weight:400;margin:0;color:#35230f}.meditation-dial.breathing .timer-face{transform:scale(var(--breath-scale,1));transition:transform .25s linear}.meditation-timing{text-align:center;margin:0 0 25px;text-shadow:0 1px 7px #0009}.meditation-timing .timer-number{font-family:inherit;font-size:42px;font-weight:300;line-height:1.2}.meditation-timing p{font-size:13px;line-height:1.4;margin:5px 0}.meditation-timing .timer-duration{font-size:12px;opacity:.8}.meditation-controls{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;max-width:400px}.meditation-controls button{border:1px solid #fff7;background:#fff3;color:white;border-radius:25px;padding:10px 18px;font-size:15px}.meditation-controls button.primary{background:#fff8e8e8;color:#332515;border:0}.meditation-controls .timer-finish{flex-basis:100%;border:0;background:transparent;min-height:44px;text-decoration:underline}.meditation-active .meditation-note,.meditation-active .meditation-links a{color:#fff9e9;text-shadow:0 1px 5px #000}.meditation-active .meditation-note{margin-top:25px}.meditation-active .meditation-links{margin-bottom:10px}
/* Personal pages: hero, centered avatar, statistics, grouped navigation. */
.profile-page{max-width:800px;margin:auto}.profile-hero{position:relative;text-align:center;margin-bottom:34px}.profile-cover{position:relative;height:210px;overflow:hidden;border-radius:22px 22px 45% 45% / 22px 22px 10% 10%;display:flex;justify-content:end;align-items:start;padding:14px;gap:7px}.profile-cover>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 45%;filter:brightness(.68)}.profile-cover>.icon{position:relative;color:#fff;text-decoration:none;font-size:25px;background:#0002;border-radius:50%}.profile-avatar{width:114px;height:114px;margin:-63px auto 16px;position:relative;border-radius:50%;border:3px solid var(--bg);background:linear-gradient(135deg,#c6933a,#86591c);display:grid;place-items:center;overflow:hidden}.profile-avatar>.lotus-icon{width:88px;height:88px;filter:brightness(1.5)}.profile-avatar>img:not(.lotus-icon){width:100%;height:100%;object-fit:cover}.profile-hero h1{font-size:23px;margin:0 12px 7px;overflow-wrap:anywhere}.profile-hero>p{font-style:italic;font-size:15px;color:var(--muted);margin:0 18px}.profile-overview>.profile-tabs{display:none}.profile-journey h2{font-size:22px}.journey-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;text-align:center;padding:8px 0 22px}.journey-stats>div{display:flex;flex-direction:column;align-items:center;gap:5px}.journey-stats svg,.journey-stats .lotus-icon{width:40px;height:40px;padding:9px;border-radius:50%;background:#fff4e5;color:#a37325;margin-bottom:6px}.journey-stats strong{font-size:21px;line-height:1.3;font-weight:550}.journey-stats span{font-size:14px;color:var(--muted);line-height:1.3}.profile-journey>.group-link{border-top:1px solid var(--line);padding:16px 0 0;border-radius:0}.profile-journey,.profile-group,.profile-data{margin-bottom:20px}.profile-group h2{font-size:22px}.profile-group .group-link{padding:15px 6px;border-radius:0}.about-vns{margin:0 0 20px;padding:18px 22px}.about-vns>.lotus-icon{background:#a77728;padding:5px;border-radius:10px;width:40px;height:40px}.profile-data{padding:20px}.profile-data h2{font-size:20px}.profile-data>.fine{margin-top:15px}.stat strong{font-family:inherit;font-weight:550;font-size:28px}.settings-row{padding:18px 0}.settings-row strong{font-size:16px}.settings-row p{font-size:13px}.settings-row input[type=checkbox]{appearance:none;width:44px;min-width:44px;height:26px;min-height:26px;background:#d1cfd2;border-radius:15px;position:relative;cursor:pointer;transition:background .15s}.settings-row input[type=checkbox]:before{content:'';position:absolute;left:3px;top:3px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 4px #0002}.settings-row input[type=checkbox]:checked{background:#ac843f}.settings-row input[type=checkbox]:checked:before{left:21px}
/* Calendar and catalog use quiet grouped rows. */
.calendar-layout .card{padding:20px}.calendar-toolbar h2{font-size:21px}.calendar-grid{gap:5px}.calendar-day{border-radius:12px;min-height:70px}.calendar-day strong{font-size:18px}.calendar-day small{font-size:11px}.calendar-day.selected{background:linear-gradient(135deg,#b68b45,#896026);color:#fff}.calendar-day.selected small{color:#fff}.calendar-day.today{box-shadow:inset 0 0 0 1px #be984b}.calendar-layout .actions{font-size:12px}.reading-library-head .eyebrow{display:none}.reading-library-head h1{font-size:26px}.reading-library-head .muted{font-size:14px}.reading-filter{grid-template-columns:minmax(0,1fr) 190px;gap:14px}.reading-filter input{font-size:16px}.reading-collection{border:0;border-radius:20px;background:var(--surface)}.collection-heading{gap:15px;padding:18px}.collection-art{width:62px;height:88px;align-self:flex-start;border-radius:8px;background:var(--green-soft)}.collection-art svg{width:33px;height:33px}.collection-heading h2{font-size:20px;margin:2px 0 6px}.collection-heading p{font-size:14px;margin:0 0 5px}.collection-heading small{font-size:12px}.collection-heading .tag{font-size:10px;background:transparent;padding:0}.collection-heading .actions{margin-top:11px;gap:8px}.collection-heading .actions button,.collection-heading .actions .button{font-size:13px;min-height:44px;padding:7px 13px}.collection-chapters{border-color:var(--line)}.collection-chapters>summary{font-size:15px;padding:14px 18px}.collection-chapters>div{grid-template-columns:1fr}.collection-chapter{font-size:15px}.reading-pdf{border:0;border-radius:18px}.reading-pdf h2{font-size:17px}.reading-pdf .button{font-size:13px}.audio-list-cover{width:46px;height:52px;object-fit:cover;flex-shrink:0;border-radius:8px}.audio-list-cover+.grow{min-width:0}.audio-art{height:auto;aspect-ratio:1.5;overflow:hidden;padding:0;margin-bottom:20px;position:relative}.audio-art img{width:100%;height:100%;object-fit:cover}.audio-player-sheet #full-title{font-size:23px;margin:8px 0 6px}.audio-player-sheet #full-author{color:var(--muted);font-size:15px}.audio-player-sheet #full-time{text-align:right;font-size:13px;color:var(--muted)}.audio-player-sheet .actions{justify-content:center}.audio-player-sheet .actions button{font-size:13px;border-radius:25px}.audio-player-sheet #full-toggle{min-width:86px}.audio-player-sheet .form-grid label{font-size:13px}.audio-player-sheet .form-grid{margin-top:24px}
/* Focused reading: typography settings still use the reader's saved values. */
body[data-route="read"] .sidebar,body[data-route="read"] .topbar,body[data-route="read"] .foot,body[data-route="meditation"] .sidebar,body[data-route="meditation"] .topbar,body[data-route="meditation"] .foot,body[data-route="mala"] .sidebar,body[data-route="mala"] .topbar,body[data-route="mala"] .foot,body[data-route="instruments"] .sidebar,body[data-route="instruments"] .topbar,body[data-route="instruments"] .foot{display:none}body[data-route="read"] main{max-width:860px;padding:0 0 80px;min-height:100dvh}body[data-route="meditation"] main{max-width:none;padding:0}body[data-route="mala"] main,body[data-route="instruments"] main{padding:0;max-width:760px}.reading-focus-head{position:sticky;top:0;z-index:21;display:flex;align-items:center;gap:6px;min-height:58px;padding:7px 12px;background:var(--reader-page-bg);border-bottom:1px solid #b8872920;color:var(--reader-page-ink)}.reading-focus-head strong{text-align:center;font-size:19px}.reading-focus-head .icon{font-size:29px;background:transparent}.reading-meta{padding:22px 30px 4px;text-align:center}.reading-meta h1{font-size:23px;font-weight:500}.reading-place{font-size:11px}.reader-v76 .reader-more:not([open]){display:block}.reader-v76 .reader-more>summary{display:list-item;list-style-position:inside;min-height:44px;line-height:1.4;cursor:pointer;padding:12px 0;text-align:center;font-size:13px;opacity:.75}.reader-v76 .reader-more{margin:2px 24px;color:inherit}.reader-tools{position:static;flex-wrap:wrap;background:transparent;gap:7px;padding:12px 0;border:0}.reader-tools button{font-size:13px;min-height:44px;color:inherit}.reader-body{padding:22px 32px 10px;border-radius:0;background:var(--read-bg);color:var(--read-ink);line-height:var(--read-line,1.9);font-size:var(--read-size,24px)}.reader-v76 .verse{padding:0 32px;margin:0 0 36px}.reader-v76 .verse.saved{padding-left:32px}.reader-v76 .verse-lines{padding:0;text-align:center}.reader-v76 .verse header>span{position:static;display:inline;font:inherit;line-height:inherit}.reader-v76 .verse header{display:block;text-align:center;font-size:.65em;line-height:1.4;opacity:.65;margin-bottom:6px}.reader-v76 .verse header button{right:-6px;top:0;min-width:44px;min-height:44px;opacity:.55}.reader-v76 .verse header button[aria-pressed=true]{opacity:1;color:#9a6e23}.reader-v76 .verse.saved:before{left:0}.reading-language-line.translation{text-align:left}.reading-language-line.root-text{text-align:left}.reading-bottom{position:fixed;left:50%;transform:translateX(-50%);width:min(860px,100%);max-width:none;bottom:0;z-index:30;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:5px 8px calc(5px + env(safe-area-inset-bottom));background:var(--reader-page-bg,var(--surface));border-top:1px solid #b8872928}.reading-bottom button{min-height:48px;padding:4px;display:flex;flex-direction:row;gap:7px;border:0;background:transparent;font-size:13px;color:inherit}.reading-bottom svg{width:20px;height:20px}.reading-bottom strong{font-size:23px;font-weight:500}.read-progress{left:0}body[data-route="read"] .mini-player{bottom:calc(66px + env(safe-area-inset-bottom))}body[data-route="read"].has-audio main{padding-bottom:150px}body[data-route="meditation"] .mini-player,body[data-route="mala"] .mini-player,body[data-route="instruments"] .mini-player{bottom:calc(12px + env(safe-area-inset-bottom))}.has-audio .meditation-focus{padding-bottom:90px}.reader-attribution{font-size:12px}.reader-end-actions .button,.reader-end-actions button{font-size:13px}
/* Public prayer rooms: full artwork, readable feed above a fixed-in-panel composer. */
body[data-room] .sidebar,body[data-room] .topbar,body[data-room] .foot{display:none}body[data-room] main{padding:0;max-width:none;min-height:100dvh}.prayer-room{position:relative;max-width:1000px;margin:auto}.room-back{position:absolute;top:0;left:0;right:0;z-index:5;display:flex;justify-content:space-between;align-items:center;padding:12px 16px;gap:14px}.room-back a{color:#2b2010;text-decoration:none;background:#fff7dfdd;border-radius:22px;min-height:44px;display:flex;align-items:center;padding:8px 13px;font-size:13px;max-width:48%}.room-back a.button{border:0;font-size:12px}.room-layout{position:relative;height:100dvh;min-height:660px;isolation:isolate;overflow:hidden;background:#d2b47c}.room-art{position:absolute;inset:0;z-index:-2;margin:0}.room-art>img{width:100%;height:100%;object-fit:cover;object-position:center 20%;display:block}.room-art>p{display:none}.room-layout:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(#fff4d744,transparent 35%,#261b13d9 75%,#261b13ed)}.room-feed{height:100%;display:flex;flex-direction:column;padding:70px 24px 18px;max-width:700px;margin:auto}.room-heading{text-align:center;color:#3e260f;text-shadow:0 1px 3px #fff7db}.room-heading h1{font-size:24px;margin:0 0 5px}.room-heading p{font-size:14px;margin:0}.room-tabs{display:flex;gap:5px;justify-content:center;flex-wrap:wrap;margin:12px 0 0}.room-tabs button{border:0;background:#fff7e4dc;border-radius:20px;font-size:12px;padding:7px 11px;min-height:40px;color:#402b12}.room-tabs button.active{background:#a17730;color:white}.room-list{margin-top:auto;padding:18px 0 10px;max-height:43%;min-height:125px;overflow:auto;scrollbar-width:thin;overscroll-behavior:contain;color:#fff}.room-list .prayer-card{background:#0005;border:1px solid #fff2;color:#fff;border-radius:20px;padding:15px;margin:0 0 12px;box-shadow:none}.prayer-card header{display:flex;justify-content:flex-start;gap:10px;align-items:center;margin-bottom:8px}.prayer-avatar{background:#ac813b;border-radius:50%;width:34px;height:34px;display:grid;place-items:center;flex-shrink:0}.prayer-avatar>.lotus-icon{width:26px;height:26px}.prayer-card header strong{font-size:14px}.prayer-card time{display:block;font-size:10px;color:#e4dccd}.prayer-card .body{font-size:16px;line-height:1.5;margin:8px 0 10px;white-space:pre-wrap}.prayer-card .recipient{font-size:13px;color:#f8dfa9;margin:6px 0}.prayer-card .recipient small{display:block;font-size:10px;color:#e8d7b6}.prayer-card details{font-size:12px}.prayer-card details summary{min-height:36px;padding:7px 0;cursor:pointer;color:#fff0cf}.prayer-card .actions{gap:7px;margin-top:5px}.prayer-card .actions button{font-size:12px;min-height:40px;background:#fffae7;color:#483015}.room-list .empty{background:#0004;border-color:#fff4;color:#fff;padding:15px;font-size:14px}.room-list .fine{color:#f2e8d8}.room-feed>.actions{margin:4px 0;justify-content:center}.room-feed>.actions button,.room-feed>.actions>a{font-size:12px;min-height:36px;padding:5px 12px;background:#fff7e0dd;color:#4b3718;border:0}.room-compose{order:10;padding:8px 0 0;flex-shrink:0;color:#fff}.room-compose>.actions{display:flex;flex-wrap:nowrap;gap:8px;margin:0}.room-compose .compose-prompt{flex:1;min-width:0;text-align:left;justify-content:start;font-size:14px;background:#ffffff24;color:#fff;border:1px solid #fff5;border-radius:24px;padding:11px 15px}.room-compose .primary{border-radius:24px;background:#ebc775;color:#30210d;font-size:14px;padding:10px 16px;white-space:nowrap;min-height:46px}.room-compose .fine{color:#e4d9c7;font-size:10px;margin:6px 4px 0}.room-feed>.room-note{font-size:10px;color:#e3d8c5;margin:4px 0 0}.room-feed>.error{font-size:12px;max-height:64px;overflow:auto;color:#ffe4ce;background:#5b170e99;border-radius:9px;margin:6px 0;padding:6px 10px}.room-notice{margin:10px auto 0;border:0;background:#fff4cd;color:#563a13;font-size:13px;min-height:38px;border-radius:22px}.ambient-wall{background:transparent;padding:0;min-height:0;border-radius:0}.ambient-wall blockquote{font-size:20px;font-family:inherit;color:#fff8de}.ambient-wall .eyebrow{color:#ffe1a0}.prayer-preview{background:var(--bg);border:1px solid var(--line);border-radius:14px;padding:15px;white-space:pre-wrap;overflow-wrap:anywhere}.prayer-compose-hint{font-size:14px}.prayer-gateway .button{display:none}
/* Bottom sheets, clear focus and accessible controls. */
dialog{width:620px;max-width:calc(100vw - 28px);max-height:calc(100dvh - 32px);border:0;border-radius:25px;box-shadow:0 20px 70px #0004;background:var(--surface);color:var(--ink)}dialog::backdrop{background:#1118;backdrop-filter:blur(3px)}dialog>header{padding:15px 20px;background:var(--surface);border-bottom:1px solid var(--line)}dialog>header h2{font-size:20px;font-weight:650}.dialog-body{padding:22px}.reading-settings-sheet .dialog-body{padding:20px}.reading-settings-sheet label{font-size:15px}.reading-settings-sheet .form-grid{gap:14px}.reading-settings-sheet #font-preview{font-size:inherit;background:var(--bg);border:0}.reader-toc-list{display:grid;gap:9px}.reader-toc-list a{justify-content:space-between;text-align:left}.med-sound-list{display:grid;gap:8px}.med-sound-list button{justify-content:start;text-align:left}.settings-row select{background:var(--bg)}
body.dark{--bg:#1b1a1c;--surface:#252426;--ink:#f1edef;--muted:#c0b9be;--line:#3c373c;--green:#edcd89;--green-soft:#45361f;--gold:#e1bc76;--red:#ffb9ac;color-scheme:dark}body.dark .sidebar,body.dark .topbar{background:var(--surface)}body.dark .topbar #global-search input{background:var(--bg)!important}body.dark .daily-verse{background:#302a21}body.dark .wheel-center{box-shadow:0 0 0 13px var(--surface),0 0 0 14px #685431;color:#fff}body.dark .wheel-tool>span{background:#503d23}body.dark .wheel-tool svg{color:#efce8c}body.dark .journey-stats svg,body.dark .journey-stats .lotus-icon{background:#45361f;color:#e1bc76}body.dark .mala-page .practice-stage{background-color:var(--surface)}body.dark .meditation-setup{background:var(--surface)}body.dark .med-preparation,body.dark .med-setup-sound .group-link{background:var(--bg)}body.dark .primary{color:#fff}body.dark .med-ready #timer-start{color:#30210e;box-shadow:0 0 0 9px #3c3323,0 0 0 10px #776140}body.dark .reading-collection{background:var(--surface)}
@media(min-width:801px){body[data-route="home"] .topbar{max-width:1120px}.home-rooms .section-head{margin-top:22px}.home-rooms .prayer-gateway{aspect-ratio:1.15}.home-tools .practice-wheel{max-width:330px;margin-top:20px}.profile-hero .profile-cover{height:250px}.calendar-layout{grid-template-columns:1.25fr 1fr}.instruments-page .grid.two{grid-template-columns:1fr 1fr}.room-list{max-height:49%}.room-layout{min-height:750px;max-height:1100px}.room-art>img{object-fit:cover;object-position:center 35%}.room-feed{max-width:620px}.room-heading h1{font-size:28px}.foot{padding-left:24px;padding-right:24px}}
@media(max-width:1000px) and (min-width:801px){.sidebar{gap:12px;padding:0 18px}.sidebar .brand{font-size:17px}.sidebar .nav-item{font-size:13px;padding:10px 9px}.desktop-library{display:none}.home-columns{gap:20px}.wheel-tool strong{font-size:12px}.wheel-center strong{font-size:13px}.practice-photo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:800px){
 body{font-size:16px}.sidebar{position:fixed;inset:auto 0 0;min-height:calc(var(--tab-height) + env(safe-area-inset-bottom));height:calc(var(--tab-height) + env(safe-area-inset-bottom));padding:0 8px env(safe-area-inset-bottom);background:#fffffff2;border:0;border-top:1px solid var(--line);backdrop-filter:blur(18px);z-index:45;display:block}.sidebar .brand,.desktop-library{display:none}.sidebar #nav{height:var(--tab-height);gap:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));align-items:stretch}.sidebar .nav-item,.sidebar .nav-home{display:flex;flex:1;flex-direction:column;min-height:64px;justify-content:center;gap:4px;padding:7px 1px 6px;font-size:11px;font-weight:400;border-radius:0;color:#383739;text-align:center;line-height:1.2}.sidebar .nav-item svg{width:23px;height:23px}.sidebar .nav-item.active{color:#8c601c;background:transparent;font-weight:500}.sidebar .nav-item.active svg{fill:#9c70252a}.topbar{min-height:62px;padding:8px 16px;gap:8px;background:var(--bg);position:sticky;top:0;z-index:25}.topbar .mobile-brand{width:35px;min-width:35px}.topbar .mobile-brand img{width:35px;height:35px}.topbar #shell-heading{font-size:18px;font-weight:550}.topbar #search-open{width:38px;min-width:44px;min-height:44px;padding:10px}.topbar #account-link{display:none}.topbar #global-search{padding:0;margin:4px 0 5px}.connection{font-size:11px;text-align:left;padding:6px 15px}main{padding:4px 16px 22px;min-height:72dvh;max-width:640px}.page-head{margin-top:12px}.page-head h1{font-size:26px}.page-head>.button{font-size:12px}.section-head{margin:24px 0 14px}.section-head h2{font-size:21px}.section-head a{font-size:12px}.foot{margin:20px 16px 0;padding:20px 0 calc(90px + env(safe-area-inset-bottom));font-size:11px}.has-audio .foot{padding-bottom:calc(165px + env(safe-area-inset-bottom))}.foot nav{gap:10px 15px}.mini-player{bottom:calc(72px + env(safe-area-inset-bottom));width:calc(100% - 20px);left:50%;right:auto;padding:9px 10px}.mini-player .icon{min-width:40px;min-height:44px}.mini-player .player-name{padding-left:2px}.toast{bottom:calc(145px + env(safe-area-inset-bottom));font-size:13px}.home-columns{display:flex;flex-direction:column;gap:0}.home-lead,.home-secondary{width:100%}.week-strip{padding:0 0 15px;gap:4px;margin:0 -3px}.week-day{font-size:15px}.week-day>span{font-size:12px}.week-day>div{padding:7px 0;max-width:43px}.week-day strong{font-size:15px}.week-day small{font-size:11px}.calendar-photo{aspect-ratio:1.25;border-radius:23px}.calendar-photo>div{padding:26px 20px 20px;max-width:80%}.calendar-photo p{font-size:12px;margin-bottom:10px}.calendar-photo .lunar-label{font-size:15px}.calendar-photo strong{font-size:clamp(56px,17vw,92px);line-height:1.1;margin:8px 0 7px}.calendar-photo h1{font-size:21px;margin-bottom:14px}.calendar-photo .lunar-year{font-size:13px}.daily-verse{padding:25px 16px 18px;margin:20px 0 16px;border-radius:12px}.daily-verse blockquote{font-size:16px;line-height:1.35}.daily-verse p{font-size:14px}.daily-verse small{font-size:10px}.featured-audio{border-radius:23px}.audio-feature-art{aspect-ratio:1.65}.audio-feature-art>div{padding:18px}.audio-feature-art h2{font-size:24px;line-height:1.2}.audio-feature-art p{font-size:13px}.audio-feature-row{padding:12px;gap:10px}.audio-feature-row strong{font-size:14px}.audio-feature-row small{font-size:11px}.audio-feature-row>img{width:40px;height:43px}.home-tools{margin:16px -16px 0;border-radius:0;padding:10px 18px 24px}.home-tools .section-head{margin:10px 0 0}.practice-wheel{max-width:430px;margin:34px auto 12px;aspect-ratio:1.1}.wheel-center{width:33%}.wheel-center strong{font-size:14px}.wheel-tool strong{font-size:14px}.wheel-tool>span{width:57%;min-width:46px}.wheel-tool svg,.wheel-tool .lotus-icon{width:26px;height:26px}.all-practice{font-size:12px;margin-top:16px;padding:8px 15px;min-height:40px}.home-rooms .section-head h2{font-size:21px}.prayer-gateways{gap:13px}.prayer-gateway{aspect-ratio:1/1.27;border-radius:22px}.prayer-gateway>div{padding:15px 12px}.prayer-gateway h3{font-size:19px}.prayer-gateway p{font-size:12px}.room-enter{font-size:11px;margin-top:6px}.library-banner{margin:20px 0;padding:16px;border-radius:20px;gap:14px}.library-banner h2{font-size:19px}.library-banner p{font-size:13px}.library-symbol svg{width:31px;height:31px}.continue-reading{margin-top:19px}.home-calendar{padding:0!important}.event-preview-list{grid-template-columns:1fr}.event-preview{padding:14px}.event-preview>div strong{font-size:15px}.explore-shortcuts{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.explore-shortcuts>a{font-size:13px;padding:16px 13px;gap:8px}.explore-shortcuts>a>svg,.explore-shortcuts>a>.lotus-icon{width:23px;height:23px}.article-preview{padding:16px;gap:13px}.article-preview h3{font-size:16px}.article-preview p{font-size:13px}.article-preview>span:first-child{width:44px;height:54px}.discussion-entry{padding:16px;gap:12px}.discussion-entry strong{font-size:17px}.discussion-entry small{font-size:13px}.practice-hero{aspect-ratio:1.7;min-height:210px;border-radius:24px}.practice-hero>div{padding:20px}.practice-hero h1{font-size:26px}.practice-hero p{font-size:13px;margin-bottom:12px}.practice-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.practice-photo{aspect-ratio:1.45;border-radius:24px}.practice-photo>div{padding:35px 10px 13px}.practice-photo h3{font-size:16px}.practice-photo p{font-size:12px;line-height:1.3}.photo-symbol{width:29px;height:29px;right:10px;top:10px}.photo-symbol svg,.photo-symbol .lotus-icon{width:18px;height:18px}.profile-hero{margin-left:-16px;margin-right:-16px;margin-top:-4px;margin-bottom:28px}.profile-cover{height:185px;border-radius:0 0 45% 45%/0 0 9% 9%;padding:14px}.profile-avatar{width:110px;height:110px;margin-top:-61px;margin-bottom:15px}.profile-hero h1{font-size:21px}.profile-hero>p{font-size:14px}.profile-journey,.profile-group,.profile-data{padding:20px;margin-bottom:18px}.profile-journey h2,.profile-group h2{font-size:21px}.journey-stats{gap:7px;padding:9px 0 20px}.journey-stats strong{font-size:19px}.journey-stats span{font-size:13px}.journey-stats svg,.journey-stats .lotus-icon{width:37px;height:37px;padding:8px}.profile-group .group-link{padding:15px 2px}.group-link strong{font-size:16px}.group-link small{font-size:14px}.about-vns{padding:18px 20px;margin-bottom:18px}.profile-overview>.profile-tabs{display:none}.profile-page>.page-head{align-items:center}.profile-page>.page-head h1{font-size:21px;margin:0}.profile-page>.page-head .icon{font-size:30px;text-decoration:none}.calendar-layout{grid-template-columns:1fr;gap:16px}.calendar-layout>.card{padding:17px}.calendar-grid{gap:2px}.calendar-toolbar{gap:6px}.calendar-toolbar h2{font-size:19px;line-height:1.25}.calendar-toolbar button{min-width:36px;min-height:44px;padding:7px}.calendar-day{min-height:60px}.calendar-day strong{font-size:17px}.calendar-day small{font-size:11px}.reading-filter{grid-template-columns:1fr;gap:12px}.reading-filter label span{font-size:12px}.reading-library-head h1{font-size:25px}.reading-library-head .muted{font-size:14px}.reading-library-head>.button{max-width:105px;font-size:12px}.reading-library-meta{font-size:12px}.reading-library-meta a{font-size:12px}.collection-heading{gap:13px;padding:16px}.collection-art{width:49px;height:69px}.collection-heading h2{font-size:18px}.collection-heading p{font-size:12px;line-height:1.4}.collection-heading .actions{gap:6px;margin-top:11px}.collection-heading .actions .button,.collection-heading .actions button{font-size:12px;min-height:42px;padding:8px 11px}.collection-heading small{font-size:11px}.collection-chapters>summary{font-size:14px;padding:13px 16px}.collection-chapter{font-size:14px}.reading-pdf{flex-wrap:wrap;padding:14px}.reading-pdf h2{font-size:16px}.reading-pdf>.button{margin-left:44px}.audio-list-cover{width:40px;height:46px}.list-row .actions{gap:3px}.list-row .actions button{min-width:38px;min-height:44px;padding:5px 9px}.list-row .grow h3{font-size:15px}.list-row .grow p{font-size:11px}.meditation-head{padding:8px 14px}.meditation-head h1{font-size:18px}.meditation-main{padding:20px 20px 24px}.meditation-setup h2{font-size:23px;margin-bottom:21px}.duration-tiles{gap:12px}.duration-tiles button,.custom-minutes{min-height:65px;border-radius:18px;padding:10px 1px}.duration-tiles button strong{font-size:23px}.duration-tiles button small,.custom-minutes small{font-size:11px}.custom-minutes input#med-minutes{font-size:20px}.med-setup-duration{margin-bottom:34px}.med-preparation{padding:20px;border-radius:25px}.med-preparation h2{font-size:21px}.med-preparation strong{font-size:16px}.med-preparation p{font-size:14px}.meditation-active .meditation-main{padding-top:15px}.meditation-active .meditation-dial{margin:clamp(35px,14vh,150px) auto 40px;width:180px}.timer-label{font-size:20px}.meditation-timing .timer-number{font-size:31px;font-weight:300}.meditation-timing p{font-size:12px}.meditation-controls button{font-size:14px}.meditation-active .meditation-note{font-size:11px}.meditation-links{font-size:12px}.mala-page .practice-stage{min-height:580px}.mala-tap{height:355px}.bead-string{bottom:35px}.bead{width:46px;height:46px}.bead-0,.bead-6{width:24px;height:24px}.bead-1,.bead-5{width:35px;height:35px}.bead-3{width:80px;height:80px}.mala-page .actions{gap:6px}.mala-page .actions button{font-size:13px;min-height:44px;padding:8px 11px}.mala-page .caption{font-size:11px}.instruments-page .grid.two{grid-template-columns:1fr;max-width:440px;margin:auto;padding:5px 24px 15px;gap:16px}.instrument-card{padding:18px}.instrument-card .instrument{height:175px}.instrument-card input[type=range]{min-height:35px}.instrument-card .fine{margin:5px 0 0;font-size:12px}.instruments-page>p{font-size:12px}.reading-focus-head{padding:6px;min-height:58px}.reading-focus-head strong{font-size:17px;line-height:1.2}.reading-meta{padding:20px 20px 0}.reading-meta h1{font-size:21px}.reading-place{font-size:11px}.reader-v76 .reader-more{margin:1px 18px}.reader-body{padding:20px 14px 10px}.reader-v76 .verse,.reader-v76 .verse.saved{padding-left:25px;padding-right:25px;margin-bottom:35px}.reader-v76 .verse header button{right:-13px;top:2px}.reader-v76 .verse-lines{padding:0}.reading-bottom button{font-size:12px;min-height:47px;gap:5px}.reading-bottom svg{width:20px;height:20px}.reading-bottom strong{font-size:22px}.room-layout{height:100dvh;min-height:580px}.room-feed{padding:65px 16px calc(12px + env(safe-area-inset-bottom))}.room-back{padding:10px 12px;gap:10px}.room-back a{font-size:11px;min-height:40px;padding:7px 12px}.room-back a.button{font-size:11px}.room-heading h1{font-size:21px}.room-heading p{font-size:12px}.room-tabs{gap:4px;margin-top:10px}.room-tabs button{font-size:11px;padding:6px 9px;min-height:40px}.room-list{max-height:40%;padding:10px 0 3px}.room-list .prayer-card{padding:13px;border-radius:19px;margin-bottom:9px}.prayer-card .body{font-size:15px;line-height:1.45}.prayer-card header strong{font-size:13px}.prayer-card .actions button{min-height:40px}.room-compose .compose-prompt{font-size:12px;padding:9px 12px;min-height:44px}.room-compose .primary{font-size:12px;min-height:44px;padding:9px 13px}.room-compose .fine{font-size:9px}.room-feed>.room-note{font-size:9px}.room-feed>.actions button{min-height:35px;font-size:11px}.room-art>img{object-position:center top}.has-audio[data-room] .room-layout{padding-bottom:76px}body[data-room] .mini-player{bottom:calc(8px + env(safe-area-inset-bottom))}dialog{margin:auto 0 0;max-width:100%;width:100%;max-height:92dvh;border-radius:28px 28px 0 0;padding-bottom:env(safe-area-inset-bottom)}dialog>header{padding:16px 20px;border-bottom:1px solid var(--line)}dialog>header h2{font-size:19px}.dialog-body{padding:20px}.audio-player-sheet{max-height:100dvh;height:100dvh;border-radius:0}.audio-player-sheet .audio-art{aspect-ratio:1.15;margin:-20px -20px 25px;border-radius:0}.audio-player-sheet .form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.audio-player-sheet .form-grid input,.audio-player-sheet .form-grid select{font-size:14px}.audio-player-sheet #full-title{font-size:24px}.audio-player-sheet #full-author{font-size:14px}.reading-settings-sheet .form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.reading-settings-sheet .form-grid select{font-size:14px}.reading-settings-sheet .dialog-body{padding:20px}body.dark .sidebar{background:#252426ef}body.dark .sidebar .nav-item{color:var(--muted)}body.dark .sidebar .nav-item.active{color:var(--gold)}
}
@media(max-width:360px){main{padding-left:13px;padding-right:13px}.topbar{padding-left:13px;padding-right:13px}.topbar #shell-heading{font-size:17px}.home-tools{margin-left:-13px;margin-right:-13px;padding-left:16px;padding-right:16px}.calendar-photo>div{padding:22px 18px 17px}.calendar-photo p{font-size:11px}.calendar-photo strong{font-size:55px}.calendar-photo h1{font-size:19px}.calendar-photo .lunar-label{font-size:14px}.daily-verse blockquote{font-size:15px}.wheel-tool strong{font-size:12px}.wheel-tool>span{min-width:44px}.wheel-center strong{font-size:12px}.wheel-center svg{width:25px;height:25px}.all-practice{font-size:11px}.prayer-gateway h3{font-size:17px}.prayer-gateway p{font-size:11px}.practice-photo-grid{gap:11px}.practice-photo{border-radius:20px;aspect-ratio:1.3}.practice-photo h3{font-size:15px}.practice-photo p{font-size:11px}.duration-tiles{gap:8px}.duration-tiles button strong{font-size:20px}.meditation-main{padding-left:17px;padding-right:17px}.med-preparation{padding:17px}.med-preparation strong{font-size:15px}.med-preparation p{font-size:13px}.profile-hero{margin-left:-13px;margin-right:-13px}.reading-focus-head strong{font-size:16px}.room-feed{padding-left:12px;padding-right:12px}.room-tabs button{font-size:10px;padding:6px 8px}.room-compose .primary{font-size:11px;padding:9px 10px}.journey-stats strong{font-size:17px}.journey-stats span{font-size:12px}.profile-group,.profile-journey{padding:18px}.group-link strong{font-size:15px}.group-link small{font-size:13px}}
@media(prefers-reduced-motion:reduce){.meditation-dial.breathing .timer-face,.mala-tap:active .bead-string{transform:none;transition:none}}
body.reduced-motion .meditation-dial.breathing .timer-face,body.reduced-motion .mala-tap:active .bead-string{transform:none;transition:none}
@media print{.sidebar,.topbar,.reading-focus-head,.reading-bottom,.reader-more,.reader-head-actions,.mini-player,.foot,.toast{display:none!important}body[data-route="read"] main{padding:0}.reader-body,.reader-page{color:#000!important;background:#fff!important}.reader-v76 .verse{break-inside:avoid}.reader-v76 .verse header button{display:none!important}}

/* V76.2.1: focused practice, reading and audio; sacred portraits keep their bounds. */
[hidden]{display:none!important}
:focus-visible{outline:3px solid #b17b25;outline-offset:3px}
.focus-header .icon svg{width:23px;height:23px}
.mala-page button.primary{background:linear-gradient(125deg,#b98a40,#876024);color:#fff}
.prayer-gateway>img,.home-rooms .prayer-gateway>img{object-fit:contain;object-position:center top;min-height:0;max-height:none;background:#eee1c6}
.prayer-gateway>div{background:linear-gradient(transparent,#261b0ce8);padding-top:35px}
.practice-photo.sacred-card{aspect-ratio:1/1.32;display:grid;grid-template-rows:minmax(0,1fr) auto;background:#f2e5c9;color:#3b2c18}
.practice-photo.sacred-card>img{position:static;width:100%;height:100%;min-height:0;object-fit:contain;object-position:center top;z-index:auto}
.practice-photo.sacred-card:before{display:none}
.practice-photo.sacred-card>div{padding:10px;background:var(--surface);color:var(--ink);z-index:1}
.practice-photo.sacred-card h3{color:var(--ink)}
.practice-photo.sacred-card p{color:var(--muted)}
.practice-illustration{position:absolute;inset:0;z-index:-2;display:grid;place-items:center;background:radial-gradient(ellipse at 50% 30%,#ffefce,#bc915a)}
.practice-illustration>svg{width:84%;height:88%;align-self:start}
.practice-photo[href="#mala"] .practice-illustration>svg{height:180%;transform:rotate(25deg) translateY(-20%)}
.profile-cover,.profile-hero .profile-cover{height:auto;aspect-ratio:1.7;background:#172b20;border-radius:22px;overflow:hidden}
.profile-cover>img{object-fit:contain;object-position:center top;filter:brightness(.85)}
.profile-cover>.icon{align-self:start;background:#172b20df;position:absolute;left:12px;top:12px}
.profile-cover>a.icon{left:64px}
.profile-avatar{margin-top:-22px}
/* Room title and navigation have their own row; no text covers a face. */
.room-back{position:relative;inset:auto;display:grid;grid-template-columns:48px minmax(0,1fr) auto;min-height:74px;padding:8px 14px;background:var(--surface);gap:10px}
.room-back>a{max-width:none;min-height:44px;padding:7px 10px;background:var(--green-soft);color:var(--ink);font-size:13px;justify-content:center}
.room-back>a:first-child{font-size:30px;padding:0}
.room-heading{color:var(--ink);text-shadow:none;min-width:0}
.room-heading h1{font-size:21px;margin:0 0 3px}
.room-heading p{font-size:12px;line-height:1.35;margin:0;color:var(--muted)}
.room-layout{display:block;height:calc(100svh - 82px);height:calc(100dvh - 82px);min-height:500px;max-height:1200px;position:relative;overflow:hidden;background:#efe2c5}
.room-art{position:absolute;inset:0;margin:0;z-index:-2;border:0;border-radius:0;background:transparent}
.room-art>img{width:100%;height:100%;aspect-ratio:auto;object-fit:contain;object-position:center top;background:transparent}
.room-layout:after{background:linear-gradient(transparent 50%,#251b12e8 68%,#251b12)}
.room-feed{position:absolute;inset:auto 0 0;height:42%;max-height:520px;max-width:700px;min-height:260px;padding:8px 18px max(12px,env(safe-area-inset-bottom));margin:auto;gap:4px;overflow:auto;overscroll-behavior:contain}
.room-tabs{margin:0;padding:0;flex-shrink:0;border:0;gap:5px}
.room-tabs button{font-size:12px;min-height:44px;padding:7px 10px}
.room-list{margin:0;flex:1;min-height:72px;max-height:none;padding:5px 0;display:block}
.room-list .prayer-card{margin-bottom:8px;padding:12px;background:#20170e99}
.room-compose{background:transparent;border:0;border-radius:0;margin:0;padding:2px 0 0;order:10}
.room-compose .compose-prompt{background:#fff;color:#68583f;font-size:14px}
.room-compose .fine{font-size:11px;margin:3px 0}
.room-feed>.room-note{display:none}
.room-feed>.actions{margin:0;flex-shrink:0}
.room-feed>.actions button{min-height:32px}
.room-feed>.room-notice{margin:0;flex-shrink:0}
.room-list .loading{padding:12px;color:#fff5df}
/* Tràng hạt: a clear counter and a large, uninterrupted touch surface. */
.mala-page{min-height:100svh;min-height:100dvh;padding:0;display:flex;flex-direction:column}
.mala-toolbar{display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 18px;background:var(--surface)}
.mala-toolbar svg{width:24px;height:24px}
.mala-counter{font-size:15px;white-space:nowrap;color:var(--ink)}
.mala-counter strong{font-size:19px;font-weight:550;background:#ffedca;padding:8px 6px 8px 10px;border-radius:9px 0 0 9px;color:#704817}
.mala-counter>span{font-size:13px;background:#ffedca;padding:11px 9px 10px 0;border-radius:0 9px 9px 0;color:#704817}
.mala-toolbar #mala-rounds{font-size:14px!important;white-space:nowrap;color:var(--green);margin:0!important}
.mala-page .practice-stage{display:block;flex:1;min-height:280px;padding:0;background:radial-gradient(#b5aa983f .8px,transparent .8px) 0 0/18px 18px,var(--surface)}
.mala-tap{height:clamp(300px,calc(100svh - 258px),820px);margin:0;touch-action:manipulation;overflow:hidden}
.mala-chain{display:block;height:100%;width:100%;padding-bottom:30px}
.mala-chain>svg{height:100%;width:100%;max-width:250px;overflow:visible}
.mala-tap:active .mala-chain{transform:translateY(10px)}
.mala-hint{font-size:12px;bottom:7px}
.mala-actions{padding:8px 18px max(14px,env(safe-area-inset-bottom));background:var(--surface)}
.mala-actions .actions{justify-content:center;margin-top:8px}
.mala-actions summary{cursor:pointer;min-height:44px;text-align:center;padding:10px;color:var(--muted);font-size:14px}
.mala-page #mala-title{display:block;max-width:none!important;width:100%;font-size:17px;border:1px solid var(--line)!important;margin:8px 0!important}
/* Instruments: direct touch; timing and volume are folded under the gear. */
.instruments-page{min-height:100svh;min-height:100dvh;padding:0 0 20px}
.instruments-page>.grid{display:grid;grid-template-columns:1fr;gap:8px;padding:4px 20px}
.instrument-card{position:relative;background:transparent;padding:8px 0 12px;border-radius:0;border-bottom:1px solid var(--line)}
.instrument-card h2{font-size:16px;color:var(--muted);font-weight:500;margin-bottom:0}
.instrument{height:clamp(160px,28svh,300px);margin:0 auto 6px;width:min(360px,100%);touch-action:manipulation}
.instrument>svg{height:100%;width:100%;overflow:visible;filter:drop-shadow(0 8px 12px #5230130a)}
.instrument:active>svg{transform:scale(.97)}
.instrument-quick{display:flex;justify-content:center;align-items:flex-start;gap:8px;position:relative}
.instrument-quick>[data-auto]{min-height:44px;border:1px solid var(--line);border-radius:24px;font-size:14px;background:var(--bg);color:var(--ink);padding:8px 17px}
.instrument-quick>[data-auto][aria-pressed="true"]{background:#f6e1b9;border-color:#b58536;color:#5e3d0e}
.instrument-quick>details{position:relative}
.instrument-quick summary{list-style:none;cursor:pointer;min-width:44px;min-height:44px;display:grid;place-items:center;border-radius:50%;background:var(--bg)}
.instrument-quick summary::-webkit-details-marker{display:none}
.instrument-quick svg{width:21px;height:21px}
.instrument-options{position:absolute;right:0;top:48px;width:min(270px,calc(100vw - 50px));background:var(--surface);box-shadow:0 10px 35px #24170326;border:1px solid var(--line);border-radius:18px;padding:16px;z-index:10}
.instrument-options label{font-size:14px}
.instrument-card>p{font-size:12px;margin:9px 0 0;color:var(--muted)}
.instruments-page>#stop-instruments{background:transparent;color:var(--muted);border:0;font-size:13px}
/* Meditation: image and breath stay primary, with accessible round controls. */
.meditation-active{padding-bottom:max(24px,env(safe-area-inset-bottom))}
.meditation-active:before{background:linear-gradient(#16151155,#1615110a 35%,#161511bb 73%,#161511c9)}
.meditation-active .meditation-head{padding-top:max(10px,env(safe-area-inset-top))}
.scene-select{align-self:center;display:flex;gap:8px;background:#1d211a99;border:1px solid #ffffff55;border-radius:25px;color:#fff;font-size:13px;min-height:44px}
.scene-select svg{width:18px;height:18px}
.meditation-active .meditation-main{padding:15px 24px;flex:1}
.meditation-dial{width:clamp(180px,35vw,240px);margin:clamp(22px,9svh,100px) auto 30px}
.meditation-active .timer-face{background:#f6e5b8dc;color:#31230f;border:1px solid #fff4d4}
.meditation-active .timer-label{font-size:21px;max-width:180px;color:#31230f;text-shadow:none}
.meditation-timing .timer-number{font-size:46px;font-variant-numeric:tabular-nums}
.meditation-timing p,.meditation-timing .timer-duration{font-size:14px;color:#fff;opacity:1}
.meditation-controls{align-items:center;gap:24px;flex-wrap:nowrap;max-width:none;margin-top:4px}
.meditation-controls button.round-control{width:52px;height:52px;min-height:52px;border-radius:50%;padding:13px;flex-basis:auto;text-decoration:none;background:#1b201b99;color:#fff;border:1px solid #fffb}
.meditation-controls button#timer-pause{width:74px;height:74px;min-height:74px;padding:23px;background:#fff8e6;color:#423015;border:0}
.meditation-controls svg{width:100%;height:100%}
.scene-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.scene-options button{display:flex;flex-direction:column;padding:0;overflow:hidden;background:var(--bg);border:2px solid transparent;border-radius:16px;font-size:13px}
.scene-options img{width:100%;height:110px;object-fit:cover;object-position:center top}
.scene-options span{padding:10px 5px}
.scene-options [aria-pressed="true"]{border-color:#ad7b2c}
.med-exit-actions{display:grid;gap:10px}
/* Reader settings: one sheet with readable switches and four actual background choices. */
.reading-settings-sheet .dialog-body{padding:16px}
.reading-settings-group{background:var(--bg);border:0;border-radius:20px;padding:12px 16px;margin:0 0 14px;min-width:0}
.reading-setting-label{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0;padding:10px 0;font-size:16px}
.reading-setting-label>span{margin-left:auto;color:var(--muted);font-size:14px}
.reading-setting-label input[type="range"]{flex-basis:100%;width:100%;accent-color:#ad7b2c}
.reading-setting-row,.reading-switch-row{display:flex;justify-content:space-between;align-items:center;gap:14px;min-height:56px;padding:10px 0;margin:0;font-size:16px;border-top:1px solid var(--line)}
.reading-settings-group>.reading-switch-row:first-child{border:0}
.reading-setting-row select{width:170px;max-width:55%;background:transparent;border:0;padding:7px 8px;min-height:44px;font-size:15px}
.reading-setting-row input{width:80px;text-align:center;min-height:44px;background:var(--surface)}
.reading-switch-row input[type="checkbox"]{appearance:none;position:relative;width:46px;min-width:46px;height:28px;min-height:28px;margin:0;padding:0;border:0;border-radius:20px;background:#c2bcb1;cursor:pointer}
.reading-switch-row input:before{content:'';position:absolute;width:22px;height:22px;left:3px;top:3px;background:#fff;border-radius:50%;box-shadow:0 1px 3px #0003}
.reading-switch-row input:checked{background:#b38639}
.reading-switch-row input:checked:before{left:21px}
#reading-hit-wood{width:100%;font-size:14px;background:var(--surface);border:0;margin-top:5px}
.reading-backgrounds{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding-top:4px}
.reading-backgrounds legend{padding:12px 0 8px;color:var(--muted);font-size:14px;float:left;width:100%;grid-column:1/-1}
.reading-backgrounds>label{display:flex;position:relative;align-items:center;flex-direction:column;min-width:0;gap:7px;margin:0;cursor:pointer;font-size:12px;text-align:center}
.reading-backgrounds input{position:absolute;width:1px;height:1px;opacity:0;min-height:0}
.background-sample{width:100%;aspect-ratio:1.05;border-radius:14px;border:1px solid #cec7ba;padding:13px 10px;display:flex;flex-direction:column;gap:6px;color:#444;background:#fff}
.background-sample.ivory{background:#fffdf8;color:#422013}.background-sample.gold{background:#f7edce;color:#3b3526}.background-sample.dark{background:#201c17;color:#fff3d9}
.background-sample i{display:block;height:3px;background:currentColor;border-radius:4px;opacity:.65}.background-sample i:first-child{width:60%;height:4px;opacity:1}.background-sample i:last-child{width:75%}
.reading-backgrounds input:checked+.background-sample{outline:2px solid #ad7b2c;outline-offset:2px}
.reading-backgrounds input:focus-visible+.background-sample{outline:3px solid #ad7b2c;outline-offset:3px}
.reading-settings-sheet #font-preview{padding:12px;border-radius:12px;max-height:160px;overflow:auto;text-align:center}
.reading-save{width:100%;position:sticky;bottom:0;min-height:48px}
.reader-v76 .reader-more>summary{font-size:13px;opacity:1;color:var(--reader-page-ink);padding:10px 0}
.reader-v76 .verse{padding:0 18px}.reader-v76 .verse.saved{padding-left:18px}
.reading-bottom{color:var(--reader-page-ink,var(--ink))}
/* Full audio player: transport first, queue and options in separate drawers. */
dialog.audio-player-sheet{width:540px;max-width:calc(100vw - 24px);height:min(900px,calc(100dvh - 32px));max-height:calc(100dvh - 32px);background:#151b17;color:#fff;overflow:hidden;position:fixed;inset:0;margin:auto}
.audio-player-sheet>header{position:absolute;inset:0 0 auto;background:linear-gradient(#101710b8,transparent);border:0;color:#fff;z-index:5;padding:12px 18px}
.audio-player-sheet>header h2{font-size:17px;font-weight:500}.audio-player-sheet>header button{color:#fff;font-size:30px;background:#18221a99;border:0}
.audio-player-sheet>.dialog-body{padding:0;height:100%;position:relative}
.audio-immersive{position:relative;isolation:isolate;min-height:100%;display:flex;align-items:end}
.audio-immersive>#full-art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center top;z-index:-2}
.audio-immersive:before{content:'';position:absolute;inset:0;background:linear-gradient(#13201622,#13201600 20%,#111911e8 59%,#111911);z-index:-1}
.audio-main{width:100%;padding:100px 24px max(24px,env(safe-area-inset-bottom));text-align:center;overflow-wrap:anywhere}
.audio-kicker{font-size:11px;letter-spacing:2px;color:#ecd6a8;margin:0 0 14px}
.audio-player-sheet #full-title{font-size:26px;line-height:1.3;color:#fff;margin:0 0 12px}
.audio-player-sheet #full-author{font-size:14px;color:#e0e2d7;margin:0 0 28px}
.audio-timeline input{width:100%;min-height:30px;padding:0;accent-color:#e7bf73;background:transparent;border:0}
.audio-player-sheet #full-time{color:#d8ddcf;margin:0 0 18px;font-size:12px;font-variant-numeric:tabular-nums}
.audio-transport{display:flex;justify-content:center;align-items:center;gap:clamp(8px,3vw,20px)}
.audio-transport button.icon{color:#fff;min-width:44px;min-height:48px;padding:9px;font-size:17px;background:transparent;border:0}
.audio-transport svg{width:24px;height:24px}
.audio-transport #full-toggle{min-width:74px;width:74px;height:74px;border-radius:50%;background:#f7e9cd;color:#3b2e17;padding:23px}
.audio-transport #full-toggle svg{width:28px;height:28px}
.audio-bottom-tools{display:flex;justify-content:space-between;gap:12px;margin-top:26px}
.audio-bottom-tools button{color:#f0eddf;background:transparent;border:0;font-size:13px;display:flex;gap:8px;padding:8px}
.audio-bottom-tools svg{width:20px;height:20px}
.audio-main #full-repeat-status{color:#c4c7bb;font-size:12px;margin:10px 0 0}
.audio-drawer{position:absolute;inset:auto 0 0;max-height:76%;background:var(--surface);color:var(--ink);border-radius:24px 24px 0 0;padding:12px 20px max(22px,env(safe-area-inset-bottom));overflow:auto;overscroll-behavior:contain;z-index:6;box-shadow:0 -20px 60px #0004}
.audio-drawer-head{display:flex;align-items:center;justify-content:space-between;gap:12px;position:sticky;top:-12px;background:var(--surface);z-index:1;padding:6px 0 12px}
.audio-drawer-head h3{margin:0;font-size:18px}.audio-drawer-head button{font-size:25px;color:var(--ink)}
.audio-queue-list{display:grid;gap:4px}.audio-queue-list button{display:flex;text-align:left;gap:16px;justify-content:space-between;padding:14px 10px;border:0;background:transparent;min-width:0;font-size:16px;color:var(--ink)}
.audio-queue-list button>span{min-width:0;flex:1}.audio-queue-list small{display:block;color:var(--muted);font-size:12px;line-height:1.5;margin-top:5px}
.audio-queue-list svg{width:20px;height:20px;flex-shrink:0}.audio-queue-list button[aria-pressed="true"]{background:var(--green-soft);color:var(--green)}
.audio-player-sheet .audio-drawer .form-grid{margin-top:0;gap:14px}.audio-player-sheet .audio-drawer label{font-size:15px}
.audio-player-sheet .audio-drawer .fine{color:var(--muted);font-size:12px}
.chant-tracks{display:grid;gap:6px;margin:18px 0}.chant-tracks>button{display:flex;gap:14px;text-align:left;background:var(--surface);border:0;border-radius:16px;padding:16px;min-width:0}
.chant-tracks img{object-fit:cover;width:52px;height:52px;border-radius:10px;flex-shrink:0}.chant-tracks>button>span{flex:1;min-width:0}.chant-tracks strong{display:block;font-size:16px;font-weight:500}.chant-tracks small{display:block;font-size:12px;color:var(--muted);margin-top:5px}.chant-tracks svg{width:22px;height:22px;flex-shrink:0;color:var(--green)}
.chant-settings summary{min-height:48px;padding:12px;cursor:pointer;font-size:14px;color:var(--muted)}
@media(min-width:801px){.instruments-page>.grid{grid-template-columns:1fr 1fr;gap:20px;padding-top:60px}.instrument{height:310px}.mala-chain>svg{max-width:290px}.room-back{min-height:82px}.room-feed{max-width:620px}.profile-cover,.profile-hero .profile-cover{aspect-ratio:2;max-height:none}.profile-cover>img{object-position:center top}.profile-cover{margin-bottom:0}}
@media(max-width:800px){
 .profile-cover,.profile-hero .profile-cover{aspect-ratio:1.7;border-radius:0 0 24px 24px;height:auto}.profile-avatar{margin-top:-22px}
 .room-back{min-height:76px;padding:6px 10px;grid-template-columns:40px minmax(0,1fr) 82px;gap:6px}.room-back>a.button{font-size:11px;line-height:1.3;white-space:normal;border-radius:15px}.room-heading h1{font-size:19px}.room-heading p{font-size:11px}.room-layout{height:calc(100dvh - 76px)}
 .room-feed{padding:8px 12px max(10px,env(safe-area-inset-bottom));min-height:280px}.room-tabs{justify-content:center;flex-wrap:nowrap}.room-tabs button{min-height:40px;font-size:11px;padding:6px 9px}.room-compose .primary{font-size:13px;padding:9px 12px}.room-compose .compose-prompt{font-size:13px}
 .practice-photo.sacred-card{aspect-ratio:1/1.32}.practice-photo.sacred-card h3{font-size:16px}.practice-photo.sacred-card p{font-size:12px}
 .reader-body{padding:18px 14px 10px}.reader-v76 .verse{padding:0 18px}.reader-v76 .verse.saved{padding-left:18px}
 .reading-settings-sheet{max-height:90dvh}.reading-settings-sheet .dialog-body{padding:14px}.reading-settings-group{padding:8px 14px}.reading-backgrounds{gap:8px}.reading-setting-row,.reading-switch-row{font-size:15px}
 dialog.audio-player-sheet{inset:0;width:100%;max-width:none;height:100svh;height:100dvh;max-height:none;margin:0;border-radius:0}.audio-player-sheet>header{padding-top:max(12px,env(safe-area-inset-top))}.audio-main{padding-bottom:max(24px,env(safe-area-inset-bottom))}
 .scene-options{grid-template-columns:repeat(3,minmax(0,1fr))}.scene-options img{height:90px}
}
@media(max-height:650px) and (orientation:landscape){
 .room-layout{min-height:340px}.room-art{right:50%}.room-feed{left:50%;height:100%;max-height:none;min-height:0}.room-layout:after{background:linear-gradient(90deg,transparent 48%,#251b12 50%)}
 .meditation-active .meditation-main{display:grid;grid-template-columns:1fr 1fr;gap:6px 30px;padding-top:0;max-width:760px}.meditation-dial{grid-row:1/3;width:160px;margin:10px auto}.meditation-timing{margin:0}.meditation-controls{gap:16px;margin:0}.scene-select{position:absolute;right:70px;top:8px}.meditation-active .meditation-head h1{visibility:hidden}
 .audio-main{padding:80px 24px 15px;max-width:620px;margin:auto}.audio-player-sheet #full-author{margin-bottom:8px}.audio-player-sheet #full-title{font-size:22px}.audio-kicker{display:none}.audio-bottom-tools{margin-top:8px}.audio-main #full-repeat-status{display:none}
}
@media(max-width:360px){.mala-toolbar{padding:8px 10px;gap:6px}.mala-counter{font-size:13px}.mala-toolbar #mala-rounds{font-size:12px!important}.audio-main{padding-left:16px;padding-right:16px}.audio-transport{gap:7px}.audio-player-sheet #full-title{font-size:23px}.background-sample{padding:12px 7px}.reading-backgrounds{gap:7px}.reading-backgrounds>label{font-size:11px}.scene-options{gap:7px}}
@media(prefers-reduced-motion:reduce){.mala-tap:active .mala-chain,.instrument:active>svg{transform:none}}
body.reduced-motion .mala-tap:active .mala-chain,body.reduced-motion .instrument:active>svg{transform:none}

/* Self-hosted original Google Fonts. Keep licenses/ and font-manifest.json with redistribution. */

@font-face {
  font-family: 'Lora';
  src: url('/tu-tap/fonts/lora.woff2') format('woff2');
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
}

@font-face {
  font-family: 'Noto Serif';
  src: url('/tu-tap/fonts/noto-serif.woff2') format('woff2');
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
}

@font-face {
  font-family: 'Be Vietnam Pro';
  src: url('/tu-tap/fonts/be-vietnam-pro-regular.woff2') format('woff2');
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: 'Be Vietnam Pro';
  src: url('/tu-tap/fonts/be-vietnam-pro-bold.woff2') format('woff2');
  font-style: normal;
  font-weight: 700;
  font-display: swap;
}

@font-face {
  font-family: 'Nunito Sans';
  src: url('/tu-tap/fonts/nunito-sans.woff2') format('woff2');
  font-style: normal;
  font-weight: 200 1000;
  font-display: swap;
}

@font-face {
  font-family: 'Lexend';
  src: url('/tu-tap/fonts/lexend.woff2') format('woff2');
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
}

@font-face {
  font-family: 'EB Garamond';
  src: url('/tu-tap/fonts/eb-garamond.woff2') format('woff2');
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
}

/* V77 — audio, reading and practice refinements; loaded after existing themes. */
.audio-catalog,.storage-page{max-width:840px;margin:auto}
.audio-catalog .focus-header,.storage-page .focus-header{background:transparent;margin-bottom:14px}
.audio-catalog h1,.storage-page h1{font-size:21px}
.audio-tabs{flex-wrap:nowrap;overflow-x:auto;gap:6px;margin-bottom:18px}
.audio-tabs a{white-space:nowrap;font-size:14px;padding:9px 12px;min-height:44px}
.audio-filter-row{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:12px 0}
.audio-filter-row label{margin:0;font-size:14px}.audio-filter-row button{font-size:14px}
.audio-track-row{padding:14px 8px;gap:12px;background:transparent;border:0;border-bottom:1px solid var(--line);border-radius:0;align-items:center}
.audio-track-row .audio-list-cover{width:52px;height:58px;object-fit:cover;object-position:center;border-radius:9px;flex-shrink:0}
.audio-track-row h3{font:600 16px/1.4 VNS,Library,sans-serif;margin:0 0 4px;overflow-wrap:anywhere}
.audio-track-row p,.audio-track-row small{font-size:13px;line-height:1.5;color:var(--muted);margin:0}
.audio-track-row .actions{flex-shrink:0;gap:2px;margin:0;display:grid;grid-template-columns:44px 44px}
.audio-track-row [data-fav-id]{grid-column:1/-1;justify-self:end;min-height:36px;height:36px}
.audio-track-row .icon{width:44px;min-height:44px;background:transparent;border:0;color:var(--ink);font-size:21px}
.audio-track-row .icon svg{width:21px;height:21px}.audio-track-row .downloaded{color:#815b1b;background:#f3e5c5;border-radius:50%}
.audio-track-row.is-playing{background:var(--green-soft)}.audio-catalog-note{font-size:14px;color:var(--muted);margin:20px 0}
.audio-catalog #library-filter{font-size:16px;min-height:46px}
.chant-tracks>button{align-items:center;padding:15px 10px;border-radius:0;border-bottom:1px solid var(--line);gap:12px}
.chant-tracks>button>small{white-space:nowrap}.chant-tracks>button[aria-pressed="true"]{background:var(--green-soft)}
.chant-tracks img{object-position:center}.chant-page h1{font-size:24px}.chant-page .muted{font-size:15px}.chant-tracks small{font-size:13px}
.chant-settings{border-top:1px solid var(--line);margin-top:20px}
dialog.audio-player-sheet{background:#1c150c;color:#fff;overscroll-behavior:contain}
.audio-player-sheet>header{display:none}
.audio-player-sheet>.dialog-body{overflow:hidden;height:100%}
.audio-immersive{height:100%;min-height:0;overflow-y:auto;overscroll-behavior:contain;align-items:flex-end}
.audio-immersive>#full-art{position:absolute;object-position:center 44%;z-index:-2}
.audio-immersive:before{position:absolute;background:linear-gradient(#18110988,transparent 22%,#16100628 37%,#161006e8 65%,#161006);z-index:-1}
.audio-top{position:absolute;left:0;right:0;top:0;padding:max(12px,env(safe-area-inset-top)) 16px 12px;display:grid;grid-template-columns:44px 1fr 44px;align-items:center;gap:10px;z-index:3;background:linear-gradient(#1c150ca6,transparent)}
.audio-top span{font-size:15px;text-align:center;color:#fff4dc}.audio-top button.icon{background:#1c150c55;border:0;color:#fff;font-size:29px;min-height:44px;width:44px}
.audio-main{position:relative;padding:100px 24px max(24px,env(safe-area-inset-bottom));width:100%;margin:auto auto 0;max-width:560px;text-align:center}
.audio-player-sheet #full-title{font-size:clamp(21px,5.2vw,27px);font-weight:650;line-height:1.3;margin:0 0 8px;color:#fff}
.audio-player-sheet #full-author{font-size:14px;line-height:1.5;margin:0 0 14px;color:#f5e6c8}
.audio-time-labels{display:flex;justify-content:space-between;gap:12px;font-size:13px;color:#f5e6c8;font-variant-numeric:tabular-nums}
.audio-player-sheet #full-time{font-size:13px;color:inherit;margin:0}
.audio-timeline input{min-height:36px;touch-action:pan-x}
.audio-transport{justify-content:space-between;gap:8px;margin-top:6px}.audio-transport #full-toggle{width:62px;min-width:62px;height:62px;padding:17px}
.audio-transport button[aria-pressed="true"]{color:#ffe3a3;background:#fff2cf24;border-radius:50%}
.audio-transport #shuffle-quick,.audio-transport #repeat-quick{font-size:25px}
.audio-seek-tools{display:flex;justify-content:space-between;align-items:center;gap:8px;margin:6px 0}
.audio-seek-tools button{background:transparent;border:0;color:#f9e9ca;min-height:44px;font-size:13px;padding:8px}
.audio-main #full-repeat-status{display:block;font-size:12px;line-height:1.3;margin:0;color:#edddbb}
.audio-main #meditation-choice{color:#f9edda;font-size:14px;justify-content:center;min-height:40px;margin:3px 0;gap:8px}
.audio-main input[type="checkbox"]{accent-color:#d7b672;width:20px;height:20px}
.audio-bottom-tools{margin-top:8px;gap:12px}.audio-bottom-tools button{font-size:14px;min-height:44px;background:#241a1166;border:1px solid #e7d8b633;border-radius:22px;padding:9px 13px}
.audio-player-sheet #full-error{color:#fff0bf;background:#3e2914e6;padding:8px;border-radius:8px;font-size:14px;line-height:1.5;margin:4px 0}
.sleep-badge{font-size:13px;color:#ffe0a2;margin:0 0 10px}.sleep-badge:empty{display:none}
.audio-drawer{max-height:78%;background:var(--surface);border-top:1px solid var(--line);padding-top:12px}
.audio-drawer[hidden]{display:none!important}.audio-drawer .fine{font-size:13px!important}.audio-drawer label{min-width:0}
.audio-drawer .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.audio-drawer select{font-size:16px;max-width:100%}
.audio-queue-list strong{font-weight:550;line-height:1.4}.audio-queue-list small{font-size:13px}.audio-queue-list button{min-height:64px;align-items:center}
.audio-player-sheet #audio-download{min-height:44px;width:100%;margin:12px 0;font-size:15px}
.storage-page .card{margin:18px 0}.storage-summary>strong{font-size:34px;font-weight:550;color:var(--green)}
.storage-page .card h2{font-size:20px}.storage-page .card p,.storage-page .fine{font-size:14px}.storage-row{padding:14px 0;border-bottom:1px solid var(--line)}
.storage-row h3{font-size:16px;margin:0 0 5px}.storage-row p{margin:0}.storage-page #clear-downloads{width:100%;margin:18px 0}
.storage-page summary{cursor:pointer;min-height:44px;font-size:17px;font-weight:550}.storage-page small{font-size:13px;line-height:1.5}
.mala-real-chain{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;position:relative;isolation:isolate}
.mala-real-chain:before{content:'';position:absolute;top:0;bottom:0;left:50%;width:2px;background:#85563455;z-index:-1}
.mala-real-chain img{display:block;width:calc(145px * var(--bead-scale));height:calc(145px * var(--bead-scale));max-width:none;flex-shrink:0;transform:rotate(var(--bead-turn));object-fit:contain}
.mala-tap{height:clamp(350px,calc(100svh - 245px),900px)}.mala-chain{padding:0;overflow:hidden}.mala-tap{touch-action:none}
.mala-hint{font-size:14px;bottom:10px;background:var(--surface);border-radius:20px;padding:6px 12px}
.mala-page .practice-stage{background:radial-gradient(#c9b58d36 .65px,transparent .65px) 0 0/14px 14px,var(--surface);overflow:hidden}
.mala-tap.bead-step .mala-chain{animation:bead-step .18s ease-out}@keyframes bead-step{from{transform:translateY(-14px)}to{transform:translateY(0)}}
.instrument-real-art{display:block;width:100%;height:100%;object-fit:contain;margin:auto;filter:drop-shadow(0 8px 10px #66441d20)}
.instrument-real-art.bowl-art{transform:scale(1.13)}.instrument:active .instrument-real-art{filter:drop-shadow(0 0 15px #d5aa5580)}
.instrument{overflow:visible}.instrument-card{overflow:visible}.instrument-quick{display:grid;grid-template-columns:minmax(0,1fr) 44px 44px;align-items:center}
.instrument-quick details[open]{grid-column:1/-1}.instrument-quick details[open]>summary{justify-self:end;margin-left:auto;width:44px}
.instrument-options{position:static;width:100%;max-width:none;box-shadow:none;margin:6px 0 8px;padding:14px;border-radius:14px}
.instrument-options label,.instrument-card .fine{font-size:14px}.instrument-options input{font-size:16px}
.practice-illustration .instrument-real-art{max-height:220px}.practice-illustration .mala-real-chain{transform:rotate(28deg);height:210px;overflow:hidden}
.practice-illustration .mala-real-chain img{width:calc(75px * var(--bead-scale));height:calc(75px * var(--bead-scale))}
.reading-settings-tabs{display:flex;gap:8px;margin:0 0 12px}.reading-settings-tabs button{flex:1;min-height:44px;font-size:15px;border-radius:12px}
.reading-settings-tabs button[aria-selected="true"]{background:var(--green-soft);color:var(--green);border-color:var(--gold)}
.reading-settings-sheet .reading-settings-group{padding:10px 14px;margin-bottom:12px}.reading-settings-sheet .reading-settings-group[hidden]{display:none}
.reading-settings-sheet .reading-setting-label{padding:6px 0}.reading-settings-sheet .reading-setting-row{min-height:50px;padding:6px 0}
.reading-settings-sheet .reading-setting-row select{font-size:16px;max-width:60%;width:200px}
.reading-settings-sheet #font-preview{font-size:22px;line-height:1.65;max-height:100px;margin:10px 0;padding:10px}
.reading-settings-sheet .reading-save{bottom:0;box-shadow:0 -8px 14px var(--surface);font-size:16px}
.room-compose .fine{font-size:13px}.room-tabs button{font-size:13px!important;min-height:44px}.reading-place{font-size:14px!important}
@media(max-width:800px){
 body[data-route="library"] main{padding:12px 16px calc(80px + env(safe-area-inset-bottom))}
 .audio-catalog h1,.storage-page h1{font-size:19px}.audio-track-row{padding:12px 0;gap:10px}
 .audio-track-row h3{font-size:15px}.audio-track-row .audio-list-cover{width:44px;height:50px}.audio-track-row .actions{grid-template-columns:40px 40px}.audio-track-row .icon{width:40px}
 dialog.audio-player-sheet{width:100%;max-width:100%;height:100svh;height:100dvh;max-height:100dvh;margin:0;border-radius:0;inset:0;border:0}
 .audio-immersive>#full-art,.audio-immersive:before{position:absolute}
 .audio-main{padding:90px 22px max(18px,env(safe-area-inset-bottom))}
 .reading-settings-sheet .dialog-body{padding:14px}.reading-settings-sheet{max-height:90dvh}
 .instrument{height:220px}.instrument-card{padding:6px 16px!important}.instruments-page>.grid{gap:12px}
 .mala-real-chain img{width:calc(132px * var(--bead-scale));height:calc(132px * var(--bead-scale))}
}
@media(max-height:650px){
 .audio-main{padding-top:80px;padding-bottom:max(12px,env(safe-area-inset-bottom))}
 .audio-player-sheet #full-title{font-size:21px}.audio-player-sheet #full-author{margin-bottom:4px;font-size:13px}
 .audio-bottom-tools{margin-top:2px}.audio-transport #full-toggle{height:54px;width:54px;min-width:54px;padding:13px}
 .audio-main #meditation-choice{margin:0;min-height:32px}.audio-seek-tools{margin:0}.audio-seek-tools button{min-height:36px}
}
@media(max-width:360px){.audio-track-row .actions{grid-template-columns:40px}.audio-track-row h3{font-size:15px}.audio-filter-row{align-items:flex-start}.audio-filter-row button{max-width:130px}.audio-main{padding-left:15px;padding-right:15px}.audio-drawer{padding-left:14px;padding-right:14px}}
@media(prefers-reduced-motion:reduce){.mala-tap.bead-step .mala-chain{animation:none}.mala-tap:active .mala-chain{transform:none}}
body.reduced-motion .mala-tap.bead-step .mala-chain{animation:none}

.profile-cover,.profile-hero .profile-cover{background:#f3e8d0}
.profile-overview .profile-cover>img{object-fit:contain}

/* Three player layouts; scoped to audio so scripture/prayer layouts stay intact. */
.audio-player-sheet [hidden]{display:none!important}
.audio-player-sheet .audio-top{background:linear-gradient(#140e1480,transparent);padding:12px 16px; padding-top:max(12px,env(safe-area-inset-top))}
.audio-player-sheet .audio-top button.icon{background:transparent;border:0;border-radius:50%;color:#fff}
.audio-top-center{display:flex;justify-content:center}
.audio-top-center svg{width:25px;height:25px}
.audio-player-sheet .audio-immersive:before{background:linear-gradient(#0002,transparent 32%,#0002 48%,#0009 75%,#000c)}
.audio-player-sheet .audio-immersive>#full-art{object-position:center 40%}
.audio-player-sheet .audio-main{padding:95px 28px max(30px,env(safe-area-inset-bottom));margin:auto auto 0;max-width:550px}
.audio-player-sheet #full-title{font:700 clamp(22px,5.5vw,30px)/1.3 VNS,Library,sans-serif;overflow-wrap:anywhere;text-wrap:balance;margin:0 0 12px;text-shadow:0 2px 14px #0008}
.audio-player-sheet #full-author{font-size:15px;line-height:1.5;margin:0 0 20px;color:#f5f3ee}
.audio-player-sheet .audio-timeline{margin:25px 0 9px}
.audio-player-sheet .audio-time-labels{font-size:13px;color:#fff;font-variant-numeric:tabular-nums}
.audio-player-sheet #full-seek{padding:0;cursor:pointer;width:100%;accent-color:white;background:transparent;border:0}
.audio-player-sheet .audio-transport{display:grid;align-items:center;justify-items:center;gap:5px;margin:15px 0 20px}
.audio-player-sheet .audio-transport{grid-template-columns:repeat(5,minmax(0,1fr))}
.audio-player-sheet #full-info,.audio-player-sheet #shuffle-quick,.audio-player-sheet #music-download{grid-column:1}
.audio-player-sheet #full-previous,.audio-player-sheet #full-back{grid-column:2}
.audio-player-sheet #full-toggle{grid-column:3}
.audio-player-sheet #full-next,.audio-player-sheet #full-track{grid-column:4}
.audio-player-sheet #repeat-quick{grid-column:5}
.audio-player-sheet .audio-transport>button{grid-row:1}
.audio-player-sheet[data-audio-mode="chant"] .audio-transport{grid-template-columns:repeat(5,minmax(0,1fr))}
.audio-player-sheet .audio-transport button.icon{width:48px;min-width:44px;min-height:48px;padding:10px;color:#fff;position:relative}
.audio-player-sheet .audio-transport svg{width:28px;height:28px}
.audio-player-sheet .audio-transport #full-toggle{width:64px;min-width:64px;height:64px;min-height:64px;padding:19px;background:#fff;color:#876326;border-radius:50%}
.audio-player-sheet .audio-transport #full-toggle svg{width:26px;height:26px}
.audio-player-sheet .audio-transport button[aria-pressed="true"]{color:#e9c06b;background:transparent}
.audio-player-sheet .repeat-one{position:absolute;top:16px;left:20px;font:bold 10px/1 system-ui;color:inherit}
.audio-player-sheet .audio-bottom-tools{display:flex;justify-content:flex-end;align-items:center;gap:10px;margin:0;min-height:46px}
.audio-player-sheet[data-audio-mode="audio"] .audio-bottom-tools{display:none}
.audio-player-sheet[data-audio-mode="audio"] .audio-main{padding-bottom:max(46px,env(safe-area-inset-bottom))}
.audio-player-sheet .audio-bottom-tools #meditation-choice{margin:0 auto 0 0;justify-content:flex-start;font-size:13px;line-height:1.35;gap:7px;min-height:44px;padding:7px 10px;border:1px solid #ffffff55;border-radius:28px;background:#0003;color:white;cursor:pointer}
.audio-player-sheet .audio-bottom-tools button{flex-shrink:0;font-size:14px;line-height:1.3;min-height:44px;padding:8px 12px;border-color:#ffffff55;background:#0003;color:white}
.audio-player-sheet .audio-bottom-tools input[type="checkbox"]{border-radius:50%;width:22px;height:22px;flex-shrink:0;margin:0;appearance:none;-webkit-appearance:none;border:1.5px solid #ffffffbb;background:transparent}
.audio-player-sheet .audio-bottom-tools input[type="checkbox"]:checked{background:#d3a852;box-shadow:inset 0 0 0 4px #211a11}
.audio-player-sheet .audio-bottom-tools svg{width:22px;height:22px}
.audio-player-sheet #audio-queue{background:#211e19f5;color:#fff;border-color:#ffffff20;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}
.audio-player-sheet #audio-queue .audio-drawer-head{background:#211e19;color:#fff}
.audio-player-sheet #audio-queue h3,.audio-player-sheet #audio-queue .icon{color:#fff}
.audio-player-sheet .audio-queue-list button{padding:14px 0;min-height:64px;border-bottom:1px solid #ffffff24;background:transparent;color:#fff;border-radius:0}
.audio-player-sheet .audio-queue-list button small{color:#e0d8ca}
.audio-player-sheet .audio-queue-list button[aria-pressed="true"]{color:#f0c36f;background:transparent}
.audio-player-sheet .audio-queue-list button[aria-pressed="true"] small{color:#f0c36f}
.audio-player-sheet .audio-secondary-transport,.audio-player-sheet .audio-option-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:12px 0}
.audio-player-sheet .audio-secondary-transport button,.audio-player-sheet .audio-option-links button{font-size:14px;min-height:44px;padding:9px}
.audio-player-sheet .audio-drawer button svg{width:20px;height:20px;vertical-align:middle}
.audio-player-sheet .audio-drawer a{overflow-wrap:anywhere}
.audio-player-sheet #full-repeat-status{color:var(--muted);font-size:13px}
.audio-player-sheet button:focus-visible,.audio-player-sheet input:focus-visible{outline:3px solid #d6a746;outline-offset:3px}
.audio-filter-tools{margin:12px 0 8px;border-bottom:1px solid var(--line)}
.audio-filter-tools>summary{cursor:pointer;min-height:44px;padding:10px 0;font-size:14px;color:var(--muted)}
.audio-catalog .audio-track-row{padding:15px 0;gap:12px}
.audio-catalog .audio-track-row .audio-list-cover{width:56px;height:64px;border-radius:9px}
.audio-catalog .audio-track-row .actions{display:flex;flex-direction:row;gap:4px;align-items:center}
.audio-catalog .audio-title-link{min-height:0;display:block;background:transparent;border:0;border-radius:0;padding:0;margin:0;font:inherit;text-align:left;color:inherit;line-height:inherit}
.audio-catalog .audio-title-link:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.audio-catalog .audio-track-row p{font-size:13px;line-height:1.5;margin:5px 0 0}
.audio-catalog .audio-track-row [data-play]{width:44px;height:44px;min-height:44px;border-radius:50%;background:var(--surface);border:1px solid var(--line)}
.audio-catalog .audio-track-row [data-download]{min-width:44px;width:44px;height:44px}
.audio-catalog .audio-track-row.is-playing{background:#d8b96a18}
.chant-page{max-width:740px;margin:auto}
.chant-page .chant-tracks{gap:0;margin-top:24px}
.chant-page .chant-tracks>button{background:transparent;border-radius:0;min-height:64px;padding:17px 6px;gap:18px}
.chant-page .chant-tracks strong{font-size:16px;line-height:1.5;font-weight:500;overflow-wrap:anywhere}
.chant-page .chant-tracks>button[aria-pressed="true"]{color:#88621e;background:#d8b96a18}
.publisher-player{width:min(760px,calc(100vw - 24px));max-width:760px}
.publisher-player-slot iframe{display:block;width:100%;height:auto;aspect-ratio:16/9;min-height:200px;border:0;border-radius:12px;background:#15120e}
.audio-online-heading{margin:24px 0 8px;font-size:18px}
.audio-publisher-row .grow{min-width:0}.audio-publisher-row h3{overflow-wrap:anywhere}
.media-practice-link{margin:16px 0}.media-practice-link button{min-height:44px}
@media(max-width:360px){
 .audio-player-sheet .audio-main{padding-left:16px;padding-right:16px}
 .audio-player-sheet .audio-bottom-tools{gap:6px}
 .audio-player-sheet .audio-bottom-tools #meditation-choice{font-size:12px;padding:7px 8px}
 .audio-player-sheet .audio-bottom-tools button{font-size:13px;padding:7px 9px}
 .audio-catalog .audio-track-row{gap:8px}.audio-catalog .audio-track-row .audio-list-cover{width:42px;height:52px}
 .audio-catalog .audio-track-row .actions{gap:0}
}
@media(max-height:580px) and (orientation:landscape){
 .audio-player-sheet .audio-main{padding-top:80px;padding-bottom:max(15px,env(safe-area-inset-bottom));max-width:650px}
 .audio-player-sheet #full-title{font-size:22px}.audio-player-sheet .audio-timeline{margin:12px 0 0}
 .audio-player-sheet .audio-transport{margin:5px 0 10px}.audio-player-sheet .audio-transport #full-toggle{height:52px;min-height:52px;min-width:52px;width:52px;padding:13px}
}

/* Phase 5 — scoped practice layouts. No library/reader/player overrides. */
.phase5-instruments{max-width:820px;background:var(--surface);display:flex;flex-direction:column;overflow:hidden}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0!important;margin:-1px!important;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.phase5-instruments>.grid{width:100%;flex:1;align-content:start;background:radial-gradient(#c9b58d26 .6px,transparent .6px) 0 0/12px 12px}
.phase5-instruments .instrument-card{border:0!important;box-shadow:none!important;background:transparent!important;padding:0 14px!important;overflow:visible;min-width:0}
.phase5-instruments .instrument{display:grid;place-items:center;position:relative;isolation:isolate;height:clamp(150px,24dvh,245px);width:100%;margin:0 auto;overflow:visible;border:0;background:transparent;touch-action:manipulation;-webkit-tap-highlight-color:transparent}
.phase5-instruments .instrument-real-art{position:relative;z-index:2;width:min(72%,240px);height:100%;max-height:100%;object-fit:contain;pointer-events:none}
.phase5-instruments .instrument-quick{display:flex;align-items:center;justify-content:center;gap:0;margin:0 auto;width:max-content;max-width:100%;background:var(--surface);border:1px solid var(--line);border-radius:24px;overflow:hidden}
.phase5-instruments .instrument-quick button{background:transparent;border:0;min-height:44px;font-size:14px;padding:8px 12px;display:flex;align-items:center;gap:6px;border-radius:0;color:var(--ink)}
.phase5-instruments .instrument-quick button+button{border-left:1px solid var(--line)}
.phase5-instruments .instrument-quick button[aria-pressed=true]{background:#f4dfad;color:#513707}
.phase5-instruments .instrument-quick svg{width:15px;height:15px}
.phase5-instruments .instrument-state{text-align:center;min-height:20px;line-height:1.5;margin:5px 0 10px;font-size:12px}
.sound-ripples{position:absolute;inset:12% 17%;pointer-events:none;z-index:0}
.sound-ripples i{position:absolute;inset:0;border:1.5px solid #c79b44;border-radius:50%;opacity:0;animation:sound-expand 1.3s ease-out var(--delay) forwards}
@keyframes sound-expand{0%{transform:scale(.45);opacity:.8}100%{transform:scale(1.7);opacity:0}}
.instrument.is-striking .instrument-real-art{animation:instrument-touch .22s ease-out}
@keyframes instrument-touch{0%{transform:scale(.97) rotate(-1deg)}65%{transform:scale(1.02) rotate(.5deg)}100%{transform:none}}
.instrument-footer{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:7px;padding:8px 18px max(16px,env(safe-area-inset-bottom));font-size:12px;color:var(--muted)}
.instrument-footer p{flex:1 1 100%;text-align:center;margin:0}
.instrument-footer button{border:0;background:transparent;display:flex;align-items:center;gap:6px;font-size:13px;min-height:44px}
.instrument-footer svg{width:18px;height:18px}
.instrument-setting-list{display:grid;gap:12px}.instrument-setting-list>label{display:block}.instrument-setting-list input[type=range]{width:100%}.instrument-setting-list output{float:right;color:var(--muted)}
.interval-presets{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:18px 0}
.mala-page .practice-stage{min-height:0;overflow:hidden}
.mala-page .mala-tap{height:clamp(320px,calc(100dvh - 235px),900px);width:100%;touch-action:none;user-select:none;-webkit-user-select:none}
.mala-page .mala-real-chain{gap:clamp(6px,1.5dvh,15px);justify-content:center;--bead-base:clamp(56px,8.8dvh,92px)}
.mala-page .mala-real-chain img{width:calc(var(--bead-base)*var(--bead-scale));height:calc(var(--bead-base)*var(--bead-scale));pointer-events:none}
.mala-page .mala-hint{font-size:12px;bottom:6px}.mala-page .mala-actions{padding:10px 16px max(18px,env(safe-area-inset-bottom));text-align:center}.mala-page .mala-actions>.fine{margin:0 0 8px}.mala-page .mala-actions .actions{justify-content:center}
.plan-return{display:block;font-size:14px;margin:0 0 8px;color:var(--green)}
.meditation-focus .med-setup-duration{margin-bottom:25px}.meditation-focus .med-preparation{background:transparent;padding:0;border:0}.meditation-focus .med-preparation h2{font-size:20px}.meditation-focus .med-preparation ol{padding-left:0}.meditation-focus .med-preparation li{margin:0 0 14px}.meditation-focus .med-preparation p{font-size:14px;line-height:1.5}
.meditation-active{height:100dvh;min-height:620px;padding-bottom:0!important;position:relative;overflow:hidden}
.meditation-active .meditation-head{position:absolute;inset:0 0 auto;z-index:4;max-width:none}.meditation-active .meditation-head h1{visibility:hidden}.meditation-active .meditation-head #med-settings{display:none}
.meditation-active .scene-select{position:absolute;top:max(14px,env(safe-area-inset-top));right:18px;z-index:5;max-width:180px;min-height:40px;font-size:13px;border:0;background:#fff9;color:#493716}
.meditation-active .meditation-main{padding:0 20px;display:flex;justify-content:flex-start;height:100%;width:100%;max-width:600px;position:relative;margin:auto}
.meditation-active .meditation-dial{width:130px;margin:clamp(160px,40dvh,450px) auto 0;flex:none}
.meditation-active .timer-label{font-size:17px;max-width:140px;font-weight:400;line-height:1.5;color:#3c2b11}
.meditation-active .timer-face{border:1px solid #fae2a9b5;background:#f4d69729;box-shadow:0 0 0 6px #ffefcc22}
.meditation-active .meditation-timing{position:absolute;top:74%;left:0;right:0;text-align:center;margin:0}.meditation-active .timer-number{font-size:23px;font-weight:400;color:#503813;text-shadow:0 1px 5px #fff8}
.meditation-active #timer-phase,.meditation-active #timer-duration{display:none}
.meditation-active .meditation-controls{position:absolute;bottom:max(27px,env(safe-area-inset-bottom));left:0;right:0;display:flex;justify-content:center;gap:22px;margin:0}
.meditation-active .meditation-controls .round-control{height:46px;width:46px;min-width:46px;min-height:46px;border:0;background:#fff9;color:#4f391a;padding:13px}.meditation-active .meditation-controls #timer-pause{background:#fff9}
.meditation-active.is-preparing:after{content:'';position:absolute;inset:0;background:#21170d66;pointer-events:none;z-index:0}.meditation-active.is-preparing .meditation-main{z-index:1}.meditation-active.is-preparing #clock-label{color:white;font-size:56px;font-weight:300}.meditation-active.is-preparing .timer-face{background:transparent;box-shadow:none}.meditation-active.is-preparing .meditation-timing{display:none}
body[data-route=meditation]:has(.meditation-active) .mini-player{display:none!important}
.plan-page-head .eyebrow{letter-spacing:.05em}.plan-current{border-color:#b18a38!important;background:#fff9e9}.plan-current>.tag{background:#eeddac;color:#5f4512}
@media(min-width:801px){.phase5-instruments>.grid{padding-top:45px;grid-template-columns:1fr 1fr}.phase5-instruments .instrument{height:300px}.meditation-active{min-height:650px;max-width:900px;margin:auto;border-radius:24px}.meditation-focus.meditation-setup{max-width:680px;margin:auto}.mala-page{max-width:600px}.phase5-instruments{min-height:750px}}
@media(max-width:800px){.phase5-instruments>.grid.two{grid-template-columns:1fr;gap:6px;padding:6px 18px;max-width:520px}.phase5-instruments{min-height:100dvh}.phase5-instruments .instrument{height:clamp(145px,24dvh,250px)}.meditation-focus.meditation-setup .meditation-main{padding:18px 22px}.meditation-setup h2{font-size:20px;margin-bottom:14px}.med-ready{margin-top:12px}.med-ready>p{font-size:13px}.meditation-active{min-height:520px}}
@media(max-height:600px) and (orientation:landscape){.phase5-instruments>.grid.two{grid-template-columns:1fr 1fr}.phase5-instruments .instrument{height:180px}.phase5-instruments{min-height:100dvh}.meditation-active{min-height:360px}.meditation-active .meditation-dial{margin-top:90px;width:115px}.meditation-active .meditation-timing{top:60%;left:65%;right:0}.meditation-active .meditation-controls{bottom:15px}.mala-page .mala-tap{height:350px}}
@media(prefers-reduced-motion:reduce){.sound-ripples i{animation:none;opacity:.35;transform:scale(1)}.instrument.is-striking .instrument-real-art{animation:none}}
body.reduced-motion .sound-ripples i{animation:none;opacity:.35;transform:scale(1)}body.reduced-motion .instrument.is-striking .instrument-real-art{animation:none}

/* V78.1: only meditation and mala. Other tools and the PDF library are untouched. */
.mala-page{height:100dvh;min-height:0;overflow:hidden;padding-bottom:env(safe-area-inset-bottom);box-sizing:border-box}
.mala-page .focus-header{flex:none;padding-top:max(8px,env(safe-area-inset-top));min-height:55px}
.mala-page .focus-header h1{font-size:17px;font-weight:600}
.mala-page .mala-toolbar{flex:none;padding:7px 18px 14px;grid-template-columns:44px 1fr 60px}
.mala-page .mala-counter{font-size:14px}.mala-page .mala-counter strong{font-size:14px;padding:7px 1px 7px 8px;border-radius:5px 0 0 5px}
.mala-page .mala-counter>span{font-size:11px;padding:8px 6px 8px 0;border-radius:0 5px 5px 0}
.mala-page .mala-toolbar #mala-rounds{font-size:12px!important;text-align:right}
.mala-page .practice-stage{flex:1;min-height:0;position:relative;background:radial-gradient(#d6c8aa55 .6px,transparent .6px) 0 0/14px 14px,var(--surface)}
.mala-page .mala-tap{position:absolute;inset:0;height:100%;min-height:0;margin:0;padding:0;touch-action:none;-webkit-user-select:none;user-select:none}
.mala-motion{display:block;position:absolute;inset:0;overflow:hidden;pointer-events:none}
.mala-motion:before{content:'';position:absolute;left:50%;top:0;bottom:0;width:1.5px;background:linear-gradient(#9c6745,#5e3924,#9c6745);transform:translateX(-50%)}
.mala-motion img{position:absolute;left:50%;top:0;object-fit:contain;pointer-events:none;will-change:transform;max-width:none;filter:drop-shadow(1px 2px 1px #4f281c12)}
#mala-session-slot .mala-actions{padding:0}#mala-session-slot .mala-actions>.actions{justify-content:center;margin:16px 0}#mala-session-slot #mala-title{width:100%}#mala-session-slot .mala-options{margin:12px 0}
#mala-actions-home[hidden]{display:none!important}
.meditation-setup .meditation-head h1{font-size:17px}.meditation-setup .meditation-main{padding:15px 22px 24px}
.meditation-setup .med-setup-duration{margin-bottom:24px}.meditation-setup h2{font-size:18px;margin:0 0 13px}
.meditation-setup .duration-tiles{gap:12px}.meditation-setup .duration-tiles button,.meditation-setup .custom-minutes{border-radius:13px;min-height:61px}
.meditation-setup .duration-tiles button strong{font-size:22px}.meditation-setup .duration-tiles button small{font-size:11px}
.meditation-setup .med-setup-sound{margin-bottom:24px}.meditation-setup .med-setup-sound .group-link{padding:10px 0;border:0;gap:12px}.meditation-setup .med-setup-sound img{border-radius:7px;width:39px;height:39px;object-fit:cover}
.meditation-setup .med-preparation{background:#f5f4f1;border-radius:19px;padding:18px 17px;border:1px solid #eeeae3}
.meditation-setup .med-preparation h2{font-size:18px;margin-bottom:20px}.meditation-setup .med-preparation li{margin:0;padding-bottom:19px;gap:13px}
.meditation-setup .med-preparation li:last-child{padding-bottom:0}.meditation-setup .med-preparation strong{font-size:14px;line-height:1.5}.meditation-setup .med-preparation p{font-size:12px;line-height:1.55;margin:5px 0 0;color:#756e61}
.meditation-setup .med-preparation li:before{width:29px;height:29px;background:#ad8a4e;font-size:11px}.meditation-setup .med-preparation li:after{left:14px;top:32px}
.med-guide-link{display:block;width:100%;margin-top:18px;border:0;border-top:1px solid #dedbd5;border-radius:0;background:none;padding:13px 3px 0;min-height:42px;font-size:13px;font-weight:500;color:#4c463b}
.meditation-setup .med-ready{margin-top:20px}.meditation-setup .med-ready>p{font-size:12px;line-height:1.6;font-style:italic;color:var(--muted);max-width:290px;margin:0 auto 18px}
.meditation-setup .med-start{width:62px;height:62px;min-width:62px;min-height:62px;background:#a17a35;box-shadow:0 4px 12px #9a783725}
.meditation-setup .meditation-note{font-size:11px;margin-top:16px}.full-meditation-guide{padding-left:22px}.full-meditation-guide li{padding:7px 0}.full-meditation-guide p{line-height:1.75}
body.dark .meditation-setup .med-preparation{background:var(--bg);border-color:var(--line)}body.dark .meditation-setup .med-preparation p{color:var(--muted)}body.dark .med-guide-link{color:var(--ink);border-color:var(--line)}
.meditation-focus.meditation-active{height:100dvh;min-height:0;padding:0!important;background-position:center center}
.meditation-active:before{background:linear-gradient(#36210f15,transparent 27%,#ffc86e12 70%,#36210f28)}
.meditation-active:after{content:'';position:absolute;inset:0;background:transparent;pointer-events:none;z-index:0;transition:background .45s}
.meditation-active.is-preparing:after{background:#21170d65}.meditation-active.is-paused:after{background:#21170d35}
.meditation-active .meditation-main{display:block;position:relative;height:100%;max-width:none;padding:0;z-index:1}
.meditation-active .meditation-head{min-height:56px;padding:12px 16px}.meditation-active .meditation-head #med-exit{background:#fff9;color:#47351d;min-width:34px;min-height:34px;width:34px;height:34px;border-radius:50%;font-size:22px;padding:0}
.meditation-active .scene-select{top:max(14px,env(safe-area-inset-top));right:16px;min-height:34px;padding:6px 12px;border-radius:20px;font-size:12px}
.meditation-active .meditation-dial{position:absolute;left:50%;top:50%;margin:0;width:clamp(135px,34vw,180px);transform:translate(-50%,-50%);aspect-ratio:1;isolation:isolate}
.meditation-active .timer-face{position:absolute;inset:0;display:grid;place-items:center;width:100%;height:100%;padding:0;border:0;border-radius:50%;background:none;box-shadow:none;transform:none!important;transition:none}
.meditation-active .timer-label{font-size:19px;color:#4a341a;font-weight:400;line-height:1.3;text-shadow:0 1px 6px #ffe4a288;max-width:none}
.meditation-active .breath-aura{position:absolute;inset:0;transform:scale(var(--ring-scale,1));border:1px solid #ebc47fbc;border-radius:50%;background:radial-gradient(transparent 58%,#ffe2a63b 90%);box-shadow:0 0 21px #ffe3a436,inset 0 0 20px #ffe3a427}
.breath-aura i{position:absolute;border:1px solid #efd7a26b;border-radius:50%;inset:5px}.breath-aura i:nth-child(2){inset:10px;border-color:#f7dfb04d}.breath-aura i:nth-child(3){inset:15px;border-color:#f7dfb033}
.meditation-active .timer-ring{transform:rotate(var(--orbit-angle,0deg));transform-origin:center;opacity:.7;fill:none}
.meditation-active .timer-track{stroke:#efce90;stroke-width:1.5}.meditation-active .timer-trail{stroke:#ffe1a3;stroke-width:2;filter:drop-shadow(0 0 4px #ffe9b8);transform:rotate(-90deg);transform-origin:center}
.meditation-active #timer-dot{fill:#ffe7b9;filter:drop-shadow(0 0 6px #ffe3a0);opacity:.9}
.meditation-active:not(.is-preparing) .timer-ring{opacity:.34}
.meditation-active .prepare-caption{display:none;position:absolute;left:-80px;right:-80px;bottom:calc(100% + 28px);text-align:center;font-size:18px;color:#fff7e8;text-shadow:0 1px 5px #0007}
.meditation-active.is-preparing .prepare-caption{display:block}.meditation-active.is-preparing #clock-label{font-family:Georgia,serif;font-size:54px;font-weight:400;color:#fff}
.meditation-active.is-preparing .breath-aura{opacity:.3}
.meditation-active .meditation-timing{top:71%;left:0;right:0;margin:0}.meditation-active .timer-number{font-size:24px;font-variant-numeric:tabular-nums;color:#fff7e6;text-shadow:0 1px 4px #21160ee6,0 0 10px #21160e80}
.meditation-active .meditation-controls{bottom:max(7.5%,calc(env(safe-area-inset-bottom) + 18px));gap:28px;opacity:0;pointer-events:none;transition:opacity .25s}
.meditation-active.controls-visible .meditation-controls,.meditation-active.is-paused .meditation-controls,.meditation-active .meditation-controls:focus-within{opacity:1;pointer-events:auto}
.meditation-active .meditation-controls .round-control{width:38px;height:38px;min-width:38px;min-height:38px;padding:11px;background:#fff8;color:#5f4727}
.meditation-active .meditation-controls #timer-pause{width:46px;height:46px;min-width:46px;min-height:46px;padding:14px;background:#fff9}
.meditation-active .meditation-controls #med-sound,.meditation-active .meditation-controls #timer-finish{opacity:.65;align-self:center}
dialog.med-exit-dialog{margin:auto;max-width:340px;width:calc(100% - 48px);border-radius:20px;padding-bottom:0}dialog.med-exit-dialog .dialog-body{padding:16px 20px}.med-exit-dialog .med-exit-actions{display:grid;gap:10px}.med-exit-dialog #med-background{font-size:12px;background:none;border:0}
@media(min-width:801px){.mala-page{height:calc(100dvh - 50px);max-width:600px}.meditation-focus.meditation-active{height:calc(100dvh - 50px);max-width:700px;min-height:500px}.meditation-setup .meditation-main{max-width:580px;margin:auto}}
@media(max-height:650px) and (orientation:landscape){.meditation-active .meditation-dial{top:45%;left:38%;width:140px}.meditation-active .meditation-timing{top:42%;left:65%;right:0}.meditation-active .meditation-controls{bottom:20px}.mala-page .mala-toolbar{padding-top:0;padding-bottom:0}.mala-page .focus-header{min-height:44px;padding-top:0;padding-bottom:0}}
@media(prefers-reduced-motion:reduce){.meditation-active:after,.meditation-active .meditation-controls{transition:none}.mala-motion img{will-change:auto}}

.med-scene-actions{margin-top:22px;justify-content:center}.med-scene-actions button{display:flex;align-items:center;gap:8px}.med-scene-actions svg{width:18px;height:18px}

/* Scoped to Phase 6. No changes to PDF, audio or practice layouts. */
.ref-page{--ref-paper:#fffdf7;--ref-tint:#fff4d9;--ref-border:#e8d9b5;--ref-brown:#694719;--ref-muted:#706348;max-width:1120px;margin:0 auto;color:var(--ink);overflow-wrap:anywhere}
.ref-page h1,.ref-page h2,.ref-page h3{color:var(--ink)}
.ref-page h1{font-size:clamp(28px,3vw,38px);line-height:1.35}
.ref-page p{line-height:1.8}.ref-page .back{font-size:15px;min-height:44px;display:inline-flex;align-items:center}
.ref-welcome{display:flex;align-items:center;gap:24px;background:linear-gradient(110deg,var(--ref-tint),var(--ref-paper));border:1px solid var(--ref-border);border-radius:24px;padding:30px 32px;margin-bottom:26px}
.ref-welcome>div{flex:1;min-width:0}.ref-welcome p{max-width:600px}.ref-emblem{display:grid;place-items:center;border:1px solid var(--ref-border);border-radius:50%;width:112px;height:112px;color:var(--ref-brown);flex-shrink:0}.ref-emblem svg{width:64px;height:64px}
.ref-metrics{display:flex;gap:8px 20px;flex-wrap:wrap;font-size:14px;color:var(--ref-muted)}
.ref-search{margin:0 0 20px}.ref-search>label{display:block;font-weight:700;font-size:16px;margin-bottom:8px}.ref-search>div{display:flex;gap:8px;align-items:stretch}.ref-search input{min-width:0;flex:1;font-size:17px!important;background:var(--ref-paper)!important}.ref-search button{flex-shrink:0;min-width:58px}.ref-search .ref-small{margin:8px 0 0}
.ref-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:30px 0 18px}.ref-section-head h1,.ref-section-head h2{margin:0}.ref-section-head a{font-size:15px;flex-shrink:0}.ref-section-head .ref-small{margin:7px 0 0}
.ref-groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:12px}.ref-group{display:flex;gap:14px;padding:20px;border:1px solid var(--ref-border);border-radius:18px;text-decoration:none;color:inherit;background:var(--ref-paper);align-items:flex-start}.ref-group-icon{width:44px;height:44px;display:grid;place-items:center;background:var(--ref-tint);color:var(--ref-brown);border-radius:50%;flex-shrink:0}.ref-group h3{font-size:23px;margin:0 0 6px}.ref-group p{font-size:15px;margin:0 0 6px}.ref-group div>span{font-size:13px;color:var(--ref-muted)}
.ref-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.ref-card{display:flex;flex-direction:column;padding:23px;border:1px solid var(--ref-border);border-radius:18px;color:inherit;text-decoration:none;background:var(--ref-paper);min-width:0}.ref-card h3{font-size:23px;line-height:1.45;margin:8px 0}.ref-card>p{font-size:16px;margin-bottom:14px}.ref-card .ref-sanskrit{font-size:14px}.ref-card-foot{font-size:13px;color:var(--ref-brown);margin-top:auto;padding-top:8px}.ref-card-tags{display:flex;flex-wrap:wrap;gap:6px}.ref-tag{font-size:12px;background:var(--ref-tint);color:var(--ref-brown);padding:3px 10px;border-radius:20px}.ref-card:hover,.ref-group:hover{border-color:var(--ref-brown)}
.ref-small,.ref-sanskrit{font-size:14px!important;color:var(--ref-muted);line-height:1.75!important}.ref-extras{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.ref-extras>a{display:flex;align-items:center;gap:12px;padding:17px;background:var(--ref-paper);border:1px solid var(--ref-border);border-radius:14px;text-decoration:none;color:inherit;font-size:16px}.ref-extras>a>span:nth-child(2){flex:1}
.ref-footer{margin-top:28px;padding:22px 0;border-top:1px solid var(--ref-border);display:flex;flex-wrap:wrap;align-items:center;gap:16px;font-size:15px}.ref-footer a{min-height:44px;display:inline-flex;align-items:center}
.ref-filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.ref-filters button{font-size:15px;background:var(--ref-paper);border-color:var(--ref-border);border-radius:24px}.ref-filters button[aria-pressed=true]{background:var(--ref-brown);color:var(--ref-paper);border-color:var(--ref-brown)}
.ref-empty{grid-column:1/-1;text-align:center;border:1px dashed var(--ref-border);border-radius:18px;padding:36px 22px}.ref-empty h2{font-size:24px}
.ref-article{max-width:780px}.ref-article-head{padding:24px 0 22px;border-bottom:1px solid var(--ref-border)}.ref-article-head h1{margin:14px 0 10px}.ref-article-head .ref-sanskrit{font-size:20px!important}.ref-tradition{color:var(--ref-muted);font-size:15px}.ref-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.ref-actions button,.ref-actions a{font-size:15px;min-height:44px}.ref-actions [data-fav-id]{font-size:26px;color:var(--ref-brown)}
.ref-read-tools{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:18px 0;font-size:14px;color:var(--ref-muted)}.ref-read-tools button{font-size:17px;min-width:44px}.ref-read-tools output{min-width:36px;text-align:center}.ref-body{font-size:var(--ref-read-size,20px);line-height:1.9}.ref-body p{line-height:1.9;user-select:text;-webkit-user-select:text}.ref-intro{padding:24px;border-radius:18px;background:var(--ref-tint);border:1px solid var(--ref-border)}.ref-intro>p{margin:0 0 14px}.ref-aliases{border-bottom:1px solid var(--ref-border);padding:18px 0;font-size:17px}.ref-aliases summary{cursor:pointer;min-height:44px;display:list-item;padding-top:5px}.ref-aliases>p{margin-top:14px}
.ref-toc{display:flex;flex-wrap:wrap;gap:8px;margin:22px 0}.ref-toc button{font-size:14px;background:transparent;border-color:var(--ref-border)}.ref-reading-section{padding:28px 0;border-bottom:1px solid var(--ref-border);scroll-margin-top:20px}.ref-reading-section h2{font-size:26px;margin-bottom:12px}.ref-section-kind{font-size:13px!important;color:var(--ref-muted);margin-bottom:15px}.ref-citations{display:flex;flex-wrap:wrap;gap:7px;margin-top:16px}.ref-citation{font-size:13px;min-height:40px;line-height:1.6;padding:7px 10px;border:1px solid var(--ref-border);color:var(--ref-brown);text-align:left;justify-content:flex-start;background:var(--ref-paper);max-width:100%;overflow-wrap:anywhere}.ref-next-actions{margin-top:24px}
.ref-book-list{display:grid;gap:10px;margin:18px 0}.ref-book{display:flex;align-items:center;gap:16px;background:var(--ref-paper);border:1px solid var(--ref-border);border-radius:14px;padding:17px;text-decoration:none;color:inherit}.ref-book>span:first-child{flex:1;min-width:0}.ref-book strong{font-size:17px;font-weight:normal;line-height:1.7}.ref-book small{display:block;font-size:13px;color:var(--ref-muted);margin-top:6px;overflow-wrap:anywhere}.ref-pdf-label{font-size:14px;color:var(--ref-brown);flex-shrink:0}.ref-search-more{margin:4px 0 16px}
.ref-source-list{display:grid;gap:14px;margin:16px 0 22px}.ref-source-card{border:1px solid var(--ref-border,var(--line));background:var(--ref-paper,var(--surface));padding:20px;border-radius:14px}.ref-source-card h3{font-size:20px}.ref-source-card p{font-size:15px;line-height:1.8}.ref-source-card a{font-size:15px;display:inline-flex;min-height:44px;align-items:center}.ref-related{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.ref-related a{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--ref-border);border-radius:13px;padding:15px;background:var(--ref-paper);font-size:17px;text-decoration:none;color:inherit}.ref-about{font-size:17px;line-height:1.8}.ref-about li{margin-bottom:16px}.ref-about ul{padding-left:22px}
body.dark .ref-page{--ref-paper:#25231d;--ref-tint:#393122;--ref-border:#5a4d34;--ref-brown:#f4d28c;--ref-muted:#c5bba6}body.dark .ref-filters button[aria-pressed=true]{color:#25231d}
@media(max-width:1100px){.ref-grid,.ref-groups,.ref-extras{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.ref-welcome{padding:23px;gap:12px;border-radius:20px}.ref-emblem{display:none}.ref-welcome h1{font-size:29px}.ref-welcome p{font-size:17px}.ref-metrics{font-size:13px;gap:8px 14px}.ref-groups{gap:10px}.ref-group{display:block;padding:16px}.ref-group-icon{margin-bottom:12px}.ref-group h3{font-size:22px}.ref-group p{font-size:14px}.ref-group:last-child{grid-column:1/-1;display:flex;align-items:center}.ref-group:last-child .ref-group-icon{margin-bottom:0}.ref-grid{grid-template-columns:1fr;gap:13px}.ref-card{padding:21px}.ref-extras{grid-template-columns:1fr}.ref-section-head{align-items:flex-start}.ref-section-head h2{font-size:25px}.ref-section-head a{font-size:14px}.ref-search input{font-size:16px!important}.ref-filters{gap:7px}.ref-filters button{padding:9px 13px;font-size:14px}.ref-intro{padding:20px}.ref-article-head{padding-top:8px}.ref-article-head h1{font-size:30px}.ref-book{align-items:flex-start;gap:10px}.ref-pdf-label{font-size:12px}.ref-related{grid-template-columns:1fr}.ref-footer{display:grid;justify-content:start;gap:8px}.ref-reading-section h2{font-size:25px}.ref-body{line-height:1.85}.ref-source-card{padding:18px}}
@media(max-width:360px){.ref-welcome{padding:20px}.ref-group{padding:14px}.ref-book{flex-direction:column}.ref-search button{min-width:50px;padding:8px 12px}.ref-article-head h1{font-size:28px}}
@media print{.ref-read-tools,.ref-toc,.ref-actions,.ref-footer,.ref-citations,.ref-article>.back{display:none!important}.ref-page{--ref-paper:white;--ref-tint:white;--ref-border:#aaa;--ref-muted:#333;--ref-brown:black}.ref-body{font-size:18px}.ref-source-card{break-inside:avoid}}

/* Scoped visual collection: V79.1. Other readers, tools and routes are untouched. */
body[data-reference-mode] .topbar{display:none}body[data-reference-mode] main{padding-top:0}
.ref-visual-bar{position:sticky;top:0;z-index:32;height:54px;display:grid;grid-template-columns:44px 1fr 44px;align-items:center;gap:8px;background:#f5f1ecef;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);margin:0 0 15px}.ref-visual-bar h1{font:600 19px/1.35 Library,system-ui,sans-serif;text-align:center;margin:0}.ref-visual-bar>a,.ref-visual-bar>button{margin:0!important;width:44px;height:44px;padding:0;display:grid;place-items:center;text-decoration:none;background:transparent;border:0;color:inherit;font-family:system-ui;font-size:30px}.ref-visual-bar>button{font-size:26px}.ref-collection{max-width:920px}.ref-portrait-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px 14px}.ref-portrait-card{display:block;background:#fffdfb;border-radius:18px;overflow:hidden;text-decoration:none;color:#262321;border:1px solid transparent;min-width:0}.ref-portrait{position:relative;display:block;width:100%;overflow:hidden;background:#f1e4c7;isolation:isolate}.ref-portrait img{position:absolute;max-width:none!important;height:auto!important;display:block;pointer-events:none}.ref-portrait-card h2{font:600 14px/1.4 Library,system-ui,sans-serif;text-align:center;min-height:52px;margin:0;padding:10px 8px;display:grid;place-items:center}.ref-portrait-card:focus-visible{outline:3px solid #9b6d24;outline-offset:3px}.ref-collection-more{text-align:center;padding:35px 5px 25px}.ref-collection-more p{font-size:14px;color:#705b3f;margin-top:14px}#ref-collection-search{padding:0 4px 18px}#ref-collection-search[hidden]{display:none}#ref-collection-search label{display:block;margin-bottom:8px}#ref-collection-count{font-size:13px;margin-top:8px}
.ref-folio{position:relative;isolation:isolate;max-width:660px;background:var(--ref-paper);padding-bottom:20px}.ref-folio-backdrop{position:absolute;inset:0 0 auto;height:480px;overflow:hidden;z-index:-1;opacity:.5;mask-image:linear-gradient(#000 45%,transparent);-webkit-mask-image:linear-gradient(#000 45%,transparent)}.ref-folio-backdrop>.ref-portrait{transform:scale(1.5);filter:blur(38px);height:100%}.ref-folio-backdrop img{opacity:.8}.ref-folio-bar{margin:0;background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none}.ref-folio-bar>a,.ref-folio-bar>button{background:#ffffff90;border-radius:50%;height:38px;width:38px;justify-self:center;font-size:27px}.ref-folio-bar>button{font-size:23px;color:#82642f}.ref-compact-title{font-weight:600;font-size:16px;text-align:center;opacity:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ref-folio-bar.is-scrolled{background:#f2e5cdef;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.ref-folio-bar.is-scrolled .ref-compact-title{opacity:1}.ref-folio-hero.ref-article-head{text-align:center;padding:22px 12px 26px;border:0}.ref-folio-hero>.ref-portrait{width:66%;max-width:340px;margin:0 auto;border-radius:24px}.ref-folio-hero h1{font:700 25px/1.4 Library,system-ui,sans-serif;margin:18px 0 12px}.ref-title-rule{display:block;background:#c7b17f;width:48px;height:3px;border-radius:3px;margin:auto}.ref-tab-anchor{position:sticky;top:54px;z-index:31;padding:0 14px 9px;background:var(--ref-paper)}.ref-tablist{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:3px;border-radius:24px;padding:3px;background:#e6e3e5}.ref-tablist button{padding:8px 4px;min-height:36px;min-width:0;border-radius:22px;background:transparent;border:0;color:#69666a;font-size:14px;line-height:1.3}.ref-tablist button[aria-selected=true]{background:#fff;box-shadow:0 1px 5px #0002;color:#252323}.ref-folio-content{padding:18px 20px 0;font-size:var(--ref-read-size,18px);line-height:1.65}.ref-folio-content [hidden]{display:none!important}.ref-folio-content p{line-height:1.65;margin-bottom:17px}.ref-folio-content h2{font:600 17px/1.5 Library,system-ui,sans-serif;color:#78632d;margin:25px 0 9px}.ref-folio-content .ref-reading-section{padding:10px 0;border:0}.ref-folio-content .ref-citation{font-size:12px;line-height:1.5;padding:5px 8px;min-height:32px}.ref-folio-content .ref-citations{margin:12px 0}.ref-vows{list-style:none;margin:0;padding:0}.ref-vows li{display:flex;gap:16px;align-items:flex-start;padding:12px 0}.ref-vows li>span{font-size:24px;color:#b5a274;min-width:23px;line-height:1.35;font-weight:600}.ref-vows li>p{margin:0}.ref-vow-note{font-size:14px;margin-top:24px!important;color:#72654f}.ref-mantra-copy{text-align:center;padding:1px 0 20px;min-height:300px}.ref-mantra-copy h2{font:700 18px/1.35 Library,system-ui,sans-serif;color:inherit;margin:12px auto 10px;max-width:430px}.ref-mantra-copy .ref-phonetic{color:#8a733d;font-size:14px;line-height:1.4}.ref-mantra-copy h3{font:600 10px Library,system-ui,sans-serif;letter-spacing:2px;color:#8c7747;margin:34px 0 12px}.ref-mantra-copy>p{font-size:16px}.ref-mantra-copy .ref-small{font-size:13px!important}.ref-mantra-copy .ref-citations{justify-content:center}.ref-chant-button{background:#cfaa5e;color:#fff;border:0;border-radius:30px;padding:10px 24px;min-height:44px;margin-bottom:12px}.ref-text-button{background:transparent;border:0;text-decoration:underline;font-size:13px}.ref-folio-utilities{padding:25px 20px}.ref-folio-utilities .ref-actions{justify-content:center;margin:10px 0 24px}.ref-attachments{padding:14px 0;border-block:1px solid var(--ref-border);margin-bottom:20px}.ref-attachments summary{padding:8px 0;min-height:44px;cursor:pointer;font-weight:600}.ref-attachments .ref-book strong{font-size:16px}.ref-folio .ref-related{font-size:15px}.ref-effect-option{display:flex;gap:12px;align-items:center;padding:15px}.ref-effect-option input{width:auto!important;min-height:20px!important}.ref-floating-syllables{position:fixed;inset:0;pointer-events:none;z-index:33;overflow:hidden}.ref-floating-syllables>span{position:absolute;font:bold 48px Library,system-ui,sans-serif;color:#f1c94799;text-shadow:0 0 15px #ffe9a166;animation:ref-word-rise 3s ease-out forwards;will-change:transform,opacity}@keyframes ref-word-rise{0%{transform:translateY(25px) scale(.8);opacity:0}25%{opacity:.8}100%{transform:translateY(-150px) scale(1.1);opacity:0}}
@media(max-width:800px){body[data-reference-mode] main{padding:0 14px 75px}body[data-reference-mode=folio] main{padding-inline:0}body[data-reference-mode] .foot{padding-top:0}.ref-portrait-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 14px}.ref-portrait-card h2{font-size:13px;min-height:49px;padding:8px 5px}.ref-portrait-card{border-radius:16px}.ref-visual-bar{margin-inline:-14px;padding-inline:8px}.ref-folio-bar{margin:0}.ref-folio-hero.ref-article-head{padding:20px 12px 25px}.ref-folio-hero h1{font-size:22px}.ref-folio-hero>.ref-portrait{width:66%;max-width:340px}.ref-folio .ref-tab-anchor{padding-inline:14px}.ref-folio-content{padding-inline:20px}.ref-folio .ref-footer{display:flex}.ref-folio .ref-body{line-height:1.65}}
@media(max-width:360px){.ref-tablist button{font-size:12px}.ref-folio-hero h1{font-size:20px}.ref-folio-content{padding-inline:16px}.ref-portrait-card h2{font-size:12px}}
body.dark .ref-portrait-card{background:#302c23;color:#f5ebd4}body.dark .ref-visual-bar{background:#2c271fef}body.dark .ref-folio-bar:not(.is-scrolled){background:transparent}body.dark .ref-tablist{background:#49443a}body.dark .ref-tablist button{color:#ddd2bc}body.dark .ref-tablist button[aria-selected=true]{background:#76613b;color:white}body.dark .ref-folio-content h2,body.dark .ref-mantra-copy .ref-phonetic{color:#e6c785}body.dark .ref-vow-note{color:#cfc5ac}body.dark .ref-collection-more p{color:#cfc5ac}body.dark .ref-folio-bar>a,body.dark .ref-folio-bar>button{background:#362f23cc;color:#eed89e}
@media(prefers-reduced-motion:reduce){.ref-floating-syllables{display:none!important}}body.reduced-motion .ref-floating-syllables{display:none!important}
@media print{.ref-visual-bar,.ref-tab-anchor,.ref-floating-syllables,.ref-folio-backdrop{display:none!important}.ref-folio-content [hidden]{display:block!important}.ref-folio-hero>.ref-portrait{width:160px}}

.ref-home-strip{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x proximity;padding-bottom:8px}.ref-home-strip>.ref-portrait-card{flex:0 0 160px;scroll-snap-align:start}.ref-home-strip h3{font:600 13px/1.4 Library,system-ui,sans-serif;text-align:center;margin:0;padding:10px 5px;min-height:52px}@media(max-width:600px){.ref-home-strip>.ref-portrait-card{flex-basis:136px}}
/* V79.2: full on-page reading, scalable text and long recitations. */
.ref-folio-content{overflow-wrap:anywhere;text-align:left}
.ref-folio-content h2{font-size:calc(var(--ref-read-size,18px) * 1.06);font-weight:700;color:#725421}
.ref-folio-content .ref-biography-summary{font-weight:500;line-height:1.8}
.ref-folio-content .ref-bio-section{margin:26px 0}
.ref-folio-content p{line-height:1.8}
.ref-folio-content .ref-vows-heading{margin-top:0}
.ref-vows li{gap:12px;border-bottom:1px solid #d7c29c55;padding:18px 0}
.ref-vows li>span{min-width:30px;text-align:center;line-height:1.5;color:#967039}
.ref-vows strong{font-weight:650}
.ref-folio-content .ref-vow-note{font-size:max(15px,calc(var(--ref-read-size,18px) * .88));line-height:1.75;border-left:3px solid #c7ab72;padding-left:14px}
.ref-folio-content .ref-mantra-copy>p{font-size:var(--ref-read-size,18px)}
.ref-folio-content .ref-mantra-copy h3{font-size:16px;letter-spacing:0;text-transform:none;margin-top:26px}
.ref-folio-content .ref-primary-mantra{font-size:calc(var(--ref-read-size,18px) * 1.15)!important;font-weight:650;white-space:pre-line;line-height:1.7;margin:20px 0}
.ref-folio-content .ref-mantra-copy .ref-phonetic{font-size:var(--ref-read-size,18px);line-height:1.7;color:#725421}
.ref-folio-content .ref-small{font-size:max(15px,calc(var(--ref-read-size,18px) * .88))!important;line-height:1.7}
.ref-folio-content .ref-text-button{min-height:44px;font-size:16px;color:#725421;padding:10px 8px}
.ref-chant-button{color:#33230b;background:#d7b56d;font-size:16px}
.ref-extra-recitation{border-top:1px solid var(--ref-border);margin-top:25px;padding-top:10px}
.ref-recitation-text{white-space:pre-line;user-select:text;-webkit-user-select:text;font-size:var(--ref-read-size,18px)}
.ref-tablist button{min-height:44px}
body.dark .ref-folio-content .ref-text-button,body.dark .ref-folio-content .ref-phonetic,body.dark .ref-vows li>span{color:#e6c785}
@media print{.ref-chant-button,.ref-text-button,.ref-folio-utilities .ref-actions{display:none!important}}

/* Phase 7. Scoped styles keep the library, reader and practice tools intact. */
.space-page{max-width:1060px;margin:0 auto;color:var(--ink)}
.space-page-head{display:flex;gap:12px;align-items:center;margin-bottom:20px}.space-page-head>div{flex:1;min-width:0}.space-page-head h1{font-family:Library,system-ui,sans-serif;font-size:26px;line-height:1.3;margin:0}.space-page-head p{font-size:14px;color:var(--muted);margin:6px 0 0}.space-page-head>.icon{flex:none;min-width:44px;font-size:32px;background:transparent;border:0;padding:0}.temple-region-label{max-width:140px}.temple-region-label select{width:100%;padding:8px 12px;background:var(--surface);border:1px solid var(--line);border-radius:12px;min-height:44px}
.space-search{display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:14px;background:var(--surface);padding:0 12px;min-height:50px}.space-search>svg{width:21px;height:21px;flex:none;color:var(--muted)}.space-search input{border:0;background:transparent;min-width:0;width:100%;padding:12px 0;font-size:16px;outline-offset:2px}.space-search button{border:0;padding:0;width:40px;font-size:25px;flex:none}.space-count{font-size:14px;color:var(--muted);margin:14px 0}.space-note{font-size:13px;line-height:1.7;color:var(--muted);margin:22px 0}.space-empty{grid-column:1/-1;text-align:center;padding:32px 16px}.space-page svg,.temple-dialog svg{width:20px;height:20px;flex:none;vertical-align:middle}
.temple-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.temple-card{overflow:hidden;background:var(--surface);border:1px solid var(--line);border-radius:18px;text-decoration:none;color:var(--ink);box-shadow:0 4px 15px #5f481008;min-width:0;transition:box-shadow .15s}.temple-card:hover{box-shadow:0 5px 20px #5f481020}.temple-card-photo{position:relative;aspect-ratio:4/3;background:#e9e6df}.temple-card-photo img{width:100%;height:100%;object-fit:cover;display:block}.temple-region{display:inline-block;font-size:12px;font-weight:700;background:#fff4ce;color:#79530e;padding:4px 10px;border-radius:20px}.temple-card-photo .temple-region{position:absolute;right:9px;top:9px;box-shadow:0 1px 4px #0002}.temple-card-copy{padding:14px}.temple-card h2{font:700 18px/1.45 Library,system-ui,sans-serif;margin:0 0 7px;overflow-wrap:anywhere}.temple-card p{font-size:14px;line-height:1.55;color:var(--muted);margin:0 0 7px;display:flex;align-items:flex-start;gap:5px}.temple-card p svg{width:16px;height:20px}.temple-card small{font-size:12px;line-height:1.5;color:var(--muted);display:block}
#dialog.temple-dialog{width:760px;max-width:calc(100vw - 24px);height:calc(100dvh - 40px);max-height:calc(100dvh - 40px);border:0;border-radius:24px;overscroll-behavior:contain;background:var(--bg);scrollbar-width:thin}
#dialog.temple-dialog>header{padding:8px 12px 8px 20px;min-height:56px;background:var(--surface);border-bottom:0;z-index:3}#dialog.temple-dialog>header h2{font:700 16px/1.4 Library,system-ui,sans-serif;max-width:calc(100% - 54px)}#dialog.temple-dialog>header button{width:44px;height:44px;font-size:29px;flex:none}#dialog.temple-dialog .dialog-body{padding:0}.temple-hero{position:relative;background:#eae6db}.temple-carousel{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain}.temple-carousel::-webkit-scrollbar{display:none}.temple-slide{flex:0 0 100%;scroll-snap-align:start;aspect-ratio:4/3;display:block;min-width:0;background:#e9e5da}.temple-slide img{width:100%;height:100%;object-fit:contain;display:block}.photo-prev,.photo-next{position:absolute;top:45%;width:42px;height:42px;min-height:42px;font-size:29px;border:0;border-radius:50%;background:#fffdf3ed;color:#523c1c;padding:0}.photo-prev{left:10px}.photo-next{right:10px}.photo-dots{position:absolute;bottom:12px;left:50%;transform:translateX(-50%);display:flex;gap:0;background:#0005;border-radius:22px}.photo-dots button{width:30px;min-height:30px;padding:0;border:0;background:transparent}.photo-dots button:after{content:'';width:7px;height:7px;border-radius:50%;background:#ffffff88}.photo-dots button[aria-pressed=true]:after{background:#fff}
.temple-detail-body{padding:24px}.temple-title{margin-bottom:24px}.temple-title h1{font:700 28px/1.35 Library,system-ui,sans-serif;margin:10px 0 6px}.temple-title p{margin:4px 0;color:var(--muted);font-size:15px}.temple-place{display:flex;gap:6px;align-items:center}.temple-section{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:23px;margin-bottom:16px;font-size:17px;line-height:1.85;overflow-wrap:anywhere;user-select:text;-webkit-user-select:text}.temple-section h2{font:700 19px/1.5 Library,system-ui,sans-serif;margin:0 0 12px;color:var(--ink)}.temple-section p{margin:0 0 12px}.temple-section p:last-child{margin-bottom:0}.temple-section ul{margin:0;padding-left:22px}.temple-section li{padding:4px 0}.temple-facts{margin:0}.temple-facts>div{display:grid;grid-template-columns:115px minmax(0,1fr);gap:14px;padding:13px 0;border-top:1px solid var(--line)}.temple-facts>div:first-child{border-top:0;padding-top:0}.temple-facts dt{color:var(--muted);font-size:14px}.temple-facts dd{margin:0;font-size:15px;line-height:1.75}.temple-visit{font-size:15px;border-top:1px solid var(--line);padding-top:14px;color:var(--ink)}.temple-sources{font-size:13px;line-height:1.8;padding:10px 4px;color:var(--muted)}.temple-sources summary{cursor:pointer;min-height:44px;display:list-item;padding:10px 0;font-size:14px}.temple-sources ul{padding-left:20px}.temple-sources a{overflow-wrap:anywhere}.temple-sources .fine{font-size:12px}.temple-detail-actions{display:flex;gap:10px;margin-top:14px}.temple-detail-actions>.primary{flex:1;background:#bd8b30;color:#fff;border-color:#bd8b30;font-size:16px;font-weight:700;min-height:50px}.temple-detail-actions>button{font-size:14px}
.space-scenes{margin:24px 0 35px}.space-scenes p{color:var(--muted);font-size:15px}.space-scene-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.space-scene{display:flex;flex-direction:column;align-items:stretch;gap:0;border-radius:15px;overflow:hidden;padding:0;text-align:left;min-width:0;border:2px solid var(--line)}.space-scene img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}.space-scene span{font-weight:700;font-size:15px;padding:10px 10px 3px}.space-scene small{font-size:12px;padding:0 10px 10px;color:var(--muted)}.space-scene[aria-pressed=true]{border-color:var(--gold);box-shadow:0 0 0 2px var(--gold)}.space-filter-chips{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0}.space-filter-chips button[aria-pressed=true]{background:#f4d685;color:#503810;border-color:#c6a454}.space-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.space-image-card{min-width:0;border:1px solid var(--line);border-radius:16px;background:var(--surface);overflow:hidden}.space-image-open{display:block;border:0;background:#e9e5da;padding:0;border-radius:0;width:100%}.space-image-open img{display:block;width:100%;height:220px;object-fit:contain}.space-image-card>div{padding:14px}.space-image-card h3{font:700 16px/1.5 Library,system-ui,sans-serif;margin:0 0 10px}.space-image-card .actions{gap:6px}.space-image-card .actions button{font-size:13px;padding:8px}.space-full-image{display:block;max-height:60dvh;width:100%;object-fit:contain;background:#eee9df}.space-image-dialog p{line-height:1.8;overflow-wrap:anywhere}.meditation-focus.scene-photo{background-image:linear-gradient(180deg,#0c171d55,#0c171d25 40%,#0c171d88),var(--scene-image)!important;background-size:cover;background-position:center}.scene-options{max-height:60dvh;overflow-y:auto}.scene-options button img{object-fit:cover}.scene-options button span{line-height:1.4}
body.dark .temple-hero,body.dark .temple-slide,body.dark .space-full-image,body.dark .space-image-open{background:#18251f}body.dark .temple-region{background:#644e20;color:#fff1bd}body.dark .space-filter-chips button[aria-pressed=true]{color:#30220b}
@media(max-width:800px){.temple-grid,.space-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.space-page-head h1{font-size:23px}.space-page-head{gap:8px}.space-page-head p{font-size:12px}.temple-region-label{max-width:112px}.temple-region-label select{font-size:14px;padding:8px}.temple-card-copy{padding:11px}.temple-card h2{font-size:16px}.temple-card p{font-size:12px}.temple-card small{font-size:11px}.temple-region{font-size:10px;padding:3px 8px}.temple-card-photo .temple-region{top:7px;right:7px}.temple-detail-body{padding:16px}.temple-section{padding:19px}.temple-section h2{font-size:18px}.temple-title h1{font-size:25px}.space-image-open img{height:175px}.space-image-card>div{padding:11px}.space-image-card h3{font-size:14px}.space-scene span{font-size:13px}.space-scene small{font-size:10px}.space-image-card .actions button{font-size:12px;padding:6px}#dialog.temple-dialog{margin:auto 0 0;width:100%;max-width:100%;height:calc(100dvh - max(12px,env(safe-area-inset-top)));max-height:calc(100dvh - max(12px,env(safe-area-inset-top)));border-radius:22px 22px 0 0}.temple-detail-body{padding-bottom:calc(20px + env(safe-area-inset-bottom))}.temple-facts>div{grid-template-columns:90px minmax(0,1fr);gap:10px}.temple-facts dd{font-size:14px}.temple-facts dt{font-size:13px}.temple-section{font-size:16px;line-height:1.85}}
@media(max-width:360px){.space-page-head h1{font-size:20px}.space-page-head p{display:none}.space-page-head>.icon{min-width:32px}.temple-region-label{max-width:95px}.temple-card h2{font-size:14px}.temple-card-copy{padding:10px}.temple-section{padding:16px}.temple-detail-body{padding:12px}.temple-facts>div{grid-template-columns:1fr;gap:4px}.space-scene-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.space-image-open img{height:140px}.temple-detail-actions{flex-wrap:wrap}.temple-detail-actions>.primary{min-width:100%}}
@media(prefers-reduced-motion:reduce){.temple-card{transition:none}.temple-carousel{scroll-behavior:auto}}

body:not(.dark)[data-route="temples"],body:not(.dark)[data-route="temple"],body:not(.dark)[data-route="gallery"]{--bg:#faf7ef;--surface:#fffdf8;background:var(--bg)}
.space-page-head>.icon{text-decoration:none}.space-page .space-search input{border:0!important;box-shadow:none!important;background:transparent!important;outline:0}.space-search:focus-within{outline:2px solid var(--gold);outline-offset:2px}

/* V80.1: only Explore, temple and image collection surfaces. */
.home-explore{margin-top:34px;--explore-accent:#906420}.explore-intro{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:24px}.explore-intro h2{margin:0;font:750 28px/1.3 Library,system-ui,sans-serif;letter-spacing:-.4px}.explore-intro p{margin:6px 0 0;font-size:14px;color:var(--muted)}.explore-lotus{opacity:.55;flex:none}.explore-lotus .lotus-icon{width:85px;height:65px}.explore-heading{display:flex;gap:12px;align-items:center;justify-content:space-between;margin:0 0 14px}.explore-heading h3{margin:0;font:650 18px/1.4 Library,system-ui,sans-serif}.explore-heading>a{display:flex;align-items:center;gap:5px;flex:none;font-size:13px;min-height:40px;color:var(--explore-accent);text-decoration:none}.explore-heading>a span{font-size:24px}.explore-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:30px}.explore-layout>*{min-width:0}.explore-photo-mosaic{height:480px;position:relative;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:repeat(6,1fr);gap:8px;overflow:hidden;border-radius:18px}.explore-photo-mosaic>a:not(.explore-gallery-more){display:block;overflow:hidden;border-radius:12px;grid-row:span 2;background:#eee8da}.explore-photo-mosaic>a:nth-child(1),.explore-photo-mosaic>a:nth-child(4){grid-row:span 3}.explore-photo-mosaic>a:nth-child(5){grid-row:span 1}.explore-photo-mosaic img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .3s}.explore-photo-mosaic>a:hover img{transform:scale(1.025)}.explore-photo-mosaic:after{content:'';position:absolute;inset:auto 0 0;height:90px;background:linear-gradient(transparent,var(--bg));pointer-events:none}.explore-photo-mosaic .explore-gallery-more{position:absolute;bottom:12px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:7px;white-space:nowrap;min-height:40px;padding:8px 17px;background:#fffdf5f5;color:#533b1d;border:1px solid #ded1b4;border-radius:30px;text-decoration:none;z-index:1;font-size:13px;box-shadow:0 3px 12px #52391312}.explore-gallery-more svg{width:17px;height:17px}.explore-scene-link{display:flex;align-items:center;gap:9px;min-height:44px;margin-top:10px;color:var(--explore-accent);text-decoration:none;font-size:13px}.explore-scene-link svg{width:19px;height:19px}.explore-scene-link>span{margin-left:auto;font-size:22px}.explore-collections{display:flex;flex-direction:column;gap:26px}.home-explore .home-reference-library{margin:0}.home-explore .ref-home-strip{gap:10px;scrollbar-width:thin;scrollbar-color:#ccb47c transparent;padding-bottom:9px}.home-explore .ref-home-strip>.ref-portrait-card{flex-basis:130px;background:transparent;border:0}.home-explore .ref-home-strip h4{font:600 13px/1.45 Library,system-ui,sans-serif;text-align:center;margin:8px 2px 0;min-height:40px}.explore-temple-strip{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x proximity;padding-bottom:10px;scrollbar-width:thin;scrollbar-color:#ccb47c transparent}.explore-temple-card{flex:0 0 188px;min-width:0;scroll-snap-align:start;color:var(--ink);text-decoration:none}.explore-temple-card>div{position:relative;border-radius:13px;overflow:hidden;background:#eee8da;aspect-ratio:1.5}.explore-temple-card img{width:100%;height:100%;object-fit:cover;display:block}.explore-temple-card>div>span{position:absolute;left:8px;top:8px;padding:3px 8px;border-radius:20px;background:#fff3d4e8;color:#704a10;font-size:10px}.explore-temple-card h4{font:650 15px/1.4 Library,system-ui,sans-serif;margin:8px 0 4px}.explore-temple-card p{display:flex;align-items:center;gap:4px;color:var(--muted);font-size:12px;margin:0}.explore-temple-card svg{width:13px;height:13px}.explore-find-temple{display:flex;align-items:center;justify-content:center;gap:9px;color:var(--explore-accent);text-decoration:none;border:1px solid #dbc89e;border-radius:12px;min-height:44px;font-size:14px;margin-top:8px;background:#fff4d940}.explore-find-temple svg{width:18px;height:18px}.explore-prayers,.explore-reading{margin-top:28px}.explore-prayer-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.explore-prayer-cards>a{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:19px;overflow:hidden;text-decoration:none;color:var(--ink);min-width:0}.explore-prayer-cards>a>span:first-child{font-size:10px;letter-spacing:1.2px;color:var(--explore-accent)}.explore-prayer-cards h4{font:650 17px/1.5 Library,system-ui,sans-serif;margin:6px 0}.explore-prayer-cards p{font-size:14px;line-height:1.65;margin:0;color:var(--muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;max-width:94%}.explore-prayer-lotus{position:absolute;right:-7px;bottom:-6px;opacity:.15;pointer-events:none}.explore-prayer-lotus .lotus-icon{width:85px;height:65px}.explore-article-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.explore-article{display:flex;align-items:flex-start;gap:12px;text-decoration:none;color:var(--ink);min-width:0;padding:14px;background:var(--surface);border:1px solid var(--line);border-radius:15px}.explore-article>img{flex:none;width:64px;height:76px;object-fit:cover;border-radius:9px}.explore-article>div{min-width:0;flex:1}.explore-article h4{font:650 15px/1.45 Library,system-ui,sans-serif;margin:0 0 5px}.explore-article p{font-size:12px;line-height:1.5;color:var(--muted);margin:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.explore-article>span{font-size:21px;color:var(--explore-accent)}
/* Temple sheet: calm photo header, compact facts, clear scanning hierarchy. */
#dialog.temple-dialog{background:#f5f2ed;width:760px;padding-bottom:0;isolation:isolate}#dialog.temple-dialog>header{position:sticky;top:0;height:0;min-height:0;padding:0;overflow:visible;background:transparent;z-index:6;border:0}#dialog.temple-dialog>header h2{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}#dialog.temple-dialog>header button{position:absolute;right:12px;top:12px;background:#fffdf5ed;border-radius:50%;box-shadow:0 2px 9px #0002;color:#382b18;width:44px;height:44px;padding:0;border:1px solid #fff8}.temple-hero{height:370px;position:relative;overflow:hidden;border-radius:0;background:#d1c2a4}.temple-carousel,.temple-slide{height:100%;aspect-ratio:auto}.temple-slide img{object-fit:cover}.temple-hero:after{content:'';position:absolute;inset:35% 0 0;pointer-events:none;background:linear-gradient(transparent,#171208c9)}.temple-hero .temple-title{position:absolute;left:24px;right:70px;bottom:44px;z-index:2;margin:0;pointer-events:none;color:white}.temple-title h1{font:750 29px/1.3 Library,system-ui,sans-serif;color:#fff;margin:8px 0 5px;text-shadow:0 2px 12px #0006}.temple-title p{color:#fff9ef;font-size:14px;line-height:1.45;margin:4px 0}.temple-title .temple-region{background:#fff0cfdf;color:#684312}.temple-title .temple-place svg{width:15px;height:15px}.photo-prev,.photo-next{top:38%;z-index:3;background:#fffdf1de;width:40px;min-height:40px;height:40px}.photo-dots{z-index:3;bottom:8px;background:transparent}.photo-dots button{width:28px;min-height:36px}.photo-dots button:after{width:7px;height:7px;box-shadow:0 1px 4px #0005}.temple-photo-count{position:absolute;bottom:15px;right:18px;z-index:3;color:white;background:#0005;border-radius:20px;padding:4px 8px;font-size:12px}.temple-jump-links{display:flex;gap:8px;overflow-x:auto;padding:14px 18px 0;scrollbar-width:none}.temple-jump-links button{flex:1;white-space:nowrap;padding:7px 12px;min-height:40px;border-radius:20px;background:#fffdf7;border:1px solid #e6dcc7;color:#76511c;font-size:13px}.temple-jump-links button:hover{background:#f8e6bb}.temple-detail-body{padding:18px 20px 24px}.temple-section{border:0;padding:21px 23px;border-radius:20px;background:#fffefd;box-shadow:0 4px 18px #47320e05;font:400 16px/1.75 Library,system-ui,sans-serif;margin:0 0 16px;scroll-margin-top:66px}.temple-section h2{display:flex;align-items:center;gap:9px;font:700 18px/1.4 Library,system-ui,sans-serif;margin:0 0 13px}.temple-section-icon{display:inline-flex;align-items:center;justify-content:center;flex:none;width:28px;height:28px;color:#9d6e27}.temple-section-icon svg{width:24px;height:26px}.temple-section p{margin:0 0 12px}.temple-facts>div{grid-template-columns:110px minmax(0,1fr);gap:14px;padding:8px 0;border:0}.temple-facts dt,.temple-facts dd{font-size:15px;line-height:1.6}.temple-facts dd{font-weight:500}.temple-visit-note{display:flex;gap:9px;background:#faf5e9;border-radius:12px;padding:12px;margin-top:16px;color:#6b5638;font-size:14px;line-height:1.65}.temple-visit-note svg{width:17px;height:17px;margin-top:4px;flex:none}.temple-visit-note p{margin:0}.temple-highlights{padding:0!important;list-style:none}.temple-highlights li{display:flex;gap:9px;align-items:flex-start;padding:5px 0}.temple-highlights li>span{display:flex;align-items:center;justify-content:center;flex:none;width:19px;height:19px;background:#b9893d;color:white;border-radius:50%;font-size:12px;font-weight:700;margin-top:4px}.temple-festivals article{border-bottom:1px solid #eae5dc;padding:0 0 13px;margin:0 0 13px}.temple-festivals h3{font:650 16px/1.5 Library,system-ui,sans-serif;margin:0}.temple-festivals .temple-festival-date{font-size:14px;color:#916218;margin:2px 0 4px}.temple-detail-actions{margin:20px 0 10px}.temple-detail-actions>.primary{background:linear-gradient(110deg,#b38538,#71501e);border:0;font-size:16px;min-height:50px;border-radius:14px}.temple-detail-actions>button{border-radius:14px;background:#fffdf7}.temple-sources{padding:0 5px}.temple-sources summary{font-size:12px}.temple-dialog[open]{animation:temple-reveal .23s ease-out}@keyframes temple-reveal{from{opacity:.7;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
.space-gallery{display:block;columns:3;column-gap:16px}.space-image-card{break-inside:avoid;margin:0 0 16px}.space-image-open img{height:auto;max-height:440px;object-fit:cover}.space-image-card h3{font-size:14px}.space-image-card>div{padding:12px}.space-image-card .actions{flex-wrap:wrap}.space-image-card .actions button{min-height:40px}.temple-card-photo .temple-region{right:auto;left:9px;background:#a67a32e8;color:white}.temple-card{transition:transform .2s,box-shadow .2s}.temple-card:hover{transform:translateY(-2px)}
body.dark .home-explore{--explore-accent:#e9c379}body.dark #dialog.temple-dialog{background:#22231f}body.dark .temple-section{background:#2c2d27}body.dark .temple-visit-note{background:#353123;color:#efddbe}body.dark .temple-jump-links button,body.dark .temple-detail-actions>button{background:#353123;color:#f0d19a;border-color:#655233}body.dark .temple-festival-date{color:#e9c379}body.dark .explore-find-temple{background:#473b2540;border-color:#6f5b36}body.dark .explore-photo-mosaic:after{background:linear-gradient(transparent,var(--bg))}
@media(max-width:1000px){.explore-article-list{grid-template-columns:1fr}.explore-article>img{width:76px;height:70px}.explore-article p{-webkit-line-clamp:2}.explore-layout{gap:22px}.explore-photo-mosaic{height:460px}}
@media(max-width:700px){.home-explore{margin-top:28px}.explore-intro{margin-bottom:18px}.explore-intro h2{font-size:24px}.explore-intro p{font-size:12px;max-width:270px}.explore-lotus .lotus-icon{width:65px;height:52px}.explore-layout{display:block}.explore-heading{margin-bottom:10px}.explore-heading h3{font-size:17px}.explore-heading>a{font-size:12px}.explore-photo-mosaic{height:360px;gap:7px;border-radius:14px}.explore-collections{gap:22px;margin-top:23px}.home-explore .ref-home-strip>.ref-portrait-card{flex-basis:122px}.home-explore .ref-home-strip h4{font-size:12px}.explore-temple-card{flex-basis:172px}.explore-temple-card h4{font-size:14px}.explore-prayer-cards{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x proximity;padding-bottom:9px;scrollbar-width:thin}.explore-prayer-cards>a{flex:0 0 70%;scroll-snap-align:start;padding:16px}.explore-prayer-cards h4{font-size:16px}.explore-prayer-cards p{font-size:13px}.explore-prayers,.explore-reading{margin-top:24px}.explore-article{padding:12px;gap:11px}.explore-article h4{font-size:15px}.space-gallery{columns:2;column-gap:10px}.space-image-card{margin-bottom:10px}.space-image-card>div{padding:9px}.space-image-card .actions button{padding:5px 7px}.space-image-card h3{font-size:13px}.space-image-open img{height:auto;max-height:320px}.temple-hero{height:300px}.temple-hero .temple-title{left:18px;right:48px;bottom:42px}.temple-title h1{font-size:25px}.temple-title p{font-size:13px}.temple-jump-links{gap:6px;padding:12px 14px 0}.temple-jump-links button{font-size:12px;padding:6px 9px}.temple-detail-body{padding:14px 14px calc(22px + env(safe-area-inset-bottom))}.temple-section{padding:18px;border-radius:19px;font-size:16px;line-height:1.75;margin-bottom:14px}.temple-section h2{font-size:17px;gap:8px}.temple-facts>div{grid-template-columns:95px minmax(0,1fr);gap:12px;padding:7px 0}.temple-facts dt,.temple-facts dd{font-size:14px}.temple-visit-note{font-size:13px;padding:11px}.temple-detail-actions>button{font-size:0;min-width:50px;padding:12px}.temple-detail-actions>button svg{width:20px;height:20px}.temple-detail-actions>.primary{font-size:15px;min-width:0}.photo-prev,.photo-next{width:35px;height:35px;min-height:35px;font-size:25px}.temple-card h2{font-size:15px}.temple-card-copy{padding:10px}.temple-card p{font-size:12px}.temple-card small{font-size:11px}}
@media(max-width:360px){.explore-intro p{max-width:210px}.explore-heading h3{font-size:15px}.explore-heading>a{font-size:11px}.explore-photo-mosaic{height:305px}.temple-hero{height:270px}.temple-title h1{font-size:23px}.temple-section{padding:15px}.temple-facts>div{grid-template-columns:86px minmax(0,1fr);gap:8px}.temple-detail-actions{flex-wrap:nowrap}.temple-detail-actions>.primary{min-width:0}.temple-jump-links{gap:4px}.temple-jump-links button{padding:6px 8px}}
@media(prefers-reduced-motion:reduce){.temple-dialog[open]{animation:none}.temple-card,.explore-photo-mosaic img{transition:none}.temple-card:hover,.explore-photo-mosaic>a:hover img{transform:none}}

/* Facts remain legible as short labelled cards; the full address spans both columns. */
.temple-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 20px;margin:0}.temple-facts>div{display:block;padding:0;min-width:0}.temple-facts dt{font-size:12px;color:var(--muted);font-weight:400;margin:0 0 4px}.temple-facts dd{margin:0;overflow-wrap:anywhere}.temple-facts .temple-fact-address{grid-column:1/-1;border-top:1px solid var(--line);padding-top:13px}.temple-facts dd{font-size:14px;line-height:1.6}.temple-festivals p:last-child{margin-bottom:0}

/* V81 directory controls are scoped; existing reading and practice UI are preserved. */
.temple-filters{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px;margin:12px 0}.temple-filters label{display:grid;gap:6px;min-width:0;font-size:14px;color:var(--muted)}.temple-filters select{width:100%;min-height:48px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink);font:inherit;padding:10px 12px}.temple-filters button{min-height:48px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink);padding:10px 14px}.temple-directory-link{display:inline-flex;align-items:center;gap:8px;min-height:44px;color:#76511c;font-size:14px;text-underline-offset:4px}.temple-filter-hint{margin:6px 0;font-size:13px;line-height:1.6;color:var(--muted)}.temple-province-note{font-size:13px;color:var(--muted);line-height:1.7}.temple-grid>[hidden]{display:none}.temple-detail-body .temple-permalink{display:block;min-height:44px;padding:12px 0;text-align:center;font-size:14px;color:#76511c}.temple-title h1{overflow-wrap:anywhere}.temple-title p{overflow-wrap:anywhere}.temple-photo-description{padding:9px 18px;margin:0;font-size:12px;line-height:1.6;color:var(--muted);background:var(--surface)}.temple-photo-description:empty{display:none}body.dark .temple-directory-link,body.dark .temple-permalink{color:#efd18e}
@font-face{font-family:TempleDirectory;src:url('/tu-tap/fonts/be-vietnam-pro-regular.woff2') format('woff2');font-weight:400;font-display:swap}@font-face{font-family:TempleDirectory;src:url('/tu-tap/fonts/be-vietnam-pro-bold.woff2') format('woff2');font-weight:700;font-display:swap}
body.temple-public{--bg:#faf6ec;--surface:#fffefa;--ink:#382f23;--muted:#706453;--line:#e7dcc7;margin:0;color:var(--ink);background:var(--bg);font:400 16px/1.7 TempleDirectory,system-ui,sans-serif;-webkit-text-size-adjust:100%}body.temple-public *{box-sizing:border-box}body.temple-public [hidden]{display:none!important}.temple-public a{color:#78551b;text-underline-offset:4px}.temple-public button,.temple-public input,.temple-public select{font:inherit}.temple-public button,.temple-public .button{display:inline-flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;min-height:44px;border:1px solid var(--line);border-radius:12px;padding:9px 14px;background:var(--surface);color:var(--ink);text-decoration:none}.temple-public button:focus-visible,.temple-public a:focus-visible,.temple-public select:focus-visible,.temple-public input:focus-visible{outline:3px solid #9b7028;outline-offset:3px}.temple-public svg{width:20px;height:20px;vertical-align:middle;flex:none}.temple-public .sr-only{position:absolute;clip-path:inset(50%);width:1px;height:1px;overflow:hidden}.temple-public .skip-link{position:fixed;top:-100px;left:10px;z-index:20;background:white;padding:12px}.temple-public .skip-link:focus{top:8px}.temple-public-header{display:flex;justify-content:space-between;align-items:center;gap:16px;max-width:1140px;margin:auto;padding:16px 24px}.temple-public-brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-weight:700}.temple-public-brand img{width:38px;height:38px}.temple-public-header nav{display:flex;gap:16px;font-size:14px}.temple-public-header nav a{min-height:44px;display:flex;align-items:center}.temple-public main{max-width:1100px;margin:auto;padding:0 24px 40px}.temple-breadcrumb{display:flex;gap:7px;flex-wrap:wrap;padding:10px 0 20px;font-size:13px;color:var(--muted)}.temple-breadcrumb a{color:inherit}.temple-public-intro{padding:28px 0 20px;max-width:780px}.temple-public-intro h1{font-size:clamp(28px,4vw,44px);line-height:1.25;letter-spacing:-.7px;margin:0 0 15px}.temple-public-intro p{margin:0 0 12px;color:var(--muted)}.temple-public-intro .temple-eyebrow{font-size:12px;color:#916627;letter-spacing:1.8px;text-transform:uppercase;margin-bottom:10px}.temple-stat{display:inline-block;border:1px solid #e9d5a4;border-radius:30px;padding:6px 13px;font-size:13px;background:#fff4d9;color:#79551a}.temple-public .space-search{margin-top:12px}.temple-public .space-search input{font:inherit;color:var(--ink);outline-offset:4px}.temple-public .space-search button{min-width:44px;border:0}.temple-public .temple-grid{margin:20px 0 32px}.temple-public .temple-card h2{font-family:inherit}.temple-public .temple-card p{font-size:14px}.temple-public .temple-card small{font-size:12px}.province-directory{border-top:1px solid var(--line);padding-top:28px;margin:26px 0}.province-directory h2{font-size:22px;margin:0 0 9px}.province-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;list-style:none;padding:0;margin:16px 0}.province-links li{min-width:0}.province-links a{display:flex;gap:8px;justify-content:space-between;align-items:center;border:1px solid var(--line);border-radius:12px;padding:12px;text-decoration:none;background:var(--surface);font-size:14px}.province-links small{color:var(--muted);white-space:nowrap}.temple-public-footer{border-top:1px solid var(--line);padding:24px;max-width:1100px;margin:auto;font-size:13px;color:var(--muted)}.temple-public-footer nav{display:flex;gap:20px;flex-wrap:wrap}.temple-public-footer p{max-width:760px}.temple-public .temple-article{max-width:840px;margin:auto;border:1px solid var(--line);border-radius:22px;overflow:hidden;background:#f4efe5}.temple-public .temple-hero{height:420px}.temple-public .temple-title h1{font-family:inherit;font-size:clamp(24px,4vw,36px)}.temple-public .temple-title p{color:white}.temple-public .temple-title .temple-region{font-size:12px}.temple-public .temple-title{right:50px}.temple-public .photo-prev,.temple-public .photo-next{position:absolute;width:42px;min-height:42px;padding:0;background:#fffdf5e8;border-radius:50%;font-size:30px}.temple-public .photo-dots button{min-height:40px;min-width:28px;width:28px;padding:0;border:0;background:transparent}.temple-public .temple-section{font-family:inherit;font-size:17px;line-height:1.85}.temple-public .temple-section h2{font-family:inherit;font-size:20px}.temple-public .temple-section p{text-wrap:pretty}.temple-public .temple-section-icon svg{width:24px;height:26px}.temple-public .temple-detail-actions{flex-wrap:wrap}.temple-public .temple-detail-actions>.primary{font-size:15px;min-width:0}.temple-public .temple-jump-links{scrollbar-width:thin;flex-wrap:wrap}.temple-public .temple-jump-links a{display:flex;align-items:center;min-height:44px;background:var(--surface);border:1px solid var(--line);border-radius:24px;padding:8px 14px;font-size:13px;text-decoration:none}.temple-public .temple-sources{overflow-wrap:anywhere}.temple-public .temple-facts dd{font-size:15px}.temple-public .related-temples{margin:30px 0}.temple-public .related-temples h2{font-size:22px}.temple-public .directory-back{display:inline-flex;align-items:center;gap:8px;min-height:44px;margin:0 0 12px}.temple-public .temple-status{padding:10px 0;font-size:14px;color:var(--muted)}.temple-public .temple-detail-body{padding-bottom:28px}.temple-public .temple-sources summary{font-size:13px}
@media(max-width:700px){.temple-public-header{padding:12px 16px;gap:12px}.temple-public-header nav{gap:12px;font-size:12px}.temple-public-brand{font-size:14px;gap:7px}.temple-public-brand img{width:29px;height:29px}.temple-public main{padding:0 14px 30px}.temple-public-intro{padding:16px 0 10px}.temple-public-intro h1{font-size:29px}.temple-public-intro p{font-size:15px}.province-links{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.province-links a{padding:10px;font-size:13px}.province-links small{font-size:11px}.temple-public .temple-hero{height:340px}.temple-public .temple-section{font-size:16px;line-height:1.8;padding:18px}.temple-public .temple-section h2{font-size:18px}.temple-public .temple-detail-body{padding:12px}.temple-public .temple-card-copy{padding:11px}.temple-public .temple-card h2{font-size:15px}.temple-public .temple-card p{font-size:12px}.temple-public .temple-breadcrumb{font-size:12px;gap:6px}.temple-public .temple-detail-actions>button{font-size:14px}.temple-public .temple-detail-actions>.primary{flex-basis:100%}.temple-public .temple-detail-actions>.button{flex:1}.temple-public .temple-facts dd{font-size:14px}.temple-public .temple-jump-links{gap:6px;padding:12px 12px 0}.temple-public .temple-jump-links a{font-size:12px;padding:8px 11px}}
@media(max-width:360px){.temple-filters{grid-template-columns:minmax(0,1fr)}.temple-filters button{justify-self:start;padding:8px 12px;min-height:44px}.temple-public-header{flex-wrap:wrap}.temple-public-header nav{margin-left:auto}.temple-public .temple-hero{height:320px}.temple-public .temple-title h1{font-size:24px}.province-links{grid-template-columns:1fr}.temple-public .temple-facts{grid-template-columns:1fr}}

/* Keep carousel controls clear of long temple titles at small widths. */
#dialog.temple-dialog .photo-prev,#dialog.temple-dialog .photo-next{top:12px;transform:none;width:44px;height:44px;min-height:44px;font-size:29px}
#dialog.temple-dialog .photo-prev{left:12px}
#dialog.temple-dialog .photo-next{left:64px;right:auto}
.temple-public .photo-prev,.temple-public .photo-next{top:18px;transform:none}

/* Phase 8: scoped calendar styles. Existing readers and practice layouts remain intact. */
.cal-page{--cal-ink:#4c3924;--cal-muted:#74614c;--cal-line:#e8dcc5;--cal-paper:#fffcf5;--cal-tint:#f9edcf;--cal-gold:#8a591c;color:var(--cal-ink);max-width:1150px;margin:0 auto;font-size:16px;line-height:1.65}.cal-page-head{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:8px 0 24px}.cal-page-head h1{font-size:clamp(28px,3vw,36px);line-height:1.25;margin:6px 0 10px;letter-spacing:-.5px}.cal-page-head p{margin:0;color:var(--cal-muted);max-width:600px}.cal-page .eyebrow{font-size:12px;letter-spacing:1.3px;color:#8a672f}.cal-page-head>.primary{flex-shrink:0}.cal-page button,.cal-page .button,.cal-editor button{font-size:15px;min-height:46px}.cal-page .primary,.cal-editor .primary,.cal-holiday-detail .primary{background:#8a591c;color:#fffdf8;border-color:#8a591c}.cal-page .primary:hover,.cal-editor .primary:hover{background:#714714}.cal-page input:focus-visible,.cal-page button:focus-visible,.cal-page a:focus-visible,.cal-editor :focus-visible{outline:3px solid #93611d;outline-offset:3px}.cal-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;padding:6px;background:#f3e7cd;border:1px solid var(--cal-line);border-radius:20px;margin-bottom:24px}.cal-tabs button{border:1px solid transparent;background:transparent;border-radius:14px;padding:14px 8px;gap:9px;line-height:1.35;font-weight:700;color:#70593b}.cal-tabs button.active{color:#754b13;background:#fffdf6;border-color:#e2cd9f;box-shadow:0 3px 10px #7856270a}.cal-tabs svg{width:23px;height:23px}.cal-tabs .lotus-icon{width:25px;height:23px;object-fit:contain}.cal-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:start;gap:22px}.cal-panel{border:1px solid var(--cal-line);border-radius:22px;padding:24px;background:var(--cal-paper);box-shadow:0 7px 25px #6b4f1e06;min-width:0}.cal-panel h2{font-size:23px;margin:0 0 10px;line-height:1.4}.cal-panel h3{line-height:1.4}.cal-panel p{margin:8px 0 16px}.cal-month-nav{display:flex;align-items:center;gap:5px;flex-wrap:wrap}.cal-month-nav>button{border-color:transparent;background:transparent;min-width:44px;padding:8px;font-size:24px}.cal-month-nav #choose-month{font-size:19px;flex:1;justify-content:space-between}.cal-month-nav #today{font-size:14px;border-color:var(--cal-line);padding:8px 12px}.cal-grid-guide{font-size:13px;color:var(--cal-muted);text-align:center;margin:14px 0!important}.cal-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.cal-weekday{text-align:center;font-size:13px;font-weight:700;padding:9px 0;color:var(--cal-muted)}.cal-grid .cal-day{display:flex;flex-direction:column;gap:0;min-width:0;min-height:72px;border:1px solid transparent;background:transparent;padding:7px 0 5px;border-radius:14px;line-height:1.3;color:var(--cal-ink)}.cal-day strong{font-size:21px;font-weight:700;line-height:1.4}.cal-day small{font-size:12px;color:var(--cal-muted)}.cal-day.outside{background:#f6f3ec;color:#867b6e}.cal-day.is-today{border-color:#bc8d40;background:#fcf1d7}.cal-grid .cal-day.selected{background:#8a591c;color:#fff;border-color:#8a591c;box-shadow:0 4px 12px #8a591c22}.cal-day.selected small{color:#fff3d9}.cal-grid .cal-day:hover:not(.selected){border-color:#ceac71;background:#f8eedc}.cal-dots{height:9px;display:flex;gap:3px;justify-content:center;align-items:center;margin-top:3px}.holiday-dot,.personal-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#c48a26}.personal-dot{background:#46736b}.cal-day.selected .holiday-dot{background:#ffe5a1}.cal-day.selected .personal-dot{background:#fff}.cal-legend{display:flex;justify-content:center;gap:20px;padding:16px 0 12px;font-size:12px;color:var(--cal-muted)}.cal-legend span{display:flex;align-items:center;gap:6px}.cal-filters{border-top:1px solid var(--cal-line);padding:12px 0;display:flex;flex-wrap:wrap;gap:2px 17px}.cal-check{display:flex;align-items:center;gap:10px;min-height:46px;cursor:pointer;font-size:15px;line-height:1.5;padding:7px 0}.cal-check input[type=checkbox]{width:22px;height:22px;min-width:22px;accent-color:#8a591c;flex-shrink:0}.cal-full-button{width:100%}.cal-selected-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.cal-selected-heading h2{font-size:25px;margin:0}.cal-selected-heading p{margin:5px 0!important}.cal-selected-number{font-family:Book,Georgia,serif;color:#aa7b30;font-size:64px;line-height:1}.cal-cycle{font-size:13px;color:var(--cal-muted);border-bottom:1px solid var(--cal-line);padding-bottom:18px}.cal-day-events{margin:20px 0}.cal-event{display:flex;align-items:flex-start;gap:13px;padding:20px 0;border-bottom:1px solid var(--cal-line);min-width:0}.cal-event:last-child{border-bottom:0}.cal-event-symbol{width:38px;height:38px;border-radius:13px;background:var(--cal-tint);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:#866126}.cal-event-symbol .lotus-icon{width:27px;height:25px;object-fit:contain}.cal-event-private .cal-event-symbol{background:#e9f0e9;color:#43675d}.cal-event-body{min-width:0;flex:1}.cal-event h3{font-size:19px;margin:5px 0 8px;overflow-wrap:anywhere}.cal-tag{font-size:12px;line-height:1.5;color:#755424;font-weight:700}.cal-event-time{font-size:14px;color:var(--cal-muted);margin:6px 0!important}.cal-event-description,.cal-note{font-size:15px;white-space:pre-wrap;overflow-wrap:anywhere}.cal-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:14px}.cal-actions button,.cal-actions .button{padding:8px 13px;font-size:14px}.cal-actions svg{width:18px;height:18px}.cal-empty{text-align:center;padding:30px 14px;color:var(--cal-muted)}.cal-empty>svg,.cal-empty>.lotus-icon{width:53px;height:47px;color:#ba9351;object-fit:contain}.cal-empty h3{font-size:21px;color:var(--cal-ink);margin:12px 0}.cal-empty p{margin:8px auto 18px;max-width:380px}.cal-footnote{font-size:13px;color:var(--cal-muted);text-align:center;margin:22px 10px}.cal-section-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px}.cal-section-heading p{font-size:15px;color:var(--cal-muted);margin:5px 0}.cal-search{display:block;font-size:14px;font-weight:700;margin-bottom:18px}.cal-search input{font-size:16px;font-weight:400;margin-top:7px}.cal-soft{background:#f9f0dd;border-radius:12px;padding:14px 16px;font-size:14px;color:#705839;line-height:1.7}.cal-month-label{display:block;color:#7e5b27;background:#f6eedf;border-radius:12px;padding:10px 16px;font-size:17px;margin:25px 0 0}.cal-subtabs,.cal-platforms{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0}.cal-subtabs button.active,.cal-platforms button.active{background:#f8ebca;color:#744e17;border-color:#bf9854}.cal-count{font-size:14px;padding:3px 10px;border-radius:20px;vertical-align:middle;background:var(--cal-tint)}.cal-private-record{padding:22px 0;border-bottom:1px solid var(--cal-line)}.cal-private-record:last-child{border-bottom:0}.cal-private-record-head{display:flex;align-items:center;gap:15px}.cal-private-record-head img{border-radius:14px;object-fit:cover;flex-shrink:0}.cal-private-record-head h3{margin:3px 0 7px;font-size:20px;overflow-wrap:anywhere}.cal-private-record-head p{margin:0;font-size:14px;color:var(--cal-muted)}.cal-private-record .cal-delete{color:#954b32;border-color:transparent}.cal-panel-icon{display:flex;align-items:center;justify-content:center;border-radius:16px;background:#f8eaca;color:#966725;width:50px;height:50px;flex-shrink:0}.cal-panel-icon svg{width:27px;height:27px}.cal-reminders{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);gap:22px;align-items:start}.cal-reminder-primary{grid-row:span 2}.cal-reminder-primary>.cal-panel-icon{margin-bottom:16px}.cal-steps{margin:16px 0;padding-left:25px}.cal-steps li{padding-left:5px;margin:12px 0;font-size:15px}.cal-connection{border-top:1px solid var(--cal-line);padding-top:20px;margin-top:20px}.cal-connection h3{font-size:20px;margin:0 0 8px}.cal-link-result{background:#f8f1e2;padding:16px;border-radius:14px;margin-top:18px}.cal-link-result input{font-size:14px;margin-top:8px}.cal-toggle{font-weight:700}.cal-page .fine{font-size:13px;color:var(--cal-muted);line-height:1.65}.cal-holiday-detail{font-size:16px;line-height:1.85}.cal-holiday-detail p{margin:15px 0}.cal-holiday-detail .cal-soft{font-size:15px}
/* Forms keep essential choices first, advanced choices folded. */
dialog:has(.cal-editor),dialog:has(.cal-holiday-detail){max-width:620px;width:calc(100% - 28px);max-height:calc(100dvh - 32px);border-radius:22px}dialog:has(.cal-editor) header h2{font-size:22px}.cal-editor{font-size:16px;line-height:1.6}.cal-editor>label,.cal-editor .cal-form-pair>label,.cal-editor .cal-form-three>label,.cal-advanced>label,.cal-editor [data-anniversary]>label{display:block;font-size:15px;font-weight:700;margin:14px 0}.cal-editor input,.cal-editor select,.cal-editor textarea{font-size:16px!important;font-weight:400;margin-top:6px}.cal-editor .cal-check{display:flex;font-weight:400!important}.cal-editor .cal-check input{margin:0}.cal-form-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.cal-form-three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.cal-editor fieldset{min-width:0;border:1px solid #e6d7bd;border-radius:14px;margin:16px 0;padding:8px 14px 10px}.cal-editor legend{font-size:14px;font-weight:700;padding:0 6px}.cal-date-preview{background:#f8f0df;padding:10px 14px;border-radius:10px;font-size:14px;color:#745520}.cal-weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;margin:5px 0}.cal-weekdays label{display:flex;flex-direction:column;align-items:center;border-radius:10px;padding:6px 0;min-height:60px;background:#faf5e9;font-size:14px;cursor:pointer}.cal-weekdays label:has(input:checked){background:#f1dfb6}.cal-weekdays input{margin:0 0 5px;accent-color:#8a591c}.cal-advanced{border:1px solid #e8dac0;border-radius:14px;padding:14px 16px;margin:18px 0}.cal-advanced summary{cursor:pointer;font-size:15px;font-weight:700;min-height:34px;display:list-item;padding-top:4px}.cal-form-footer{display:flex;justify-content:flex-end;gap:10px;background:var(--surface);padding:14px 0 3px;margin-top:12px;position:sticky;bottom:0}.cal-form-footer button{min-width:112px}.cal-inline{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:14px}.cal-editor .error:empty{display:none}.cal-editor .error{background:#fff0e9;border:1px solid #b66f53;border-radius:10px;padding:12px;font-size:15px}.cal-editor textarea{min-height:100px}.cal-page button,.cal-editor button{transition:background-color .15s,border-color .15s}
body.dark .cal-page{--cal-ink:#f6e9cc;--cal-muted:#c8bda8;--cal-line:#66563b;--cal-paper:#302b22;--cal-tint:#4d3d23;--cal-gold:#eed09b}body.dark .cal-tabs,body.dark .cal-soft,body.dark .cal-month-label,body.dark .cal-link-result,body.dark .cal-date-preview{background:#463822;color:#f0dcac}body.dark .cal-tabs button.active,body.dark .cal-day.outside,body.dark .cal-weekdays label{background:#393328;color:#eadbbe}body.dark .cal-tabs button,body.dark .cal-tag,body.dark .cal-page .eyebrow{color:#e6c27b}body.dark .cal-grid .cal-day.is-today:not(.selected),body.dark .cal-grid .cal-day:hover:not(.selected){background:#574324}body.dark .cal-day.selected,body.dark .cal-page .primary{background:#95631d;color:white}body.dark .cal-empty h3{color:var(--cal-ink)}body.dark .cal-editor .error{background:#4b2921;color:#ffe6dc}
@media(max-width:1000px){.cal-layout{gap:16px;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.cal-panel{padding:18px}.cal-month-nav #today{flex-basis:100%;margin-top:4px}.cal-month-nav #choose-month{font-size:17px}.cal-reminders{grid-template-columns:1fr}.cal-reminder-primary{grid-row:auto}}
@media(max-width:760px){.cal-page-head{align-items:flex-start;gap:13px;margin:3px 0 20px}.cal-page-head h1{font-size:29px}.cal-page-head p:not(.eyebrow){font-size:14px}.cal-page-head>.primary{font-size:14px;padding:10px 12px}.cal-tabs{padding:5px;border-radius:17px;gap:3px;margin-bottom:18px}.cal-tabs button{flex-direction:column;padding:11px 3px;font-size:12px;gap:7px;border-radius:12px;min-height:76px}.cal-layout{grid-template-columns:1fr}.cal-panel{border-radius:19px;padding:18px}.cal-month-nav #today{flex-basis:auto;margin:0}.cal-grid{gap:4px}.cal-grid .cal-day{min-height:64px}.cal-month-nav #choose-month{font-size:18px}.cal-selected-number{font-size:55px}.cal-selected-heading h2{font-size:24px}.cal-event h3{font-size:19px}.cal-event-symbol{width:34px;height:34px}.cal-event{gap:10px}.cal-event .cal-actions{margin-left:0}.cal-section-heading{align-items:flex-start;flex-wrap:wrap;gap:10px}.cal-section-heading h2{font-size:23px}.cal-reminders{gap:16px}.cal-page .cal-actions>button,.cal-page .cal-actions>.button{font-size:14px}.cal-footnote{font-size:12px;margin-top:18px}.cal-subtabs{gap:6px}.cal-subtabs button{font-size:14px;padding:9px 11px}.cal-platforms button{flex:1;font-size:14px}.cal-page .cal-steps{padding-left:22px}.cal-page .cal-steps li{font-size:15px}.cal-editor .cal-form-pair{gap:12px}.cal-editor .cal-form-pair>label{font-size:14px}.cal-private-record-head h3{font-size:19px}.cal-private-record-head{align-items:flex-start}.cal-private-record>p{font-size:14px}}
@media(max-width:370px){.cal-page-head{flex-wrap:wrap}.cal-page-head>.primary{width:100%}.cal-panel{padding:12px}.cal-tabs button{font-size:11px}.cal-grid{gap:2px}.cal-month-nav #choose-month{font-size:16px}.cal-month-nav #today{padding:6px 8px;font-size:12px}.cal-form-pair{grid-template-columns:1fr;gap:0}.cal-editor .cal-form-pair>label{margin:9px 0}.cal-weekdays{gap:3px}.cal-weekdays label{font-size:12px}.cal-event{gap:8px}.cal-event-symbol{display:none}.cal-actions button{padding:8px 10px}}
@media(prefers-reduced-motion:reduce){.cal-page *,.cal-editor *{transition:none!important;animation:none!important}}
.cal-form-pair>label:first-child:has(+[hidden]){grid-column:1/-1}
@media(max-width:760px){.cal-tabs button{font-size:14px;min-height:84px}}
@media(max-width:370px){.cal-tabs button{font-size:13px}.cal-month-nav{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;gap:4px}.cal-month-nav #choose-month{font-size:16px;white-space:nowrap;padding:8px 2px}.cal-month-nav #today{grid-column:1/-1;margin-top:6px}}

/* V82.1: event discovery and artwork. No selectors target PDF/audio/practice views. */
.cal-public-event{display:flex;align-items:center;gap:0;min-width:0;margin:8px 0;border:1px solid #eee4d5;border-radius:17px;background:#f9f6ef;overflow:hidden}.cal-public-event[hidden]{display:none!important}.cal-row-main{display:flex;align-items:center;gap:14px;flex:1;min-width:0;text-align:left;text-decoration:none;color:#423426;background:transparent!important;border:0!important;border-radius:0;padding:13px!important;min-height:94px;line-height:1.45;box-shadow:none!important}.cal-row-main:hover{background:#f1e9d9!important}.cal-row-copy{display:flex;flex-direction:column;gap:7px;min-width:0;flex:1}.cal-row-copy strong{font-size:17px;font-weight:650;line-height:1.45;color:#443323;white-space:normal;overflow-wrap:break-word}.cal-row-copy small{font-size:13px;line-height:1.6;color:#766450;white-space:normal}.cal-row-chevron{font-size:25px;color:#967342;flex-shrink:0}.cal-event-art{width:66px;height:76px;flex:0 0 66px;border-radius:12px;overflow:hidden;display:flex;align-items:center;justify-content:center;background:#f3e7cf}.cal-event-art>img{display:block;width:100%;height:100%;object-fit:cover}.cal-event-portrait{background:#eee5d6}.cal-event-portrait .ref-portrait{width:100%;flex-shrink:0;position:relative;overflow:hidden;display:block}.cal-event-portrait .ref-portrait img{max-width:none!important;height:auto!important;position:absolute}.cal-row-remind{width:44px;min-width:44px;min-height:48px!important;padding:10px!important;margin-right:8px;background:#fffaf0!important;border:1px solid #e7d7b9!important;border-radius:14px;color:#79521b}.cal-row-remind svg{width:20px;height:20px}.cal-year-link{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:48px;margin:12px 0;padding:12px 16px;background:#fbefd4;color:#725016;border:1px solid #ead6ab;border-radius:14px;text-decoration:none;font-size:15px;font-weight:650}.cal-year-link:hover{background:#f5e4bd}.cal-month-events{grid-column:1/-1}.cal-month-events .cal-section-heading{margin-bottom:10px}.cal-month-events>.cal-public-event{max-width:100%}.cal-events-hero{position:relative;isolation:isolate;min-height:175px;border-radius:18px;overflow:hidden;display:flex;align-items:center;background:#f4e9ce;margin:0 0 24px;padding:25px}.cal-events-hero>img{position:absolute;inset:0 0 0 auto;width:45%;height:100%;object-fit:cover;z-index:-2}.cal-events-hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#f7eedc 45%,#f7eedcbb 67%,#f7eedc00);z-index:-1}.cal-events-hero>div{max-width:80%}.cal-events-hero h2{font-size:27px;color:#62451c;margin:6px 0 10px}.cal-events-hero p{font-size:14px;color:#735d3e;max-width:340px;margin-bottom:0}.cal-events-toolbar{display:grid;grid-template-columns:minmax(150px,1fr) minmax(0,2fr);gap:18px}.cal-events-toolbar label{font-size:14px;font-weight:650;display:block;margin:0}.cal-events-toolbar select,.cal-events-toolbar input{margin-top:8px;font-size:16px;min-height:49px;width:100%;box-sizing:border-box}.cal-holidays-panel>.cal-filters{margin-top:18px;border-bottom:1px solid var(--cal-line);border-top:0}.cal-month-jumps{display:flex;gap:8px;overflow-x:auto;overscroll-behavior-x:contain;padding:12px 2px 16px;scrollbar-width:thin}.cal-month-jumps button{display:flex;flex-direction:column;min-width:57px;min-height:55px;gap:0;padding:5px 12px;border-radius:12px;background:#fffaf0;border-color:#e7d7b9;font-size:15px}.cal-month-jumps small{font-size:10px;color:#7b684d}.cal-month-label{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:12px 15px;margin-top:20px;margin-bottom:14px;background:#f6ecd7}.cal-month-label small{font-size:12px;font-weight:400;white-space:nowrap;color:#7b684d}.cal-holiday-month{scroll-margin-top:105px}.cal-holiday-month[hidden]{display:none}.cal-detail-cover{display:flex;gap:20px;align-items:center;background:#f8efdf;border-radius:18px;padding:18px;margin-bottom:24px}.cal-detail-cover .cal-event-art{width:110px;height:132px;flex-basis:110px;border-radius:15px}.cal-detail-cover p{font-size:15px;line-height:1.7;margin:7px 0}.cal-detail-cover .cal-tag{font-size:13px}.cal-source{border-top:1px solid #e6d9c5;margin-top:20px;padding:15px 0;font-size:14px}.cal-source summary{cursor:pointer;color:#786044;padding:8px 0}.cal-holiday-detail .cal-actions{position:sticky;bottom:0;padding:14px 0 4px;background:var(--paper,#fffdf8);border-top:1px solid #ecdfcb}.cal-holiday-detail .cal-actions .primary{flex:1}.cal-home-caption{font-size:14px;color:#79654a;margin:7px 0 0}.home-calendar-v821 .section-head{align-items:center;gap:12px}.home-calendar-v821 .section-head>a{white-space:nowrap;font-size:14px}.cal-month-scroll-controls{display:flex;align-items:center;justify-content:space-between;margin:10px 0 12px;color:#79654a;font-size:13px;gap:10px}.cal-month-scroll-controls>div{display:flex;gap:8px}.cal-month-scroll-controls button{width:40px;min-height:40px;border:1px solid #e5d2ac;border-radius:50%;background:#fff8e9;font-size:24px;color:#7d5922;padding:0}.cal-home-months{display:flex;align-items:flex-start;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;padding:2px 2px 16px;scrollbar-width:thin}.cal-home-month{flex:0 0 calc((100% - 32px)/3);min-width:290px;scroll-snap-align:start;padding:16px;border:1px solid #e8d9bd;background:#fffdf7;border-radius:20px;box-sizing:border-box}.cal-home-month>header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #ecdfc7;padding:0 2px 12px;margin-bottom:12px;gap:8px}.cal-home-month h3{font-size:21px;font-family:inherit;margin:0;color:#79541e}.cal-home-month h3 span{font-size:13px;font-weight:400;color:#8a765a}.cal-home-month>header>span{font-size:12px;color:#827050;white-space:nowrap}.cal-home-month .cal-row-main{gap:10px;padding:11px!important;min-height:90px}.cal-home-month .cal-event-art{width:49px;flex-basis:49px;height:60px;border-radius:9px}.cal-home-month .cal-row-copy strong{font-size:15px;line-height:1.5}.cal-home-month .cal-row-copy small{font-size:12px}.cal-home-month .cal-row-chevron{font-size:20px}.cal-home-month .cal-public-event{margin:7px 0;background:#f8f5ee}.cal-home-private{margin-top:16px;padding:18px;border-radius:18px;background:#f5f0e5}.cal-home-private .section-head h3{margin:0;font-size:18px}.cal-home-private>a{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid #e6dcc8;color:#4f402c;text-decoration:none}.cal-home-private>a:last-child{border:0}.cal-home-private>a>div{flex:1;display:flex;flex-direction:column;gap:5px}.cal-home-private small{font-size:13px;color:#78664e}.cal-home-private svg{width:22px;height:22px}.home-calendar-v821 :focus-visible,.cal-public-event :focus-visible,.cal-month-jumps :focus-visible{outline:3px solid #91621f;outline-offset:-3px}
@media(min-width:950px){.cal-month-events{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:16px}.cal-month-events>.cal-section-heading,.cal-month-events>.cal-soft{grid-column:1/-1}.cal-month-events .cal-event-private{grid-column:1/-1}.cal-holidays-panel{max-width:900px;margin:auto}}
@media(max-width:1050px){.cal-home-month{flex-basis:calc((100% - 16px)/2)}}
@media(max-width:760px){.cal-home-month{flex-basis:89%;min-width:0}.cal-home-month .cal-event-art{width:54px;flex-basis:54px;height:66px}.cal-home-month .cal-row-copy strong{font-size:16px}.cal-home-month .cal-row-copy small{font-size:13px}.cal-home-months{margin-right:-4px}.cal-month-scroll-controls button{min-height:44px;width:44px}.home-calendar-v821 .section-head h2{font-size:23px}.cal-home-caption{font-size:13px}.cal-layout{grid-template-columns:1fr}.cal-month-events{grid-row:2}.cal-selected{grid-row:3}.cal-selected .cal-empty{padding:8px 0}.cal-selected .cal-empty>.lotus-icon,.cal-selected .cal-empty>svg{display:none}.cal-selected .cal-empty h3{font-size:18px}.cal-selected .cal-empty p{font-size:14px}.cal-events-hero{min-height:155px;padding:20px;margin-bottom:20px}.cal-events-hero>div{max-width:85%}.cal-events-hero h2{font-size:24px}.cal-events-hero p{font-size:13px}.cal-events-hero>img{width:55%}.cal-events-toolbar{grid-template-columns:1fr;gap:15px}.cal-row-main{gap:11px;padding:12px!important}.cal-row-copy strong{font-size:16px}.cal-row-copy small{font-size:12px;line-height:1.7}.cal-event-art{width:56px;flex-basis:56px;height:69px}.cal-row-remind{min-width:40px;width:40px;padding:8px!important;margin-right:7px}.cal-row-chevron{font-size:21px}.cal-detail-cover{padding:14px;gap:15px}.cal-detail-cover .cal-event-art{width:92px;height:115px;flex-basis:92px}.cal-detail-cover p{font-size:14px}.cal-month-label{font-size:17px}.cal-month-jumps{margin:0 -3px}.cal-holidays-panel .cal-filters{column-gap:15px}.cal-holidays-panel .cal-check{font-size:14px}.cal-year-link{font-size:14px}}
@media(max-width:370px){.cal-row-main{gap:8px;padding:10px!important}.cal-event-art{width:46px;flex-basis:46px;height:59px}.cal-row-copy strong{font-size:15px}.cal-row-chevron{display:none}.cal-detail-cover{flex-direction:column;text-align:center}.cal-home-month{flex-basis:94%}.home-calendar-v821 .section-head{align-items:flex-start}.home-calendar-v821 .section-head>a{font-size:13px}.home-calendar-v821 .section-head h2{font-size:21px}}
@media(prefers-reduced-motion:reduce){.cal-home-months,.cal-month-jumps{scroll-behavior:auto}}
@media(max-width:760px){.cal-page-head{margin:5px 0 16px;gap:12px}.cal-page-head p{display:none}.cal-page-head h1{font-size:27px;margin:0}.cal-page-head>.primary{padding:10px 14px;font-size:14px}.cal-tabs{margin-bottom:17px}.cal-tabs button{min-height:65px;padding:10px 5px;font-size:13px}.cal-events-hero{min-height:126px;padding:17px;margin-bottom:18px}.cal-events-hero h2{font-size:23px}.cal-events-hero .eyebrow{font-size:10px}.cal-events-toolbar{grid-template-columns:132px minmax(0,1fr);gap:11px}.cal-events-toolbar label{font-size:13px}.cal-events-toolbar select,.cal-events-toolbar input{font-size:14px;padding-left:10px;padding-right:8px}.cal-holidays-panel>.cal-filters{margin-top:13px;padding:8px 0;gap:0 15px}.cal-holidays-panel .cal-check{min-height:40px;padding:5px 0}.cal-month-jumps{padding:10px 2px}.cal-month-label{margin-top:10px}}
@media(max-width:370px){.cal-page-head{flex-wrap:nowrap}.cal-page-head>.primary{width:auto;white-space:nowrap;padding:10px;font-size:13px}.cal-page-head h1{font-size:24px}.cal-events-toolbar{grid-template-columns:122px minmax(0,1fr);gap:9px}.cal-tabs button{font-size:12px}.cal-events-hero{padding:15px}.cal-events-hero h2{font-size:22px}}

/* Keep long months from leaving a large blank area beneath shorter cards. */
.cal-home-month{max-height:490px;overflow-y:auto;scrollbar-width:thin;overscroll-behavior-y:auto}.cal-home-month>header{position:sticky;top:-16px;background:#fffdf7;z-index:1;padding-top:6px}.cal-home-month:focus-visible{outline:3px solid #91621f;outline-offset:-3px}

/* Calendar additions: readable controls, restrained color, no flashing motion. */
.cal94-daily-photo{margin:0 0 18px;border-radius:18px;overflow:hidden;background:#f5eee0}.cal94-daily-photo img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain}.cal94-daily-photo figcaption,.cal94-home-caption{font-size:12px;line-height:1.5;color:#655b4a;padding:7px 12px;text-align:center;margin:0}.cal94-home-link{display:block;padding:10px;text-align:center;color:#765019}.cal94-almanac{margin:16px 0 24px;padding:18px;border:1px solid #dfd5c3;border-radius:16px;background:#fcfaf5}.cal94-almanac h3{margin:0 0 14px}.cal94-almanac h4{margin:20px 0 8px}.cal94-almanac p,.cal94-choice p{line-height:1.7}.cal94-badges{display:flex;flex-wrap:wrap;gap:7px}.cal94-badge{display:inline-block;border:1px solid #d9c9ac;background:#f8f0df;color:#684b23;border-radius:9px;padding:5px 9px;font-size:13px;line-height:1.5}.cal94-badge.good{background:#e8f3ea;border-color:#b1cfb9;color:#235337}.cal94-badge.caution{background:#fff0e7;border-color:#dfbca4;color:#794322}.cal94-badge.neutral{background:#f1f0ec;border-color:#d7d5cf;color:#54534e}.cal94-hours{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.cal94-hours>span{border:1px solid #ded4c3;border-radius:11px;padding:10px 6px;background:#fff;text-align:center}.cal94-hours strong,.cal94-hours small{display:block}.cal94-hours small{font-size:11px;line-height:1.6;margin-top:5px;overflow-wrap:anywhere}.cal94-method{margin:18px 0;border-top:1px solid #dfd5c3;padding-top:14px}.cal94-method summary{cursor:pointer;min-height:44px;display:list-item;line-height:1.6;font-weight:600;color:#77501b}.cal94-method p,.cal94-method li{font-size:14px;line-height:1.8}.cal94-method li{margin:8px 0}.cal94-choice header p{max-width:780px}.cal94-filter{display:grid;grid-template-columns:1fr 1fr auto;gap:14px;align-items:end;padding:20px 0}.cal94-filter label{display:grid;gap:8px;font-size:14px}.cal94-filter select,.cal94-filter input,.cal94-filter button{width:100%;min-height:48px;min-width:0}.cal94-result-tabs{display:flex;flex-wrap:wrap;gap:8px}.cal94-result-tabs button{min-height:44px;padding:8px 12px;font-size:13px}.cal94-result-tabs button[aria-pressed=true]{background:#79521c;color:white;border-color:#79521c}.cal94-result-summary{margin:20px 0;color:#60563e}.cal94-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.cal94-result{border:1px solid #ded5c5;border-radius:16px;padding:19px;background:#fffdf8;min-width:0}.cal94-result.favorable{border-top:4px solid #588469}.cal94-result.caution{border-top:4px solid #b07953}.cal94-result.neutral{border-top:4px solid #929087}.cal94-result header{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:space-between}.cal94-result h3{margin:0 0 8px}.cal94-reasons{padding-left:21px;font-size:14px;line-height:1.7}.cal94-reasons li{margin:6px 0}.cal94-day-legend{display:flex;flex-wrap:wrap;gap:8px 16px;padding:9px 0;font-size:12px}.cal94-day-legend span:first-child{color:#346243}.cal94-day-legend span:nth-child(2){color:#844e29}.cal94-day-legend small{flex-basis:100%;color:#6b6357}.cal-day.cal94-hoang:after{content:'●';position:absolute;bottom:2px;right:5px;font-size:8px;color:#346243}.cal-day.cal94-hac:after{content:'◆';position:absolute;bottom:2px;right:5px;font-size:8px;color:#844e29}.cal-day{position:relative}.cal-day.selected:after{color:inherit}.cal-tabs{overflow-x:auto}.cal-tabs>button{flex-shrink:0;min-height:48px}.dark .cal94-almanac,.dark .cal94-result{background:#252218;border-color:#625541;color:#eee8d9}.dark .cal94-hours>span{background:#302b20;border-color:#685b48}.dark .cal94-method summary,.dark .cal94-result-summary,.dark .cal94-home-link{color:#e2c28c}.dark .cal94-day-legend span{color:#e2c28c}.dark .cal94-day-legend small{color:#c6bca9}.dark .cal94-daily-photo{background:#302b20}.dark .cal94-daily-photo figcaption,.dark .cal94-home-caption{color:#d8cbb6}.dark .cal-day.cal94-hoang:after{color:#b1d3b2}.dark .cal-day.cal94-hac:after{color:#ecc5a9}@media(max-width:720px){.cal94-filter{grid-template-columns:1fr 1fr}.cal94-filter button{grid-column:1/-1}.cal94-results{grid-template-columns:1fr}.cal94-choice{padding:16px}.cal94-almanac{padding:14px}}@media(max-width:360px){.cal94-filter{grid-template-columns:1fr}.cal94-hours{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(prefers-reduced-motion:reduce){.cal94-daily-photo img{animation:none;transition:none}}

/* Phase 9: readable gold/cream community surfaces, isolated from library/reader. */
.community-hub>p{max-width:650px}.community-links{margin:24px 0}.community-links>a{color:var(--ink);text-decoration:none}.community-links h2{font-size:21px}.community-links svg{width:32px;height:32px;color:#956720}
body[data-room] .connection,body[data-room] #player,body[data-room] .mini-player{display:none!important}body[data-room] main{margin:0;padding:0;width:100%;max-width:none}body[data-room] .toast{bottom:max(100px,env(safe-area-inset-bottom));z-index:1000}
.live-room{position:relative;isolation:isolate;width:100%;max-width:900px;margin:0 auto;height:100svh;height:100dvh;min-height:520px;overflow:hidden;background:#d9b56e;color:#fff5dc}
.live-room-art{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:center top;z-index:-3;background:#dec18a}.live-room-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(#e9cc9b70 0%,transparent 22%,transparent 43%,#251c124a 62%,#1b140dd9 100%)}
.live-room-header{display:grid;grid-template-columns:48px minmax(0,1fr) 48px;align-items:start;gap:8px;padding:calc(10px + env(safe-area-inset-top)) 14px 10px;color:#37240f;background:linear-gradient(#f7dfb0dd,transparent)}.live-room-header>a{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:#fff8e6b8;color:#483015;text-decoration:none;font-size:32px}.live-room-header svg{width:24px;height:24px}.live-room-header h1{font-size:23px;text-align:center;margin:3px 0 2px;line-height:1.3}.live-room-header p{font-size:12px;line-height:1.4;margin:0;text-align:center;color:#533d20}.live-announcement{margin:0 20px;padding:9px 14px;border-radius:16px;background:#fff8e4ef;color:#513815;font-size:14px;line-height:1.5;max-height:96px;overflow:auto;white-space:pre-wrap}
.live-room-tools{position:absolute;right:12px;bottom:200px;display:grid;gap:12px;z-index:2}.live-room-tools>a,.live-room-tools>button{border:0;min-width:52px;min-height:54px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;background:#352b22b8;border-radius:18px;color:#fff9e9;text-decoration:none;padding:7px}.live-room-tools svg{width:23px;height:23px}.live-room-tools span{font-size:11px;line-height:1.2}
.live-room-bottom{position:absolute;inset:auto 0 0;padding:10px 16px calc(12px + env(safe-area-inset-bottom));background:linear-gradient(transparent,#21180fd9);display:grid;gap:10px}.live-snippets{display:grid;gap:9px;margin-right:66px;max-height:30dvh;min-height:62px;overflow:hidden;mask-image:linear-gradient(transparent,#000 7%);padding-top:9px}.live-snippet{display:grid;grid-template-columns:30px minmax(0,1fr);gap:9px;padding:10px 12px;border-radius:19px;background:#332a22a8;color:#fff;text-decoration:none;animation:prayer-enter .65s ease-out;line-height:1.45}.live-snippet strong{font-weight:550;font-size:12px;color:#f8e8c7}.snippet-body{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:15px;margin-top:2px;overflow-wrap:anywhere}.live-lotus{width:30px;height:30px;border-radius:50%;background:#ad7b37;color:#ffeab9;display:grid;place-items:center}.live-lotus svg{width:23px;height:23px}.live-empty{padding:14px;border-radius:16px;background:#30271eb8;color:#fff7e5;font-size:15px;line-height:1.6;margin:0}.live-snippet.still{animation:none}
.room-music-bar{display:flex;align-items:center;justify-content:space-between;gap:8px}.room-music-bar button{font-size:12px;border:1px solid #eed9b850;min-height:42px;padding:8px 12px;border-radius:24px;background:#3c2a1cbd;color:#fff8e8}.room-music-bar .primary{display:flex;gap:6px;align-items:center;background:#f2d496;color:#473015;border-color:transparent;font-weight:650}.room-music-bar svg{width:17px;height:17px}.live-compose{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.live-compose button{border:0;border-radius:26px;min-height:49px;font-size:14px;padding:11px 15px;line-height:1.4}.compose-placeholder{text-align:left;background:#fffdf8;color:#6f665a;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.live-compose .primary{background:#f3d398;color:#3c290f;font-weight:650}.room-inline-error{font-size:12px;line-height:1.5;margin:0;color:#fff2cf;max-height:60px;overflow:auto}.room-inline-error:empty{display:none}
.community-page-head{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:10px;margin:10px 0 20px}.community-page-head>a{font-size:34px;text-decoration:none;color:var(--ink);width:44px;height:44px;display:grid;place-items:center}.community-page-head h1{font-size:24px;line-height:1.3;text-align:center;margin:0}.community-page-head svg{width:22px;height:22px}.prayer-history{max-width:820px;margin:auto}.community-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 22px}.community-tabs .button,.community-tabs button{min-height:44px}.community-tabs .active{background:#8b6526;color:white;border-color:#8b6526}.prayer-filter{max-width:360px;margin-bottom:12px}.room-update{margin-bottom:16px}.prayer-full-list{display:grid;gap:16px}.community-prayer-card{background:#fffdf8;border:1px solid #ecdfc9;border-radius:24px;padding:23px;box-shadow:0 8px 25px #79521808;color:#352d22;overflow-wrap:anywhere}.community-prayer-card header{display:flex;align-items:center;gap:11px;margin-bottom:18px}.community-prayer-card header>div{flex:1}.community-prayer-card header strong{font-size:16px}.community-prayer-card time{display:block;margin-top:3px;font-size:12px;color:#766957}.community-lotus{display:grid;place-items:center;border-radius:50%;width:42px;height:42px;background:#f6e7c9;color:#98702a;flex-shrink:0}.community-lotus svg{width:27px;height:27px}.prayer-body{font-size:18px;line-height:1.8;white-space:pre-wrap;margin:14px 0 22px}.community-prayer-card dl{margin:14px 0}.community-prayer-card dt{font-weight:650;color:#876324;font-size:14px}.community-prayer-card dd{margin:4px 0;font-size:17px;line-height:1.6;white-space:pre-wrap}.community-prayer-card .actions{border-top:1px solid #efe5d5;padding-top:14px;gap:7px}.community-prayer-card .actions button,.community-prayer-card .actions a{min-height:44px;font-size:13px;padding:9px 12px;border-radius:15px;display:inline-flex;align-items:center;gap:6px}.community-prayer-card .actions svg{width:19px;height:19px}.community-prayer-card button[aria-pressed=true]{background:#f4dfb5;color:#614514;border-color:#cba057}.prayer-state,.reply-label{font-size:12px;color:#776443}.prayer-state{max-width:110px;text-align:right}.prayer-history #prayer-more,.prayer-history #thread-reply{margin:20px 0}#thread-parent:not(:empty){margin-bottom:24px;padding-bottom:20px;border-bottom:2px solid #d9bd81}
.community-dialog{max-width:620px}.prayer-editor label{font-size:16px}.prayer-editor textarea{font-size:17px;line-height:1.7;min-height:160px}.optional{font-size:12px;color:var(--muted)}.prayer-compose-meta{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:5px 0 16px;font-size:12px}.prayer-editor .check{font-size:14px;line-height:1.6;align-items:flex-start;margin:20px 0}.prayer-editor .check input{margin-top:5px;flex-shrink:0}.community-help p{line-height:1.8;margin-bottom:18px}.community-admin{max-width:1000px;margin:auto}.admin-tabs{display:flex;gap:8px;overflow:auto;margin:22px 0;padding-bottom:6px}.admin-tabs button{white-space:nowrap;min-height:46px}.admin-tabs button.active{background:#866124;color:white}.admin-room-form{display:grid;gap:16px}.admin-room-form h2{margin:0}.admin-log{display:flex;gap:15px;justify-content:space-between;align-items:start;padding:16px 0;border-bottom:1px solid var(--line);font-size:14px}.admin-log time{font-size:12px;color:var(--muted);flex-shrink:0}.admin-log code{font-size:11px;word-break:break-all}.admin-report-reasons{background:#faf1df;border-radius:14px;padding:15px;font-size:15px;line-height:1.7}.admin-filter{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:16px 0}.admin-filter label{margin:0}.personal-prayer-shortcuts{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:18px 0}.personal-prayer-shortcuts a{text-decoration:none;color:var(--ink);display:block;background:var(--card);border:1px solid var(--line);padding:18px;border-radius:20px}.personal-prayer-shortcuts strong{display:block;font-size:19px}.personal-prayer-shortcuts small{color:var(--muted)}.favorite-groups h2{font-size:21px;margin:24px 0 15px}.favorite-groups .list-row{flex-wrap:wrap}.public-name-form{margin-top:24px}.public-name-form p{line-height:1.7}
@keyframes prayer-enter{from{opacity:.25;transform:translateY(13px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:850px){.live-room-bottom{padding-left:50px;padding-right:50px}.live-snippets{max-width:590px;max-height:31dvh}.live-room-tools{right:28px;bottom:220px}.live-room-header{padding-left:28px;padding-right:28px}.live-room-header h1{font-size:27px}.live-snippet{padding:12px 16px}.snippet-body{font-size:17px}.room-music-bar button{font-size:14px}.live-compose button{font-size:17px}}
@media(max-width:420px){.live-room-header h1{font-size:20px}.live-room-header p{font-size:11px}.live-room-bottom{padding-left:12px;padding-right:12px}.live-room-tools{right:8px;gap:8px;bottom:190px}.live-snippets{margin-right:56px}.live-snippet{padding:8px;gap:6px;grid-template-columns:26px 1fr}.live-lotus{width:26px;height:26px}.snippet-body{font-size:14px}.live-snippet strong{font-size:11px}.live-compose button{font-size:13px;padding:10px 12px}.room-music-bar button{font-size:11px;padding:7px 9px}.community-page-head h1{font-size:21px}.community-prayer-card{padding:18px}.prayer-body{font-size:17px}.community-prayer-card .actions{gap:6px}.admin-log{display:block}.admin-log time{display:block;margin-top:6px}}
@media(max-height:560px) and (orientation:landscape){.live-room{min-height:360px}.live-room-art{width:50%;object-position:center}.live-room-bottom{left:44%;padding:8px 20px}.live-snippets{max-height:32dvh;margin-right:50px}.live-snippet:nth-child(n+2){display:none}.live-room-header{grid-template-columns:44px 1fr 44px}.live-room-tools{bottom:140px;gap:5px}.live-room-tools span{display:none}.live-room-tools>a,.live-room-tools>button{min-height:44px}.live-announcement{max-width:40%;font-size:12px}.live-room-header h1{font-size:20px}.room-music-bar button{font-size:11px}}
@media(prefers-reduced-motion:reduce){.live-snippet{animation:none}}.reduced-motion .live-snippet{animation:none}
.dark .community-prayer-card{background:#2a251d;color:#f4e9d4;border-color:#514536}.dark .community-prayer-card time,.dark .prayer-state{color:#c5b699}.dark .community-prayer-card dt{color:#ddba75}.dark .admin-report-reasons{background:#32291d}

/* Scoped reading refresh: no PDF, community or practice layout overrides. */
.reading-v84{max-width:980px;margin:auto;color:var(--ink,#392d21)}
.reading-v84-head{display:flex;align-items:center;gap:12px;padding:8px 0 20px}
.reading-v84-head>div{flex:1;min-width:0}.reading-v84-head h1{font-size:28px;line-height:1.2;margin:0 0 5px}.reading-v84-head p{margin:0;color:#765e42;font-size:14px}
.reading-v84 .icon{min-width:44px;min-height:44px;flex-shrink:0}.reading-v84-tabs{display:flex;flex-wrap:nowrap;overflow-x:auto;gap:8px;padding:0 0 14px;scrollbar-width:thin}.reading-v84-tabs .button{white-space:nowrap;min-height:44px;border-radius:22px;padding:10px 16px;flex-shrink:0}
.reading-v84-tabs .active{background:#f0cb70;color:#382709;border-color:#cba755}.reading-v84 .reading-filter{background:transparent;border:0;padding:0;grid-template-columns:minmax(0,1fr) minmax(150px,220px);gap:12px}.reading-v84 .reading-filter label{min-width:0}.reading-v84 .reading-filter input,.reading-v84 .reading-filter select{width:100%;min-width:0;min-height:48px;border-radius:14px;background:#fffdf7;color:#3e3024;border-color:#ddcfb3}.reading-v84 .reading-filter label>span{font-size:13px;color:#6e573b}
.reading-v84 .reading-library-meta{font-size:13px;gap:10px;align-items:center}.reading-v84 .reading-library-meta p{margin:14px 0}.reading-v84 .reading-library-meta a{white-space:nowrap}
.reading-v84-list{border:1px solid #e9dfca;background:#fffdf8;border-radius:18px;overflow:hidden}.reading-v84-row{display:flex;align-items:center;gap:4px;padding:14px 12px;border-bottom:1px solid #eee7d8;min-width:0}.reading-v84-row:last-child{border-bottom:0}.reading-v84-open{display:flex;align-items:center;gap:16px;min-width:0;flex:1;color:inherit;text-decoration:none}.reading-v84-open:hover strong{text-decoration:underline;text-underline-offset:4px}
.reading-v84-cover{position:relative;width:52px;min-width:52px;height:72px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;border-radius:3px 7px 7px 3px;background:linear-gradient(105deg,#c58d37 0,#c58d37 4px,#f4de9e 5px,#efd18a 95%);box-shadow:1px 3px 7px #64491e20;color:#795017;overflow:hidden}.reading-v84-cover>img{object-fit:cover}.reading-v84-cover>small{font-size:6px;letter-spacing:.8px;font-weight:700}.reading-v84-info{display:flex;flex-direction:column;gap:5px;min-width:0}.reading-v84-info>strong{font-size:17px;line-height:1.4;font-weight:650;color:#40311f;overflow-wrap:anywhere}.reading-v84-info>span{font-size:13px;line-height:1.5;color:#6f5c43}.reading-v84-info>small{font-size:12px;color:#806b4f}.reading-v84-info>.reading-v84-excerpt{color:#685a47;font-size:13px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.reading-v84-toc{display:grid;gap:8px;margin:16px 0}.reading-v84-toc>a{display:flex;justify-content:space-between;gap:10px;white-space:normal;text-align:left;min-height:48px;overflow-wrap:anywhere}.reading-source-detail{margin:16px 0;font-size:14px}.reading-source-detail summary{cursor:pointer;padding:12px 0}
.prayer-group{margin:22px 0}.prayer-group h2{font-size:19px;color:#6b4a20;margin:0 0 12px}.prayer-intro{font-size:14px;line-height:1.7;color:#6f5c43}.prayer-cover{background:radial-gradient(circle,#fff4d7,#efdcaa);border-radius:50%;width:58px;min-width:58px;height:58px;box-shadow:none}.prayer-cover small{display:none}.prayer-row{padding:18px 12px}.reading-v84-footer{display:grid;gap:18px;padding:30px 0;font-size:14px}.reading-v84-footer a{width:fit-content}
.reader-prose .verse-lines p{text-align:left;white-space:normal;overflow-wrap:anywhere;max-width:100%;line-height:var(--read-line,1.8)}.reader-prose .verse-lines h2{font-size:1.08em;text-align:center;line-height:1.55;margin:1em 0;color:inherit}.reader-prose .verse{padding-top:12px;padding-bottom:16px}.reader-v84-personalize{margin:12px auto 20px;max-width:720px;display:flex;gap:10px;align-items:center;justify-content:center;flex-wrap:wrap;font-size:13px}.reader-v84-personalize p{margin:0;color:#786548}.reader-prayer-form{display:grid;gap:16px}.reader-prayer-form label{display:grid;gap:8px}.reader-prayer-form input{width:100%;min-height:48px}.reader-v84-note{max-width:720px;margin:12px auto;font-size:13px;line-height:1.6;color:#786548;text-align:center}
.dark .reading-v84{color:#f8eddb}.dark .reading-v84-list{background:#29241e;border-color:#504331}.dark .reading-v84-row{border-color:#504331}.dark .reading-v84-info>strong,.dark .reading-v84-head h1{color:#fff0d4}.dark .reading-v84-info>span,.dark .reading-v84-info>small,.dark .reading-v84-head p,.dark .prayer-intro,.dark .prayer-group h2{color:#dbc7a4}.dark .reading-v84 .reading-filter input,.dark .reading-v84 .reading-filter select{background:#302a22;color:#fff0d4;border-color:#64523a}.dark .reading-v84 .reading-filter label>span{color:#dbc7a4}
@media(max-width:600px){.reading-v84-head{padding:0 0 16px}.reading-v84-head h1{font-size:23px}.reading-v84 .reading-filter{grid-template-columns:minmax(0,1fr)}.reading-v84 .reading-filter label:nth-child(2){display:flex;align-items:center;gap:12px}.reading-v84 .reading-filter label:nth-child(2)>span{flex-shrink:0}.reading-v84 .reading-filter select{min-height:44px}.reading-v84-row{padding:13px 9px;gap:0}.reading-v84-open{gap:12px}.reading-v84-info>strong{font-size:16px}.reading-v84-info>span{font-size:12px}.reading-v84-info>small{font-size:12px}.reading-v84 .reading-library-meta{align-items:flex-start}.reading-v84-list{border-radius:14px}.reader-prose .verse{padding-left:4px;padding-right:4px}.reader-prose .verse-lines{min-width:0}.reader-prose .reader-body{padding-left:14px;padding-right:14px}.reader-v84-personalize{padding:0 12px}}
@media(prefers-reduced-motion:no-preference){.reading-v84-open{transition:opacity .15s}.reading-v84-open:active{opacity:.7}}
@media print{.reader-v84-personalize,.reader-v84-note{display:none}}

/* V84.1: compact catalog, reading controls remain available without covering text. */
.sr-reading{position:absolute!important;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
body[data-route="library"]:has(.reading-v84):not(.dark){--bg:#fff9ed;background:#fff9ed}body[data-route="library"]:has(.reading-v84):not(.dark) main{background:#fff9ed}
.reading-v84-head{padding:4px 0 14px;gap:3px}.reading-v84-head h1{flex:1;font-size:23px;margin:0;min-width:0}.reading-v84-head .icon{width:44px;padding:10px}.reading-v84-head svg{width:23px;height:23px}
.reading-v84 .reading-filter{display:block;margin:0 0 8px}.reading-v84 .reading-filter label[hidden]{display:none!important}.reading-v84 .reading-filter #reading-facet{margin:12px 0;display:flex;gap:12px;align-items:center}.reading-v84 #reading-facet>span{flex-shrink:0;margin:0}.reading-v84 #library-filter{background:#eee8da;border-color:transparent;font-size:16px;border-radius:11px}
.reading-v84 .reading-library-meta{margin:0 0 10px;font-size:12px}.reading-v84 .reading-library-meta p{margin:8px 0}.reading-v84-list{border:0;border-radius:0;background:transparent}
.reading-v84-row,.prayer-row{border-color:#e3dac6;padding:13px 0;gap:3px}.reading-v84-open{gap:12px}.reading-v84-info{gap:3px}.reading-v84-info>strong{font-size:17px;font-weight:550;line-height:1.4}.reading-v84-info>small{font-size:13px;color:#6d604a}.reading-v84-info>.reading-author{font-size:13px;line-height:1.4;color:#766b56}.reading-v84-cover,.prayer-cover{width:56px;min-width:56px;height:56px;border-radius:11px;background:#f2e4c0;box-shadow:none}.reading-v84-cover>.ref-portrait{width:100%;height:100%;overflow:hidden;border-radius:inherit}.reading-v84-cover>img[src*="phap-cu"]{width:100%;height:100%;object-fit:cover}
.reading-v84-menu{display:grid;gap:8px}.reading-v84-menu a{display:flex;justify-content:space-between;text-align:left;min-height:48px}.prayer-group h2{font-size:18px;line-height:1.4}.prayer-intro{font-size:13px}
body[data-route="read"] main{padding-bottom:24px}.reader-v76+.reading-bottom{position:static;transform:none;margin:18px auto 0;padding:0;display:flex;border:1px solid #b8872930;border-radius:14px;width:calc(100% - 32px)}.reader-v76+.reading-bottom button{flex:1;min-height:58px;font-size:12px}
.reader-v76 .reader-more[open]{border:1px solid #b8872930;border-radius:12px;padding:4px 12px}.reader-v76 .reader-more[open]>summary{display:block;cursor:pointer;min-height:44px;padding:10px 0;font-size:14px}.reader-v76 .reader-tools{margin:0;border:0}.reader-v76 .reading-focus-head>strong{font-size:17px;line-height:1.35}.reader-v76 .reading-meta h1{font-size:22px}.reader-v76 .reader-body{padding-top:16px}.reader-v76 .verse{max-width:740px;margin-left:auto;margin-right:auto}.reader-v76:not(.reader-prose) .verse{max-width:560px}.reader-v76 .verse header button{opacity:.55}.reader-v76 .verse header button[aria-pressed="true"],.reader-v76 .verse header button:hover,.reader-v76 .verse header button:focus-visible{opacity:1}.reader-v76 .verse.saved:before{left:0}
.reader-v76.reader-prose .verse header>span{position:static;display:block;font-size:12px;opacity:.55;line-height:1.3;margin-bottom:8px}.reader-v76.reader-prose .verse-lines{padding-right:22px}.reader-v76.reader-prose .verse{margin-bottom:15px}
.reader-floating-wood{position:fixed;bottom:calc(18px + env(safe-area-inset-bottom));right:calc(18px + env(safe-area-inset-right));z-index:31;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;width:72px;height:72px;padding:4px;border-radius:50%;background:#fff3d8;color:#5b3d16;border:1px solid #cba963;box-shadow:0 4px 20px #6c4b2630;font-size:11px}.reader-floating-wood[hidden]{display:none}.reader-floating-wood img{width:48px;height:40px;object-fit:contain}.reader-floating-wood:after{content:'';position:absolute;inset:-2px;border:1px solid #b78b32;border-radius:50%;pointer-events:none;opacity:0}.reader-floating-wood.auto-playing{border-color:#a6741d}.has-audio .reader-floating-wood{bottom:calc(92px + env(safe-area-inset-bottom))}
.reading-settings-sheet .reading-save{position:sticky;bottom:0;display:block;width:100%;min-height:48px;box-shadow:0 -8px 20px var(--surface,#fffdf8)}.reading-settings-sheet .reading-options-preview{max-height:110px}.reading-settings-sheet [role="switch"]{flex-shrink:0}.reading-settings-sheet .reading-settings-group{margin-bottom:10px}
@media(max-width:800px){body[data-route="library"]:has(.reading-v84) .topbar{display:none}.reading-v84-head{position:sticky;top:0;background:var(--bg,#faf6ed);z-index:20;padding:8px 0}.reading-v84-head h1{font-size:21px}.reading-v84-head .icon:first-child{display:none}.reading-v84-info>strong{font-size:16px}.reading-v84-row{min-height:90px}.reader-v76 .reading-focus-head{padding:5px 4px;gap:0;min-height:58px}.reader-v76 .reader-head-actions{gap:0}.reader-v76 .reader-head-actions .icon{width:38px;min-width:38px}.reader-v76 .reading-focus-head>strong{font-size:16px}.reader-v76 .reading-meta{padding:18px 20px 0}.reader-v76 .reading-meta h1{font-size:21px}.reader-v76 .verse-lines{padding-right:18px}.reader-v76 .verse{padding-left:22px;padding-right:18px;margin-bottom:28px}.reader-v76.reader-prose .reader-body{padding-left:20px;padding-right:20px}.reader-v76.reader-prose .verse{padding-left:0;padding-right:0}.reader-v76.reader-prose .verse-lines{padding-right:20px}.reader-floating-wood{width:64px;height:64px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom))}}
@media(prefers-reduced-motion:no-preference){.reader-floating-wood.struck:after{animation:reader-wave .7s ease-out}.reader-floating-wood.struck img{animation:reader-tap .22s ease-out}@keyframes reader-wave{from{transform:scale(1);opacity:.65}to{transform:scale(1.6);opacity:0}}@keyframes reader-tap{50%{transform:scale(.9)}to{transform:scale(1)}}}
@media(max-width:800px){.reading-v84-info>.reading-author{display:none}.reader-v76 .reader-more:not([open]){display:none!important}}
@media print{.reader-floating-wood{display:none!important}}

@media(max-width:800px){.reading-v84-head>a:first-child[href="#library/texts"]{display:inline-flex}.reading-library-meta{flex-wrap:wrap}}

.reading-footnotes{margin:32px 0 20px;padding:16px;border-top:1px solid #9b824c55;font-size:16px;line-height:1.65}.reading-footnotes h2{font-size:17px;margin:0 0 12px}.reading-footnotes p{margin:0 0 10px}

/* Temple views only. Show complete photographs and a separate readable heading. */
.temple-article .temple-hero,.temple-dialog .temple-hero{height:clamp(240px,44vw,460px);background:#e9e2d4}
.temple-article .temple-hero:after,.temple-dialog .temple-hero:after{display:none}
.temple-article .temple-slide img,.temple-dialog .temple-slide img{object-fit:contain}
.temple-article>.temple-title,.temple-dialog .dialog-body>.temple-title{position:static;margin:0;padding:24px 24px 12px;background:var(--surface);color:var(--ink);pointer-events:auto}
.temple-article>.temple-title h1,.temple-dialog .dialog-body>.temple-title h1{color:var(--ink);text-shadow:none;font-size:clamp(24px,4vw,34px);line-height:1.4;margin:10px 0 8px}
.temple-article>.temple-title p,.temple-dialog .dialog-body>.temple-title p{color:var(--muted);font-size:15px;line-height:1.7}
.temple-photo-hint{margin:0;padding:6px 24px 0;font-size:13px;line-height:1.6;color:var(--muted);background:var(--surface)}
.temple-photo-description{padding:6px 24px 16px;font-size:13px;line-height:1.6}
.temple-article .photo-dots,.temple-dialog .photo-dots{background:#473b28bb;border-radius:30px;bottom:10px;padding:0 5px}
.temple-article .photo-dots button,.temple-dialog .photo-dots button{width:40px;min-width:40px;min-height:44px}
.temple-article .photo-prev,.temple-article .photo-next,.temple-dialog .photo-prev,.temple-dialog .photo-next{width:44px;height:44px;min-height:44px;background:#fffdf5f2;color:#463219;border:1px solid #e3d5bc;box-shadow:0 2px 8px #3f2c1417}
.temple-article .photo-prev:disabled,.temple-article .photo-next:disabled{opacity:.45;cursor:default}
.temple-article .photo-prev,#dialog.temple-dialog .photo-prev{position:absolute;left:12px;right:auto;top:50%;transform:translateY(-50%)}
.temple-article .photo-next,#dialog.temple-dialog .photo-next{position:absolute;right:12px;left:auto;top:50%;transform:translateY(-50%)}
.temple-photo-count{background:#40351fdd;font-weight:700}
#dialog.temple-dialog>header{height:auto;min-height:60px;padding:8px 12px 8px 18px;position:sticky;top:0;background:var(--surface);border-bottom:1px solid var(--line);display:flex;align-items:center;gap:12px}
#dialog.temple-dialog>header h2{position:static;clip-path:none;width:auto;height:auto;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:15px;margin:0;max-width:none;color:var(--ink)}
#dialog.temple-dialog>header button{position:static;min-width:88px;width:auto;height:44px;padding:8px 14px;border-radius:12px;font-size:15px;font-weight:700;box-shadow:none;background:#fff4d9;color:#63451a;border:1px solid #e6d1a7;flex:none}
.temple-jump-links{flex-wrap:wrap;gap:8px;padding:16px 20px 6px}
.temple-jump-links button,.temple-public .temple-jump-links a{flex:0 1 auto;min-height:44px;font-size:14px;padding:8px 14px}
.temple-section{scroll-margin-top:80px}
.temple-dialog .temple-detail-actions>button{font-size:14px;min-height:48px;min-width:110px}
.temple-article .temple-detail-actions>.primary,.temple-dialog .temple-detail-actions>.primary{background:#7c5818;border-color:#7c5818;color:#fff}
.temple-article .temple-detail-actions>.primary:hover,.temple-dialog .temple-detail-actions>.primary:hover{background:#624511;border-color:#624511;color:#fff}
.temple-public .temple-grid,.space-page .temple-grid{align-items:stretch}
.temple-public .temple-card h2,.space-page .temple-card h2{font-size:18px;line-height:1.5}
.temple-public .temple-card p,.space-page .temple-card p{font-size:14px}
.temple-public .temple-card small,.space-page .temple-card small{font-size:13px;line-height:1.65}
.temple-card:focus-visible,.temple-dialog button:focus-visible,.temple-dialog a:focus-visible{outline:3px solid #906420;outline-offset:3px}
.temple-photo-viewer{width:min(1100px,calc(100vw - 24px));max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);padding:0;border:1px solid #e6d1a7;border-radius:16px;background:#faf6ec;color:#382b1b;overflow:auto}
.temple-photo-viewer::backdrop{background:#17130ee8}
.temple-photo-viewer>header{position:sticky;top:0;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;background:#faf6ec;border-bottom:1px solid #e6d1a7}
.temple-photo-viewer>header button{min-height:44px;min-width:110px;padding:8px 14px;border:1px solid #d7bd8d;border-radius:10px;background:#fff4d9;color:#63451a;font:600 15px/1.5 system-ui;cursor:pointer}
.temple-photo-viewer>img{display:block;width:100%;max-height:calc(100dvh - 180px);object-fit:contain;background:#e9e2d4}
.temple-photo-viewer>p{margin:0;padding:14px 18px;font:14px/1.7 system-ui}
.temple-photo-viewer button:focus-visible{outline:3px solid #906420;outline-offset:2px}
body.dark .temple-dialog .dialog-body>.temple-title,body.dark .temple-dialog .temple-photo-hint,body.dark .temple-dialog .temple-photo-description{background:var(--surface)}
@media(max-width:600px){
 .temple-article>.temple-title,.temple-dialog .dialog-body>.temple-title{padding:18px 16px 10px}
 .temple-photo-hint{padding:6px 16px 0}.temple-photo-description{padding:6px 16px 14px}
 .temple-public .temple-grid,.space-page .temple-grid{grid-template-columns:1fr;gap:18px}
 .temple-card-photo{aspect-ratio:16/10}.temple-card-copy{padding:16px}
 .temple-jump-links,.temple-public .temple-jump-links{padding:14px 12px 4px;gap:7px}
 .temple-jump-links button,.temple-public .temple-jump-links a{font-size:13px;padding:8px 12px;min-height:44px}
 .temple-dialog .temple-detail-actions{flex-wrap:wrap}.temple-dialog .temple-detail-actions>.primary{flex-basis:100%}
 .temple-dialog .temple-detail-actions>button{width:100%;font-size:14px}
 .temple-public .temple-hero,.temple-dialog .temple-hero{height:290px}
 .temple-public .temple-section h2,.temple-dialog .temple-section h2{font-size:18px}
}
@media(prefers-reduced-motion:reduce){.temple-card,.temple-dialog[open]{animation:none;transition:none}.temple-card:hover{transform:none}}

/* V90: room-only presentation; the library, reader and practice tools retain their styles. */
body[data-room-page]{background:#fbf8f0;color:#342c20}
body[data-room-page] .sidebar,body[data-room-page] .topbar,body[data-room-page] .foot,body[data-room-page] .connection,body[data-room-page] #player{display:none!important}
body[data-room-page] .shell,body[data-room-page] .app-shell,body[data-room-page] .workspace{display:block;margin:0;padding:0}
body[data-room-page] main{margin:0 auto;padding:0;width:100%;max-width:none;min-height:100dvh}
body[data-room] {overflow:hidden}
.room-v90{width:100%;max-width:580px;height:var(--room-height,100dvh);min-height:0;top:var(--room-top,0);background:#b69152}
.room-v90 .live-room-art{object-fit:cover;object-position:center 32%;background:#d1b888}
.room-v90 .live-room-shade{background:linear-gradient(#f4d4a15c 0%,transparent 18%,transparent 46%,#21170a70 72%,#171209ed 100%)}
.room-v90 .live-room-header{grid-template-columns:44px minmax(0,1fr) 44px;padding:calc(6px + env(safe-area-inset-top)) 8px 8px;gap:4px;align-items:center;background:linear-gradient(#f6dca6a8,transparent);position:relative;z-index:2}
.room-v90 .live-room-header>a{width:44px;height:44px;background:transparent;border-radius:50%;color:#33230f}
.room-v90 .live-room-header h1{font-size:17px;line-height:1.4;font-weight:650;margin:0}
.room-v90 .live-room-header p{font-size:11px;line-height:1.3;margin:0;min-height:0}.room-v90 .live-room-header p:empty{display:none}
.room-v90 .live-room-header svg{width:22px;height:22px}
.room-v90 .live-room-bottom{padding:10px 12px calc(12px + env(safe-area-inset-bottom));gap:10px;background:linear-gradient(transparent,#171108b0 70%)}
.room-v90 .live-snippets{display:block;position:relative;height:clamp(118px,29dvh,245px);max-height:none;min-height:0;margin-right:48px;padding:0;overflow:hidden;mask-image:linear-gradient(transparent,#000 10%,#000 99%)}
.room-stream-track{animation:room-flow-v90 var(--flow-duration,48s) linear infinite;will-change:transform}
.room-stream-track[data-still=true],.room-stream-track:focus-within,.room-stream-track:hover,.room-stream-hidden,body:has(#dialog[open]) .room-stream-track,.room-v90:has(#room-compose:focus) .room-stream-track{animation-play-state:paused}
.room-stream-group{display:grid;gap:8px;padding:0 0 8px}
.room-v90 .live-snippet{width:100%;display:grid;grid-template-columns:28px minmax(0,1fr);gap:8px;text-align:left;align-items:start;min-height:70px;padding:9px 10px;margin:0;border:0;border-radius:14px;background:#59544c9e;backdrop-filter:blur(4px);color:white;animation:none;font-weight:400;box-shadow:none;line-height:1.4}
.room-v90 .live-snippet strong{font-size:11px;line-height:1.3;font-weight:450;color:#fff1da}
.room-v90 .snippet-body{font-size:14px;line-height:1.45;margin-top:3px}
.room-v90 .live-lotus{width:28px;height:28px;background:#b88736}.room-v90 .live-lotus .lotus-icon{width:22px;height:22px;object-fit:contain}
.room-v90 .live-room-tools{right:8px;bottom:calc(88px + env(safe-area-inset-bottom));gap:6px}
.room-v90 .live-room-tools>a,.room-v90 .live-room-tools>button{min-width:44px;width:44px;min-height:44px;border-radius:50%;padding:5px;background:#211b1440;border:0;box-shadow:none;color:#fff;text-align:center;gap:1px}
.room-v90 .live-room-tools svg{width:22px;height:22px}.room-v90 .live-room-tools span{font-size:11px;max-width:44px;overflow:hidden}
.room-v90 .live-compose{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;margin:0;position:relative;align-items:center}
.room-v90 .live-compose button,.room-v90 .live-compose input{border-radius:26px;min-height:44px;height:auto;margin:0;padding:10px 13px;line-height:1.4;font-size:14px;border:0;box-shadow:none}
.room-v90 .live-compose input{width:100%;background:#fff;color:#302b24;font-size:16px;min-width:0}
.room-v90 .live-compose .primary{display:flex;align-items:center;justify-content:center;gap:5px;background:#f4d48c;color:#342510;font-weight:500;white-space:nowrap}
.room-v90 .live-compose svg{width:16px;height:16px;flex-shrink:0}
.room-v90 #room-public-note{grid-column:1/-1;margin:0;font-size:11px;line-height:1.4;color:#fff3da;display:none}
.room-v90 #inline-prayer:focus-within #room-public-note{display:block}
.room-v90 .room-audio-retry{justify-self:center;display:flex;align-items:center;gap:7px;min-height:40px;padding:7px 13px;background:#f9e3b5;border:0;border-radius:24px;font-size:13px;color:#402a0a}
.room-v90 .room-audio-retry[hidden]{display:none}.room-audio-retry svg{width:17px;height:17px}
.room-v90 button:disabled{opacity:.55;cursor:default}.room-v90 .live-announcement{font-size:13px;padding:8px 12px;margin:0 14px;max-height:75px;position:relative;z-index:2}
.room-history-v90{max-width:620px;padding:0 14px calc(30px + env(safe-area-inset-bottom));min-height:100dvh;background:#fbf8f0;color:#342c20}
.room-history-v90 .community-page-head{margin:0 -6px 10px;padding:calc(6px + env(safe-area-inset-top)) 0 5px;gap:4px;position:sticky;top:0;z-index:3;background:#fbf8f0f5;backdrop-filter:blur(12px)}
.room-history-v90 .community-page-head h1{font-size:18px;font-weight:600;line-height:1.4}
.room-history-v90 .community-page-head button{background:transparent;border:0;color:#5f4b2e}
.room-list-intro{display:flex;gap:8px;align-items:flex-start;font-size:13px;line-height:1.65;color:#786c58;margin:6px 3px 16px}.room-list-intro .lotus-icon{width:24px;height:24px;flex-shrink:0}
.room-history-v90 .prayer-full-list{gap:12px}.room-history-v90 .room-update{font-size:13px;margin:0 0 12px;width:100%;min-height:42px}
.prayer-card-v90{padding:15px 16px 8px;border-radius:17px;background:#fff;border:1px solid #eee6d9;box-shadow:0 2px 9px #6b4d1305;color:#342c20}
.prayer-card-v90 header{gap:9px;margin:0 0 12px}.prayer-card-v90 header strong{font-size:13px;font-weight:500}.prayer-card-v90 time{font-size:11px;color:#928673;margin-top:3px}
.prayer-card-v90 .community-lotus,.prayer-detail-v90 .community-lotus{width:29px;height:29px;background:#bb8c3e;color:#fff}.prayer-card-v90 .community-lotus img,.prayer-detail-v90 .community-lotus img{width:23px;height:23px}
.prayer-card-v90 .prayer-body{font-size:14px;line-height:1.75;margin:4px 0 4px;overflow-wrap:anywhere;white-space:pre-wrap}
.prayer-card-v90 dl{margin:5px 0 10px}.prayer-card-v90 dt,.prayer-field-label{color:#99752e;font-size:12px;font-weight:500}.prayer-card-v90 dd{font-size:14px;line-height:1.6;margin:2px 0}
.prayer-card-footer{display:flex;align-items:center;gap:7px;min-height:38px;margin-top:4px}
.prayer-card-footer .prayer-detail-link{font-size:11px;min-height:40px;padding:6px 0;color:#8c734a;border:0;background:transparent;box-shadow:none}
.prayer-card-footer .prayer-menu-button{margin-left:auto;width:44px;height:40px;min-height:40px;padding:9px;border:0;background:transparent;color:#82735e;box-shadow:none}
.prayer-menu-button svg{width:22px;height:22px}.prayer-lotus-total{font-size:12px;color:#956a25;display:inline-flex;align-items:center;gap:3px}.prayer-lotus-total img{width:21px;height:21px}
.room-empty-v90{padding:23vh 14px 35px;text-align:center;color:#94866e}.room-empty-v90 h2{font-size:16px;font-weight:500}.room-empty-v90 p{font-size:13px;line-height:1.7}.room-empty-v90 button{margin-top:12px;font-size:13px}
#dialog.room-dialog-v90{margin:auto;border-radius:20px;width:calc(100% - 32px);max-width:480px;max-height:calc(100dvh - 32px);padding:0;color:#3b3326;background:#fffaf0f7;border:1px solid #f1e7d2;box-shadow:0 18px 90px #201a164f;overflow:auto}
#dialog.room-dialog-v90::backdrop{background:#1e1b1766;backdrop-filter:blur(7px)}
#dialog.room-dialog-v90>header{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;padding:14px 14px 8px;border:0;background:#fffaf0f5}
#dialog.room-dialog-v90>header h2{font-size:17px;font-weight:650;margin:0;line-height:1.4}
#dialog.room-dialog-v90>header button{min-width:40px;width:40px;min-height:40px;height:40px;font-size:26px;border:0;background:transparent;color:#776b56;padding:0}
#dialog.room-dialog-v90 .dialog-body{padding:6px 18px 19px}
.prayer-editor-v90{margin:0}.prayer-editor-v90 label{font-size:13px;line-height:1.5;color:#817359;font-weight:500;margin:8px 0 12px;display:block}
.prayer-editor-v90 input,.prayer-editor-v90 textarea{border:1px solid #e3d8c1;border-radius:10px;padding:11px 12px;margin-top:6px;background:#fffdf8;color:#342b1d;font-size:16px;line-height:1.5;width:100%}
.prayer-editor-v90 textarea{min-height:130px;max-height:32dvh;resize:vertical;padding-bottom:22px}
.prayer-editor-v90 .prayer-count{font-size:11px;color:#998c73;text-align:right;margin:-33px 12px 18px;pointer-events:none;position:relative}
.prayer-editor-v90 .room-public-notice{font-size:11px;line-height:1.5;color:#8b7c62;margin:8px 0 12px}
.prayer-editor-v90>.primary{width:100%;min-height:44px;border-radius:12px;background:#bd9347;border:0;color:#fff}.prayer-editor-v90>.primary:disabled{background:#dcc79e;color:#fff;opacity:1}
.room-dialog-v90 .community-help p{font-size:14px;line-height:1.75;margin:8px 0 15px}.room-help-controls{display:flex;flex-wrap:wrap;gap:8px}.room-help-controls button{font-size:13px;min-height:44px}
.prayer-action-menu{display:grid;gap:4px}.prayer-action-menu button{background:transparent;border:0;border-radius:10px;text-align:left;padding:12px;min-height:48px;font-size:15px;display:flex;align-items:center;gap:10px;color:#5e4927;box-shadow:none}.prayer-action-menu button:hover{background:#efe2c9}.prayer-action-menu .danger{color:#a34139}.prayer-action-menu img{width:25px;height:25px}
.prayer-detail-v90 header{display:flex;align-items:center;gap:10px}.prayer-detail-v90 header>div{flex:1}.prayer-detail-v90 header strong{font-size:14px;font-weight:500}.prayer-detail-v90 time{display:block;font-size:11px;color:#99876b;margin-top:2px}.prayer-detail-v90 header button{background:transparent;border:0;padding:10px;color:#806d4c}.prayer-detail-v90 header svg{width:22px;height:22px}
.prayer-detail-v90 .prayer-body{font-size:15px;line-height:1.8;margin:18px 0;overflow-wrap:anywhere}.prayer-detail-people{border-top:1px solid #e5d8bf;padding:8px 0;margin-bottom:13px}.prayer-detail-people p{font-size:13px;line-height:1.6;white-space:pre-wrap;overflow-wrap:anywhere}.prayer-detail-people strong{font-weight:500;color:#a17a2f}.prayer-detail-v90>.primary{display:flex;align-items:center;gap:6px;margin-left:auto;font-size:13px;border-radius:25px;background:#a47a31;color:#fff}.prayer-detail-v90>.primary img{width:22px;height:22px}
.room-v90 :focus-visible,.room-history-v90 :focus-visible,#dialog.room-dialog-v90 :focus-visible{outline:3px solid #cc9f41;outline-offset:3px}
@keyframes room-flow-v90{from{transform:translateY(0)}to{transform:translateY(-50%)}}
@media(prefers-reduced-motion:reduce){.room-stream-track{animation:none;transform:none}}
.reduced-motion .room-stream-track{animation:none;transform:none}
@media(max-height:520px){.room-v90 .live-snippets{height:100px}.room-v90 .live-room-header{padding-top:3px}.room-v90 .live-room-bottom{padding-top:4px;gap:5px}.room-v90 .live-room-tools{bottom:75px}#dialog.room-dialog-v90{max-height:calc(100dvh - 12px);width:calc(100% - 24px)}.prayer-editor-v90 textarea{min-height:75px}.prayer-editor-v90 label{margin:4px 0 8px}}
@media(max-width:350px){.room-v90 .live-compose{gap:5px}.room-v90 .live-compose button{font-size:12px;padding:10px}.room-v90 .live-compose input{padding:10px}.room-v90 .live-compose svg{width:14px}.room-v90 .live-room-bottom{padding-left:8px;padding-right:8px}.room-history-v90{padding-left:10px;padding-right:10px}}

.room-v90 .sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

.room-v90 .live-room-art{width:100%}.room-v90 .live-room-bottom{left:0;right:0}.room-v90 .live-snippet:nth-child(n+2){display:grid}.room-v90 .live-room-tools span{display:block}
#dialog.room-dialog-v90{position:fixed;top:calc(var(--room-offset,0px) + var(--room-visible-height,100dvh)/2);bottom:auto;left:0;right:0;margin:0 auto;transform:translateY(-50%);max-height:calc(var(--room-visible-height,100dvh) - 24px)}
body[data-room-page].dark .prayer-card-v90{background:#fff;color:#342c20;border-color:#eee6d9}body[data-room-page].dark .prayer-card-v90 time{color:#928673}body[data-room-page].dark .prayer-card-v90 dt{color:#99752e}

.prayer-gateway .room-open-badge{position:absolute;left:12px;top:12px;background:#fff5d8e8;color:#7a571c;border-radius:14px;padding:4px 9px;font-size:10px;line-height:1.4;font-weight:500}
#dialog.room-dialog-v90.room-menu-v90{width:240px;max-height:calc(100dvh - 24px);top:var(--menu-top,35%);left:var(--menu-left,calc(50% - 120px));right:auto;margin:0;transform:none;border-radius:13px;background:#fffdf7;box-shadow:0 5px 25px #2d25112b}
#dialog.room-menu-v90::backdrop{background:#00000006;backdrop-filter:none}#dialog.room-menu-v90>header{display:none}#dialog.room-menu-v90 .dialog-body{padding:5px}.room-menu-v90 .prayer-action-menu button{font-size:14px;border-radius:8px;min-height:48px}
.room-history-v90{animation:room-page-enter-v90 .2s ease-out}.room-v90{animation:room-reveal-v90 .2s ease-out}
@keyframes room-page-enter-v90{from{opacity:.7;transform:translateX(18px)}to{opacity:1;transform:none}}@keyframes room-reveal-v90{from{opacity:.65}to{opacity:1}}
@media(prefers-reduced-motion:reduce){.room-history-v90,.room-v90{animation:none}}.reduced-motion .room-history-v90,.reduced-motion .room-v90{animation:none}

/* Sparse, slow decorative motion; touch targets and prayer text stay still. */
.prayer-gateway .room-open-badge,.room-v90 .room-open-badge{display:inline-flex;align-items:center;gap:6px;border:1px solid #fff4d8;background:#f5dbadc9;color:#352819;border-radius:20px;padding:5px 9px;font-size:11px;font-weight:600;line-height:1.3;backdrop-filter:blur(8px);z-index:2}
.prayer-gateway .room-open-badge{top:12px;left:12px;right:auto}
.prayer-gateway[data-prayer-room=sieu] .room-open-badge{left:auto;right:12px}
.room-live-dot{--live-color:#40b77b;--live-halo:#40b77b50;display:inline-block;position:relative;flex:none;width:7px;height:7px;border-radius:50%;background:var(--live-color);box-shadow:0 0 5px var(--live-halo)}
[data-live-room=sieu] .room-live-dot{--live-color:#e35c66;--live-halo:#e35c6650}
.room-live-dot:after{content:"";position:absolute;inset:-3px;border:1px solid var(--live-color);border-radius:50%;animation:room-live-v91 2.8s ease-out infinite}
.room-v90 .room-open-badge{position:relative;padding:3px 8px;margin-top:3px;font-size:10px}
.room-v90 .live-room-header p:not(:empty){margin-top:3px;padding:3px 7px;border-radius:8px;background:#fff5e3e8;color:#53350f}
.room-v90[data-connection=offline] .room-open-badge{display:none}
.room-art-effects{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:1;contain:paint}
.room-light-particle{position:absolute;left:23%;top:68%;width:3px;height:3px;border-radius:50%;background:#fff8da;box-shadow:0 0 9px 3px #ffeac493;opacity:0;animation:room-light-v91 8s ease-in-out infinite}
.room-light-particle:nth-child(2){left:76%;top:55%;animation-delay:-4s;--drift:-17px}
.room-light-touch{position:absolute;left:45%;top:43%;width:9px;height:9px;border:1px solid #fff1bf85;border-radius:50%;opacity:0;animation:room-touch-v91 8s ease-out infinite;animation-delay:-2s}
.prayer-gateway .room-art-effects{border-radius:inherit}
.prayer-gateway .room-light-particle{width:2px;height:2px;box-shadow:0 0 6px 2px #ffeac480}
.prayer-gateway .room-art-effects i{animation-duration:10s}
.room-v90[data-motion-paused=true] .room-art-effects i,.room-v90[data-motion-paused=true] .room-live-dot:after,.room-v90[data-page-hidden=true] .room-art-effects i,.room-v90[data-page-hidden=true] .room-live-dot:after,body:has(#dialog[open]) .room-art-effects i{animation-play-state:paused}
.room-v90 .live-room-header svg{width:23px;height:23px}
.prayer-gateway .room-enter{display:flex;align-items:center;gap:6px}
.prayer-gateway .room-enter svg{width:14px;height:14px;flex:none}
@keyframes room-live-v91{0%{transform:scale(.7);opacity:.6}75%,100%{transform:scale(1.8);opacity:0}}
@keyframes room-light-v91{0%,12%{opacity:0;transform:translate3d(0,14px,0) scale(.5)}28%{opacity:.78}75%{opacity:.45}100%{opacity:0;transform:translate3d(var(--drift,20px),-115px,0) scale(1.2)}}
@keyframes room-touch-v91{0%,65%{opacity:0;transform:scale(.3)}68%{opacity:.55;transform:scale(.5)}95%,100%{opacity:0;transform:scale(4)}}
body.reduced-motion .room-art-effects,body.reduced-motion .room-live-dot:after{display:none}
@media(prefers-reduced-motion:reduce){.room-art-effects,.room-live-dot:after{display:none}.room-stream-track{animation:none!important}}

.room-v90 .live-room-header{display:grid}
.room-v90 .live-room-header>div{text-align:center;min-width:0}
.room-v90 .room-open-badge{top:auto;left:auto;right:auto;bottom:auto}

/* Keep decorative layers below the card text; generic V35 div styles must not
   turn the full-area particle layer into a second dark text gradient. */
.prayer-gateway,.home-rooms .prayer-gateway{aspect-ratio:3/5}
.prayer-gateway>img,.home-rooms .prayer-gateway>img{object-fit:cover;object-position:center 30%}
.prayer-gateway>.room-art-effects{padding:0;background:none;width:auto;align-self:stretch}
.prayer-gateway>div:not(.room-art-effects){position:relative;z-index:2;padding:14px 12px 18px;background:none;color:#fff}
.prayer-gateway h3{color:#fff;font-size:18px;line-height:1.25;margin:0 0 7px;text-shadow:0 1px 3px #0005}
.prayer-gateway .room-enter{color:#fff6e7;font-size:12px;font-weight:400;line-height:1.4}

@media(max-width:420px){.prayer-gateway h3{font-size:16px}.prayer-gateway .room-enter{font-size:11px}}

.language-switcher{position:relative;display:inline-block;font-family:system-ui,sans-serif;font-size:13px;color:inherit;flex:none;z-index:120}
.language-switcher summary{display:flex;align-items:center;gap:6px;min-height:38px;padding:5px 10px;border:1px solid #cdb788;border-radius:12px;cursor:pointer;background:#fff8e8;list-style:none;color:#463723;font-weight:600;white-space:nowrap}
.language-switcher summary::-webkit-details-marker{display:none}.language-switcher summary:after{content:'⌄';margin-left:2px}.language-switcher summary:focus-visible,.language-switcher a:focus-visible{outline:3px solid #946515;outline-offset:3px}
.language-switcher nav{position:absolute;right:0;top:calc(100% + 6px);display:grid!important;gap:3px!important;min-width:170px;padding:7px;background:#fffdf7;border:1px solid #d5c39c;border-radius:14px;box-shadow:0 10px 32px #44311426}
.language-switcher nav a{display:block!important;padding:10px 12px;border-radius:9px;color:#40301b!important;text-decoration:none!important;font-size:14px!important;white-space:nowrap}.language-switcher nav a:hover{background:#f5edda}.language-switcher a[aria-current]{background:#efe1ba;font-weight:700}
.language-bar{display:flex;justify-content:flex-end;padding:10px 20px;max-width:1200px;margin:auto}.original-language-note{font-size:14px;line-height:1.65;padding:12px 15px;border:1px solid #e1d2b0;border-radius:12px;background:#fff9ea;color:#675638;margin:14px 0}.original-title{font-weight:400;color:#746348;font-size:.85em;display:block;margin-top:6px}.language-banner{font-size:14px;line-height:1.6;padding:14px 18px;border-radius:12px;background:#f5ecda;border:1px solid #decca1}
html[lang^=zh] body{font-family:system-ui,-apple-system,'PingFang SC','PingFang TC','Microsoft YaHei','Noto Sans CJK SC',sans-serif}html[lang^=zh] .nav-item span,html[lang^=zh] button{letter-spacing:normal}
body[data-language]:not([data-language=vi]) .week-day>span{font-size:12px}body[data-language]:not([data-language=vi]) .wheel-tool strong{font-size:12px;line-height:1.25}body[data-language]:not([data-language=vi]) .room-enter{white-space:normal;line-height:1.3}
body[data-language]:not([data-language=vi]) .live-room-header h1{font-size:17px}body[data-language]:not([data-language=vi]) .live-compose button{font-size:12px}body[data-language]:not([data-language=vi]) .live-compose input{min-width:0}
.dark .language-switcher summary,.dark .language-switcher nav{background:#29251e;color:#f0e5cf;border-color:#706046}.dark .language-switcher nav a{color:#f0e5cf!important}.dark .language-switcher nav a:hover,.dark .language-switcher a[aria-current]{background:#51432c}
@media(max-width:680px){.topbar{gap:7px!important}.topbar .language-switcher summary{padding:5px 7px;min-height:36px}.topbar .language-switcher summary>span:last-child{max-width:56px;overflow:hidden;text-overflow:ellipsis}.topbar #shell-heading{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar #account-link{font-size:12px}.sitebar,.temple-public-header{flex-wrap:wrap;gap:10px}.language-switcher nav{max-width:calc(100vw - 28px)}body[data-language]:not([data-language=vi]) .nav-item span{font-size:11px;line-height:1.25}.language-bar{padding:8px 12px}}

.daily-practice{max-width:860px;margin-inline:auto;overflow-wrap:anywhere}.daily-practice h1{margin:24px 0 16px}.daily-practice .daily-intro{line-height:1.75;color:var(--muted,#62605b);margin-bottom:24px}.daily-practice button,.daily-practice a.button,.daily-practice select,.daily-practice input,.daily-dialog button,.daily-dialog a.button{min-height:44px;min-width:44px}.daily-practice a.button,.daily-dialog a.button{display:inline-flex;align-items:center;justify-content:center;white-space:normal;text-align:center}.daily-practice .daily-back{justify-content:flex-start;font-size:16px;padding:10px 16px}.daily-practice .actions{gap:10px;flex-wrap:wrap}.daily-practice button,.daily-dialog button{white-space:normal;line-height:1.45}.daily-practice .form-grid{gap:16px}.daily-practice .daily-selectors{margin-bottom:20px}.daily-practice select,.daily-practice input{width:100%;font-size:16px}.daily-practice label{display:block;line-height:1.6}.daily-practice #refill-prayer{margin-top:12px}.daily-practice .daily-body-label{margin:24px 0 8px;font-weight:700}.daily-practice textarea,.daily-dialog textarea{width:100%;min-height:160px;resize:vertical;font-size:20px;line-height:1.85;box-sizing:border-box}.daily-practice .daily-deed{padding:20px 24px;border:1px solid #d6bd87;border-radius:18px;background:var(--surface,#fffaf0);margin:24px 0}.daily-practice .daily-deed h2{font-size:20px;margin:0 0 10px}.daily-practice .daily-deed p{margin:0;line-height:1.85}.daily-practice .daily-room-choice{margin:24px 0;padding-top:16px;border-top:1px solid var(--line,#dcd6ca)}.daily-practice .daily-room-choice p{line-height:1.7}.daily-practice .fine{line-height:1.65;font-size:14px}.daily-practice #daily-action-status:empty{display:none}.daily-practice :focus-visible,.daily-dialog :focus-visible{outline:3px solid #9b6317;outline-offset:3px}.daily-practice .daily-font-controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:12px 0 20px;border-bottom:1px solid var(--line,#dcd6ca)}.daily-practice .daily-font-controls output{min-width:50px;text-align:center}.daily-practice .daily-reader{font-size:var(--daily-read-size,24px);line-height:1.9}.daily-practice .daily-reader h2{font-size:1.05em;line-height:1.4;margin:26px 0 12px}.daily-practice .daily-reader p{font-size:inherit;line-height:inherit}.daily-practice .daily-reader ol{padding-inline-start:1.5em}.daily-practice .daily-reader li{padding-inline-start:.25em;margin-bottom:18px}.daily-practice .daily-duration{font-size:16px!important;font-weight:500}.daily-practice .daily-guide-actions{padding-top:20px;border-top:1px solid var(--line,#dcd6ca)}.daily-practice .daily-source{display:inline-flex;align-items:center;min-height:44px}.daily-practice .card h2{font-size:21px}.daily-practice .card p{line-height:1.7}.daily-dialog{max-width:680px;max-height:90dvh}.daily-dialog .dialog-body{overflow-wrap:anywhere}.daily-dialog label{display:block;margin:12px 0;line-height:1.7}.daily-dialog .actions{flex-wrap:wrap;gap:10px}.room-prepared-draft{display:block;min-height:44px;width:100%;margin:0 0 8px;padding:10px 14px;border-radius:12px;background:#fff9ec;color:#55390d;font-size:16px;line-height:1.5}.room-prepared-draft:focus-visible{outline:3px solid #fff;outline-offset:3px}@media(max-width:600px){.daily-practice .form-grid{grid-template-columns:1fr}.daily-practice .actions>*{flex:1 1 180px}.daily-practice .daily-deed{padding:16px}.daily-practice .daily-font-controls{gap:8px}.daily-practice .daily-font-controls button{flex:1}.daily-practice .daily-font-controls span{font-size:14px}.daily-practice .daily-reader{line-height:1.8}.daily-practice .daily-reader ol{padding-inline-start:1.25em}.daily-dialog{width:calc(100% - 24px);max-width:680px}.daily-dialog .actions>*{flex:1 1 160px}}@media(prefers-reduced-motion:reduce){.daily-practice *,.daily-dialog *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

.policy-dialog-v95{box-sizing:border-box;width:min(94vw,640px);max-height:88dvh;overflow:auto;border:1px solid #d2b982;border-radius:20px;padding:24px;color:#302b22;background:#fffdf7;font:17px/1.6 system-ui,sans-serif}.policy-dialog-v95::backdrop{background:#17130c99}.policy-dialog-v95 h2{font-size:24px;line-height:1.3;margin:0 0 16px}.policy-dialog-v95 ul{padding-left:24px}.policy-dialog-v95 li{margin:10px 0}.policy-dialog-v95 a{color:#805516;text-decoration:underline}.policy-check{display:flex;gap:12px;align-items:center;min-height:48px;cursor:pointer}.policy-check input{width:24px;height:24px;flex:none;accent-color:#8a641e}.policy-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:12px;margin-top:18px}.policy-actions button{min-width:100px;min-height:48px;padding:10px 18px;border-radius:12px;border:1px solid #a9894d;background:#fff8e5;color:#45351d;font:inherit}.policy-actions button.primary{background:#805919;color:#fff}.policy-actions button:disabled{opacity:.45;cursor:not-allowed}.policy-error{color:#a12828}.policy-dialog-v95 :focus-visible{outline:3px solid #3064b6;outline-offset:3px}@media(max-width:480px){.policy-dialog-v95{padding:20px 16px}.policy-actions button{flex:1}}

/* V96: focused meditation, compact scene selection and readable breath guidance. */
.meditation-active .meditation-dial{width:clamp(132px,34vw,190px);top:50%}
.meditation-active.is-preparing .meditation-dial{width:clamp(210px,45vw,260px)}
.meditation-active .timer-ring{opacity:.95;transform:scale(var(--ring-scale,1)) rotate(var(--orbit-angle,0deg))}
.meditation-active:not(.is-preparing) .timer-ring{opacity:.72}
.meditation-active .timer-track{stroke:#ffe2a0;stroke-width:2.2;filter:drop-shadow(0 1px 2px #51320a66)}
.meditation-active .timer-trail{stroke:#fff1c7;stroke-width:2.7}
.meditation-active #timer-dot{fill:#fff6d7;filter:drop-shadow(0 0 7px #ffe194);opacity:1}
.meditation-active .breath-aura{border:1px solid #f6d598;background:radial-gradient(#fbe5ba28,transparent 65%,#ffe3a640);box-shadow:0 0 18px #ffe6af33}
.meditation-active .timer-label{color:#352719;text-shadow:0 1px 3px #fff2d8,0 0 12px #fff1d0;font-size:20px}
.meditation-active.is-preparing #clock-label{font-size:clamp(64px,14vw,88px);text-shadow:0 1px 10px #402b1a66}
.meditation-active .meditation-timing{top:70%}
.meditation-active .meditation-head #med-exit,.meditation-active .scene-select,.meditation-active #timer-pause{min-width:44px;min-height:44px}
.meditation-active .med-audio-retry{position:absolute;bottom:calc(100% + 20px);left:50%;transform:translateX(-50%);min-height:44px;white-space:nowrap;background:#fff4da;color:#4b351c}
dialog.med-scene-strip{width:min(440px,calc(100vw - 24px));max-width:none;max-height:230px;inset:auto 0 max(110px,calc(env(safe-area-inset-bottom) + 90px));margin:0 auto;border:1px solid #fff6;border-radius:20px;background:#fff5e5ed;box-shadow:0 8px 30px #2c1c2426;backdrop-filter:blur(12px)}
dialog.med-scene-strip::backdrop{background:#00000008;backdrop-filter:none}
dialog.med-scene-strip>header{padding:4px 10px 0;background:transparent;border:0;min-height:44px}
dialog.med-scene-strip>header h2{font-size:15px;margin:0}
dialog.med-scene-strip [data-close]{min-width:44px;min-height:44px}
dialog.med-scene-strip .dialog-body{padding:4px 10px 12px}
dialog.med-scene-strip .scene-options{display:flex;gap:10px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;padding:3px 2px 8px;margin:0}
dialog.med-scene-strip .scene-options button{flex:0 0 78px;width:78px;min-height:124px;padding:3px;border-radius:12px;scroll-snap-align:start;background:transparent;border:2px solid transparent;color:#44301c}
dialog.med-scene-strip .scene-options button[aria-pressed=true]{border-color:#a97528;background:#fff7e9}
dialog.med-scene-strip .scene-options img{width:68px;height:84px;object-fit:cover;border-radius:8px;display:block}
dialog.med-scene-strip .scene-options span{display:block;font-size:12px;line-height:1.25;padding:5px 0;white-space:normal}
dialog.med-exit-dialog{width:min(360px,calc(100vw - 40px));border-radius:20px;background:#fff8ebf5;text-align:center}
.med-exit-dialog .med-exit-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.med-exit-dialog .med-exit-actions button{min-height:48px;padding:10px;white-space:normal}
.med-exit-dialog #med-finish-exit{color:#a32925;background:#fff2e7}
@media(prefers-reduced-motion:reduce){.meditation-active .timer-ring{transform:none}.meditation-active .breath-aura{transform:none}}

/* V97 account controls share the existing warm, quiet visual language. */
.pg-page .pg-button,.pg-page .pg-field input,.pg-page summary{min-height:44px}
.pg-page .pg-row{flex-wrap:wrap;gap:12px}
.pg-page .pg-profile-grid>div{min-width:0}
.pg-page details.pg-panel>summary{cursor:pointer;font-weight:700;display:flex;align-items:center;gap:8px}
.pg-page details.pg-panel>summary::before{content:'＋';font-size:1.1em}
.pg-page details[open].pg-panel>summary::before{content:'−'}
.pg-page details.pg-panel[open]>summary{margin-bottom:14px}
.pg-page summary:focus-visible,.pg-page .pg-button:focus-visible{outline:3px solid #9a681d;outline-offset:4px}
.pg-page .pg-recovery-code{white-space:normal;overflow-wrap:anywhere;user-select:all;display:block;line-height:1.8}
.pg-merge-copy{white-space:pre-wrap;overflow-wrap:anywhere;max-height:40vh;overflow:auto;font-size:14px}
.pg-page .pg-field input{font-size:16px}
@media(max-width:640px){.pg-page .pg-profile-grid{grid-template-columns:1fr}.pg-page .pg-row>.pg-button{flex:1 1 180px}.pg-page .pg-dialog{max-width:calc(100vw - 24px)}}
