.lbdsc{--ink:#283432;--ivory:#fbf8f1;--gold:#a08042;--green:#cbdcc8;--line:#dcded5;color:var(--ink);background:var(--ivory);border:1px solid var(--line);border-radius:18px;padding:clamp(12px,3vw,32px);font:15px/1.5 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;max-width:1200px;margin:24px auto;box-sizing:border-box}
.lbdsc *{box-sizing:border-box}.lbdsc h2,.lbdsc h3,.lbdsc p{color:inherit}.lbdsc h2{font-size:clamp(24px,3vw,36px);line-height:1.2;margin:8px 0 12px}.lbdsc h3{font-size:19px;margin:8px 0}.lbdsc-header{margin-bottom:24px}.lbdsc-eyebrow{letter-spacing:.14em;font-size:11px;font-weight:700}.lbdsc-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:14px 0}.lbdsc-navigation{justify-content:center;margin:24px 0}.lbdsc-navigation h3{flex:1;text-align:center}.lbdsc .lbdsc-button{font:inherit;color:var(--ink);background:#fffdf8;border:1px solid #bfc5bb;border-radius:8px;padding:9px 14px;min-height:44px;cursor:pointer;box-shadow:none;letter-spacing:normal;text-transform:none;line-height:1.35}.lbdsc .lbdsc-button:hover{border-color:var(--ink);background:#f1f1e8}.lbdsc .lbdsc-button[aria-pressed=true]{color:white;background:var(--ink);border-color:var(--ink)}.lbdsc .lbdsc-button:disabled{opacity:.4;cursor:default}.lbdsc button:focus-visible,.lbdsc summary:focus-visible,.lbdsc input:focus-visible{outline:3px solid #a7674c;outline-offset:3px}.lbdsc-filter{display:flex;align-items:center;gap:7px;margin-left:auto;min-height:44px}.lbdsc-filter input{width:18px;height:18px;accent-color:var(--ink)}.lbdsc-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.lbdsc-weekday{font-size:12px;text-align:center;text-transform:uppercase;padding:8px 0;letter-spacing:.08em}.lbdsc .lbdsc-day{position:relative;display:flex;flex-direction:column;align-items:flex-start;min-width:0;min-height:174px;text-align:left;border:1px solid var(--line);border-radius:9px;padding:12px 9px;background:#fffefa;font-size:12px;white-space:normal}.lbdsc-date{font-size:20px;font-weight:650}.lbdsc-lunar{font-family:"Songti SC","Noto Serif CJK SC",serif;font-size:12px;color:#58625a;margin:2px 0 9px}.lbdsc-summary{display:flex;flex-direction:column;gap:4px;width:100%;margin-top:8px}.lbdsc-type{font-size:11px;letter-spacing:.06em}.lbdsc-badge{font-size:10px;font-weight:700;letter-spacing:.08em}.lbdsc-time{margin-top:6px;font-size:11px}.lbdsc-summary small{font-size:10px}.lbdsc .lbdsc-day--output{background:#faf0d9;border-color:#bba16b}.lbdsc .lbdsc-day--resource{background:#eef4e9;border-color:#a6bba1}.lbdsc .lbdsc-day--prime{border-width:2px}.lbdsc .lbdsc-day--average{background:#eeece6;border-color:#bdbbb3}.lbdsc-today{font:700 9px/1.2 system-ui;text-transform:uppercase;letter-spacing:.08em;border-bottom:2px solid var(--ink);margin-bottom:3px}.lbdsc-day[aria-current=date]{outline:2px solid var(--ink);outline-offset:1px}.lbdsc-status:empty{display:none}.lbdsc-note{font-size:12px;color:#62685e;border-top:1px solid var(--line);padding-top:18px;margin-top:22px}.lbdsc-upcoming{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.lbdsc-card{border:1px solid;border-radius:12px;padding:22px}.lbdsc-card .lbdsc-type{font-size:14px}.lbdsc-card .lbdsc-time{font-size:14px}.lbdsc-card .lbdsc-button{margin-top:18px}.lbdsc-purpose{font-size:14px;line-height:1.65}.lbdsc .lbdsc-panel{position:fixed;inset:0 0 0 auto;margin:0;width:min(500px,95vw);max-width:95vw;height:100dvh;max-height:100dvh;overflow-y:auto;background:var(--ivory);color:var(--ink);border:0;border-left:1px solid var(--line);padding:30px;box-shadow:-10px 0 50px #0002}.lbdsc-panel::backdrop{background:#19262060}.lbdsc-close{float:right;margin-bottom:18px}.lbdsc-panel h2{clear:both;font-size:27px}.lbdsc-panel h3{margin-top:26px}.lbdsc-detail-badge{letter-spacing:.06em;font-weight:700}.lbdsc-explanation{background:#eceee4;padding:14px;border-radius:8px}.lbdsc-hour{padding:14px 0;border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:4px}.lbdsc-hour small{font-size:12px}.lbdsc details{margin:24px 0}.lbdsc summary{cursor:pointer;min-height:44px;padding:10px 0;font-weight:650}.lbdsc dl{font-size:13px;display:grid;grid-template-columns:1fr 1fr;gap:9px}.lbdsc dd{margin:0}.lbdsc dt{font-weight:600}
@media(max-width:767px){.lbdsc{padding:12px;border-radius:12px;margin:12px 0}.lbdsc-header{margin-bottom:16px}.lbdsc-toolbar{gap:6px}.lbdsc .lbdsc-button{padding:8px 10px;font-size:13px}.lbdsc-navigation h3{font-size:16px}.lbdsc-upcoming{grid-template-columns:1fr}.lbdsc-card{padding:18px}.lbdsc-calendar{gap:3px}.lbdsc .lbdsc-day{min-height:145px;padding:6px 3px;font-size:10px;border-radius:5px}.lbdsc-date{font-size:16px}.lbdsc-weekday{font-size:9px;letter-spacing:0}.lbdsc-lunar{font-size:10px;overflow-wrap:anywhere}.lbdsc-type{font-size:8px;letter-spacing:0}.lbdsc-badge{font-size:7px;letter-spacing:0}.lbdsc-time{font-size:8px;overflow-wrap:anywhere}.lbdsc-summary small{font-size:8px}.lbdsc-filter{margin-left:0}.lbdsc .lbdsc-panel{inset:auto 0 0;width:100%;max-width:100%;height:92dvh;max-height:92dvh;border-radius:18px 18px 0 0;padding:22px}.lbdsc-note{font-size:11px}}
@media(prefers-reduced-motion:reduce){.lbdsc *{scroll-behavior:auto!important}}
.lbdsc-short{display:none}
@media(max-width:767px){.lbdsc-calendar .lbdsc-full{display:none}.lbdsc-calendar .lbdsc-short{display:block}.lbdsc-calendar .lbdsc-short>span{display:block}.lbdsc-calendar .lbdsc-type{font-size:10px;letter-spacing:.02em}.lbdsc-calendar .lbdsc-badge{font-size:9px}.lbdsc-calendar .lbdsc-time{font-size:10px;line-height:1.5}.lbdsc-calendar .lbdsc-activation{font-size:7px}.lbdsc-calendar .lbdsc-day{min-height:156px}.lbdsc-calendar .lbdsc-lunar{font-size:10px}.lbdsc-calendar .lbdsc-summary{gap:4px}}
/* Day Pillar: Heavenly Stem above Earthly Branch, independent of day rating. */
.lbdsc-pillar{position:absolute;top:10px;right:8px;display:flex;flex-direction:column;align-items:center;font:21px/1.1 "Kaiti SC","Kaiti TC","STKaiti","KaiTi","楷体","BiauKai",serif;color:var(--ink);font-weight:600;gap:2px;pointer-events:none}
.lbdsc-calendar .lbdsc-date{padding-right:25px}
.lbdsc-calendar .lbdsc-lunar{margin-top:14px}
.lbdsc-calendar .lbdsc-today{max-width:calc(100% - 23px)}
@media(max-width:767px){.lbdsc-calendar .lbdsc-pillar{top:7px;right:3px;font-size:13px;line-height:1.12;gap:1px}.lbdsc-calendar .lbdsc-date{font-size:14px;padding-right:13px}.lbdsc-calendar .lbdsc-today{font-size:7px;letter-spacing:0;max-width:calc(100% - 12px)}.lbdsc-calendar .lbdsc-lunar{margin-top:18px}.lbdsc-calendar .lbdsc-day{min-height:169px}}
.lbdsc-transitions{border:1px solid #c6cabc;border-left:3px solid #8b947c;border-radius:8px;padding:12px 16px;margin:0 0 18px;background:#f1f2e9;font-size:13px}.lbdsc-transitions p{margin:6px 0}.lbdsc-transitions small{display:block;color:#505b4e;font-size:12px}.lbdsc-transition-marker{margin-top:auto;padding-top:8px;font-size:10px;color:#495343;font-weight:600}.lbdsc-panel .lbdsc-transitions{margin-top:18px}
@media(max-width:767px){.lbdsc-transitions{font-size:12px;padding:10px}.lbdsc-transitions small{font-size:11px}.lbdsc-calendar .lbdsc-transition-marker{font-size:8px}}

.lbdsc-timezone{font-size:12px;color:#58625a}
.lbdsc-date-picker{display:flex;align-items:flex-end;justify-content:center;gap:8px;flex:1;margin:0}
.lbdsc-date-picker label{display:flex;flex-direction:column;font-size:12px;gap:4px}
.lbdsc-date-picker select{font:inherit;font-size:15px;color:var(--ink);background:#fffdf8;border:1px solid #bfc5bb;border-radius:8px;min-height:44px;padding:8px;max-width:100%}
.lbdsc select:focus-visible{outline:3px solid #a7674c;outline-offset:3px}
@media(max-width:767px){.lbdsc-date-picker{flex-basis:100%;order:-1}.lbdsc-date-picker select{font-size:14px}.lbdsc-navigation{justify-content:space-between}}

.lbdsc .lbdsc-go{color:#fff;background:var(--ink);font-weight:700}.lbdsc .lbdsc-go:hover{color:#fff;background:#40534f}.lbdsc .lbdsc-go.is-pending{outline:2px solid var(--gold);outline-offset:2px}
.lbdsc-location{display:flex;flex-wrap:wrap;align-items:flex-end;gap:8px;margin:14px 0}.lbdsc-location label{display:flex;flex-direction:column;gap:4px;font-size:12px;flex:1;min-width:160px}.lbdsc-location input{min-height:44px;border:1px solid #bfc5bb;border-radius:8px;padding:8px;font:inherit;font-size:14px;color:var(--ink);background:#fffdf8}.lbdsc-location-status,.lbdsc-location-results{flex-basis:100%;margin:0}.lbdsc-location-results{display:grid;gap:6px}.lbdsc-location-results button{text-align:left}.lbdsc-location-status:empty{display:none}
.lbdsc-detail-heading{display:flex;align-items:center;gap:24px;clear:both}.lbdsc-detail-heading .lbdsc-pillar{position:static;font-size:30px;flex-shrink:0}.lbdsc-detail-heading h2{flex:1}
.lbdsc-hour{flex-direction:row;gap:18px}.lbdsc-hour .lbdsc-hour-pillar{position:static;font-size:28px;flex-shrink:0;padding-top:5px}.lbdsc-hour-copy{display:flex;flex-direction:column;gap:5px;min-width:0}.lbdsc-clock{font-size:13px;overflow-wrap:anywhere}
@media(max-width:767px){.lbdsc-prev{order:0}.lbdsc-today-button{order:1}.lbdsc-next{order:2}.lbdsc-location .lbdsc-button{font-size:12px}.lbdsc-detail-heading{gap:14px}.lbdsc-detail-heading h2{font-size:24px}}
