/* Canonical controls loaded after legacy presentation layers. */
html body .ruh-control{display:block!important;position:relative!important;width:100%!important;min-width:0!important;grid-template-columns:none!important}
html body input.ruh-control-source,html body select.ruh-control-source{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important;padding:0!important;border:0!important;overflow:hidden!important}
html body .ruh-control-value{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:8px!important;width:100%!important;min-width:0!important;min-height:44px!important;padding:11px 12px!important;background:#fff!important;color:#27313c!important;border:1px solid #d6d1c2!important;border-radius:12px!important;font:500 16px/1.4 Arial,sans-serif!important;text-align:left!important;white-space:nowrap!important;box-shadow:none!important;cursor:pointer!important}
html body .ruh-control-value::after{content:'⌄';flex:none;color:#645b47}
html body .ruh-control-panel{position:absolute!important;inset:auto 0 auto auto!important;top:calc(100% + 5px)!important;z-index:200!important;min-width:min(280px,calc(100vw - 36px));max-width:calc(100vw - 28px);max-height:310px;overflow:auto;background:#fffdf7;border:1px solid #c7ac65;border-radius:12px;padding:8px;box-shadow:0 8px 24px #071a3826;color:#15283f}
html body .ruh-control-panel[hidden]{display:none!important}
html body .ruh-control-panel button{background:#fffdf7!important;color:#183047!important;font:600 15px/1.3 Arial,sans-serif!important;border:0!important;border-radius:6px!important;padding:9px!important;min-height:38px!important;box-shadow:none!important;cursor:pointer!important}
html body .ruh-control-panel button:hover,html body .ruh-control-panel button:focus-visible{background:#f7e8be!important;outline:2px solid #b18c34}
html body .ruh-control-panel button[aria-selected=true],html body .ruh-control-panel button[aria-pressed=true]{background:#102d52!important;color:white!important}
html body .ruh-control-panel button:disabled{opacity:.4;cursor:not-allowed!important}
.ruh-select .ruh-control-panel{display:flex;flex-direction:column;gap:3px}.ruh-select .ruh-control-panel button{text-align:left}
.ruh-time-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.ruh-time-columns small{display:block;text-align:center;padding:4px}.ruh-time-options{max-height:160px;overflow-y:auto;overscroll-behavior:contain;display:grid;gap:3px}.ruh-time-footer{display:flex;gap:8px;margin-top:8px}.ruh-time-footer button{flex:1}
.ruh-date-toolbar{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-bottom:8px}.ruh-date-toolbar input{width:80px!important;min-width:0!important;padding:7px!important;font-size:16px!important}.ruh-date-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:2px;text-align:center}.ruh-date-grid small{padding:5px 0}
html body .ruh-invalid+.ruh-control .ruh-control-value{border-color:#b52c2c!important}html body .ruh-control:focus-within{z-index:210}
html body :is(form,.card,.panel,.form-card,.data-entry-card,.checker-shell,.location-field):has(.ruh-control:focus-within){overflow:visible!important}
html body .grid>*,html body .grid2>*,html body .form-grid>*,html body .checker-form>*{min-width:0}
html body [hidden]{display:none!important}
html body .calendar-grid .day-cell{cursor:default!important}.day-functions{display:flex;flex-wrap:wrap;gap:4px;margin-top:7px}.day-functions span{font-size:10px;padding:3px 5px;border-radius:5px;background:#e7efdc;color:#315023;line-height:1.25}.calendar-location-note{font-size:12px;color:#6c6250}
@media(max-width:900px){html body:not(.page-home):not(.page-about) .site-header .nav:not(.ruh-menu-open),html body:not(.page-home):not(.page-about) .header.unified-tool-header .ruh-tool-nav:not(.ruh-menu-open){display:none!important}html body:not(.page-home):not(.page-about) .site-header .nav.ruh-menu-open,html body:not(.page-home):not(.page-about) .header.unified-tool-header .ruh-tool-nav.ruh-menu-open{display:flex!important}}
@media(max-width:600px){
 html body .grid,html body .grid2,html body .form-grid{grid-template-columns:minmax(0,1fr)!important}html body .grid>*,html body .grid2>*,html body .form-grid>*{grid-column:auto!important}
 html body:not(.page-home):not(.page-about) .site-header,html body:not(.page-home):not(.page-about) .header.unified-tool-header{flex-wrap:nowrap!important;gap:5px!important}html body:not(.page-home):not(.page-about) .ruh-brand-lockup{min-width:0!important;max-width:none!important;gap:7px!important}
 html body:not(.page-home):not(.page-about) .ruh-brand-copy strong{font-size:18px!important}html body:not(.page-home):not(.page-about) .ruh-brand-copy .ruh-unique{font-size:6px!important;letter-spacing:.7px!important}html body:not(.page-home):not(.page-about) .ruh-brand-copy small{display:none!important}
 html body .ruh-control-panel{left:0!important;right:auto!important;min-width:min(280px,calc(100vw - 36px))!important;width:min(320px,calc(100vw - 36px))!important;box-sizing:border-box}html body .ruh-control-value{font-size:16px!important;min-height:46px!important}
 html[lang] body #birthTab .grid,html[lang] body #kocaramTab .grid,html[lang] body #gocharaTab .grid{grid-template-columns:minmax(0,1fr)!important}
 html body #birthTab .grid>*,html body #kocaramTab .grid>*,html body #gocharaTab .grid>*{grid-column:1!important;min-width:0!important}
}
html body .ruh-control-panel.ruh-floating-panel{position:fixed!important;inset:auto!important;left:var(--picker-left)!important;top:var(--picker-top)!important;width:var(--picker-width)!important;min-width:0!important;max-width:calc(100vw - 24px)!important;z-index:1200!important;box-sizing:border-box}
html body .ruh-date-grid button{padding:7px 2px!important;min-width:0!important;text-align:center!important}
html[lang] body .ruh-date-toolbar button{flex:0 0 36px!important;width:36px!important;padding:7px!important}
html[lang] body .ruh-date-toolbar input{flex:0 0 84px!important;width:84px!important;max-width:84px!important;min-width:84px!important}
html[lang] body .ruh-date-toolbar span{flex:1;text-align:center}
html[lang] body .ruh-time-footer button{flex:1!important;width:auto!important;min-width:0!important}
html body .day-functions{display:flex;flex-flow:row wrap;gap:4px;margin-top:5px}
html body .day-functions .calendar-function-icon{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;background:transparent;line-height:1;font-size:23px}
html body .calendar-function-icon img{display:block;width:28px!important;height:28px!important;object-fit:cover;border-radius:5px}
.ruh-tracking-notice{margin-top:14px;padding:10px;border:1px solid #dcc79f;border-radius:9px;background:#fffdf7;color:#5c5549;font:12px/1.45 Arial,sans-serif}
.ruh-tracking-notice label{display:flex!important;align-items:flex-start;gap:8px;font:inherit!important}
.ruh-tracking-notice input[type=checkbox]{position:static!important;width:17px!important;height:17px!important;flex:none;margin:2px 0!important;opacity:1!important;appearance:auto!important}
.ruh-tracking-notice small{display:block;margin-top:6px;font:inherit}
/* One centralized entry style: manual date + calendar, single time + AM/PM. */
html[lang] body .ruh-control.ruh-inline-entry{display:grid!important;grid-template-columns:minmax(0,1fr) 78px!important;gap:8px!important;align-items:center!important}
html[lang] body .ruh-date.ruh-inline-entry{grid-template-columns:minmax(0,1fr) 46px!important}
html[lang] body input.ruh-entry,html[lang] body select.ruh-period,html[lang] body input.ruh-client-field{
 box-sizing:border-box!important;position:static!important;width:100%!important;min-width:0!important;max-width:100%!important;height:48px!important;min-height:48px!important;margin:0!important;padding:11px 12px!important;border:1px solid #d6d1c2!important;border-radius:12px!important;background:#fff!important;color:#27313c!important;font:500 16px/1.4 Arial,sans-serif!important;letter-spacing:normal!important;opacity:1!important;visibility:visible!important;pointer-events:auto!important
}
html[lang] body select.ruh-period{padding:10px 6px!important;appearance:auto!important}
html[lang] body .ruh-calendar-toggle{width:46px!important;height:48px!important;min-height:48px!important;padding:8px!important;justify-content:center!important;font-size:25px!important}
html body .ruh-calendar-toggle::after{content:none!important}
html[lang] body .ruh-client-field+.ruh-select>.ruh-control-value{height:48px!important;min-height:48px!important}
html[lang] body .ruh-field-label{display:block!important;margin-bottom:7px!important;color:#15283f!important;font:600 15px/1.4 Arial,sans-serif!important}
html[lang] body .ruh-entry:focus,html[lang] body .ruh-period:focus,html[lang] body input.ruh-client-field:focus{outline:2px solid #b18c34!important;outline-offset:1px!important}
html[lang] body .ruh-entry[aria-invalid=true]{border-color:#b52c2c!important}
/* One visible boundary per control, including its picker affordance. */
.ruh-transit-tabs{display:flex;gap:10px;margin:14px 0}.ruh-transit-tabs button{flex:1;padding:14px;border:1px solid #d6a437;border-radius:10px;background:#fff;color:#0b2b57;font-weight:bold;cursor:pointer}.ruh-transit-tabs button[aria-selected=true]{background:#0b2b57;color:white}.ruh-transit-card{position:relative;padding:14px 90px 14px 16px;margin:10px 0;border:1px solid #dfcea8;border-radius:14px;background:#fffdf8}.ruh-transit-card h3{font-size:18px;margin:0 0 8px}.ruh-transit-card p{font-size:14px}.ruh-transit-card>strong{position:absolute;right:14px;top:20px;color:#8b661c;font-size:16px}#upcomingTransitPanel[hidden]{display:none!important}
.ruh-approved-brand{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:8px 16px!important;align-items:center!important;padding:14px 18px!important;min-height:104px!important}
.ruh-approved-brand .cta-brand{grid-column:1!important;display:block!important;line-height:1!important}
.ruh-approved-brand .cta-brand>span{display:block!important;font:700 27px/1.1 Georgia,serif!important;color:#09274d!important}
.ruh-approved-brand .cta-brand>small{display:block!important;margin-top:4px!important;color:#ae7e20!important;font:800 10px/1.2 Arial,sans-serif!important;letter-spacing:2px!important}
.ruh-approved-brand #resultBrandTag{grid-column:1!important;font-size:12px!important}
.ruh-approved-brand .result-brand-actions{grid-column:2!important;grid-row:1 / span 2!important;display:flex!important;flex-direction:column-reverse!important;align-items:flex-end!important;gap:8px!important}
.ruh-approved-brand .result-brand-btn.book{display:inline-flex!important;padding:12px 14px!important;background:#123968!important;color:white!important;border-radius:12px!important;font:700 12px/1.2 Arial,sans-serif!important;text-decoration:none!important}
@media(max-width:400px){.ruh-approved-brand{grid-template-columns:1fr!important}.ruh-approved-brand .result-brand-actions{grid-column:1!important;grid-row:auto!important;flex-direction:row-reverse!important;justify-content:flex-end!important}}
html[lang] body .ruh-control.ruh-inline-entry{position:relative!important;display:flex!important;gap:0!important;border:1px solid #d6d1c2!important;border-radius:11px!important;background:#fff!important;height:48px!important;min-height:48px!important;margin:0!important}
html[lang] body .ruh-inline-entry input.ruh-entry{flex:1!important;border:0!important;background:transparent!important;height:46px!important;min-height:46px!important;padding-right:44px!important}
html[lang] body .ruh-inline-entry .ruh-calendar-toggle,html[lang] body .ruh-clock-toggle{position:absolute!important;right:0!important;top:0!important;width:42px!important;height:46px!important;min-height:46px!important;border:0!important;border-radius:0 10px 10px 0!important;background:transparent!important;color:#14283e!important;font-size:22px!important;cursor:pointer}
html[lang] body input.ruh-native-time-picker{position:absolute!important;width:1px!important;height:1px!important;min-height:0!important;opacity:0!important;padding:0!important;border:0!important;right:20px!important;bottom:0!important;pointer-events:none!important}
html[lang] body .ruh-inline-entry:focus-within{outline:2px solid #b18c34;outline-offset:1px}
html[lang] body .ruh-inline-entry input.ruh-entry:focus{outline:0!important}
html[lang] body .ruh-inline-entry:has([aria-invalid=true]){border-color:#b52c2c!important}
html[lang] body .form-grid,html[lang] body .input-grid{align-items:end!important}
html[lang] body input:not([type=hidden]):not(.ruh-control-source):not(.ruh-native-time-picker):not([type=checkbox]):not([type=radio]){box-sizing:border-box;min-height:48px}
html[lang] body .location-field label{margin-bottom:7px!important;font-size:15px!important;line-height:1.4!important}
html[lang] body:not(.page-home):not(.page-about) .hero{box-sizing:border-box!important;width:calc(100% - 32px)!important;max-width:none!important;padding-left:0!important;padding-right:0!important;margin-inline:16px!important}
html[lang] body:not(.page-home):not(.page-about) .brand-orbit,html[lang] body:not(.page-home):not(.page-about) .ruh-brand-orbit{border:0!important;box-shadow:none!important;background:transparent!important;padding:0!important;border-radius:50%!important}
html[lang] body:not(.page-home):not(.page-about) .brand-orbit::before,html[lang] body:not(.page-home):not(.page-about) .brand-orbit::after,html[lang] body:not(.page-home):not(.page-about) .ruh-brand-orbit::before,html[lang] body:not(.page-home):not(.page-about) .ruh-brand-orbit::after{content:none!important;display:none!important}
html[lang] body:not(.page-home):not(.page-about) .brand-mark,html[lang] body:not(.page-home):not(.page-about) .ruh-brand-orbit img,html[lang] body:not(.page-home):not(.page-about) .brand-mark img{border:0!important;box-shadow:none!important;border-radius:50%!important;object-fit:contain!important}
@media(max-width:600px){html[lang] body:not(.page-home):not(.page-about) .hero{width:calc(100% - 20px)!important;margin-inline:10px!important}html[lang] body:not(.page-home):not(.page-about) .ruh-entry{font-size:16px!important}}
.festival-devotional-icon{display:inline-block;width:32px;height:32px;object-fit:contain;vertical-align:middle}
.detail-feature-icon .festival-devotional-icon{width:48px;height:48px}
.festival-menu{max-height:320px;overflow-y:auto;overscroll-behavior:contain}
.ruh-approved-brand{border:1px solid #dfbd67;border-radius:18px;background:#fffdf8;margin-top:14px}
.ruh-approved-brand .cta-tagline{grid-column:1;font-size:12px;margin:0}
@media(pointer:coarse){html[lang] body input.ruh-native-time-picker{width:42px!important;height:46px!important;top:0!important;right:0!important;bottom:auto!important;pointer-events:auto!important;z-index:2!important;cursor:pointer}}
