/* —— 我的日运（本人档案个人层）——
 * 颜色只经由下面几个组件变量取用，之后主题系统（五行 / 极简）只需改这几项。 */
.riyun-mine{--my-fg:var(--t0);--my-fg2:var(--t3);--my-label:var(--ink-2);--my-strong:var(--teal);--my-on:var(--light);--my-good:var(--red-text);--my-line:rgba(var(--dark-rgb),.12);--my-fill:rgba(var(--tint-rgb),.55);--font-mono:'IBM Plex Mono','Noto Sans SC',monospace;color:var(--my-fg);}
.riyun-mine button{color:inherit;}
.my-tabs{display:flex;gap:28px;margin:-22px -24px 0;padding:0 24px;border-bottom:1px solid var(--my-line);}
.my-tab{min-height:46px;padding:0 2px;font-family:var(--font-sans);font-size:14px;letter-spacing:.08em;color:var(--my-label);}
.my-tab[aria-selected="true"]{color:var(--my-fg);font-weight:500;box-shadow:inset 0 -1.5px 0 var(--my-strong);}
.my-week{margin:0 -24px;padding:10px 16px 14px;border-bottom:1px solid var(--my-line);}
.my-week-head{display:flex;align-items:center;justify-content:space-between;min-height:36px;padding-left:8px;}
.my-mono{font-family:var(--font-mono);font-size:11.5px;letter-spacing:.08em;color:var(--my-label);}
.my-week-tools{display:flex;align-items:center;}
.my-link{min-height:36px;padding:0 10px;font-family:var(--font-sans);font-size:12px;letter-spacing:.08em;text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px;}
.my-week-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;margin-top:3px;}
.my-week-head .my-mono{font-size:13px;}
.my-day{min-height:70px;padding:9px 0 10px;border-radius:18px;display:flex;flex-direction:column;align-items:center;justify-content:space-between;transition:background-color var(--fc-motion-state,180ms) var(--fc-state-ease,ease);}
.my-day-lab{font-family:var(--font-sans);font-size:11px;letter-spacing:.04em;color:var(--my-label);}
.my-day-num{font-family:var(--font-mono);font-size:16px;line-height:1;}
.my-day.is-today{box-shadow:inset 0 0 0 1px rgba(var(--dark-rgb),.28);}
.my-day.is-today .my-day-lab{color:var(--my-fg);font-weight:500;}
.my-day.is-on{background:var(--my-strong);color:var(--my-on);}
.my-day.is-on .my-day-lab{color:var(--my-on);}
.my-mark{display:inline-block;width:5px;height:5px;border-radius:50%;flex:none;}
.my-mark.is-good{background:var(--my-good);}
.my-mark.is-weak{box-shadow:inset 0 0 0 1.1px currentColor;}
.my-mark.is-mid{background:rgba(var(--dark-rgb),.35);}
.my-mark.is-plain{background:transparent;}
.my-day.is-on .my-mark.is-good{background:var(--my-on);}
.my-legend{margin-top:7px;padding-left:8px;display:flex;gap:14px;font-family:var(--font-sans);font-size:11px;color:var(--my-label);}
.my-legend span{display:inline-flex;align-items:center;gap:6px;}
.my-hero{padding-top:22px;}
.my-greet{display:flex;flex-wrap:wrap;align-items:baseline;column-gap:10px;font-family:var(--font-sans);font-size:13px;letter-spacing:2px;line-height:1.7;color:var(--my-fg2);}
.my-greet b{font-family:var(--font-title);font-size:17px;font-weight:500;letter-spacing:.32em;color:var(--my-strong);}
.my-greet b.my-seal{font-size:14px;display:inline-flex !important;align-items:center;gap:7px;margin-left:6px;padding:3px calc(12px - .2em) 3px 11px;border-radius:999px;letter-spacing:.2em;line-height:1.45;vertical-align:1px;background:rgba(236,243,241,.58);box-shadow:inset 0 0 0 1px rgba(255,255,255,.65),0 1px 8px rgba(31,43,45,.06);-webkit-backdrop-filter:blur(14px) saturate(1.3);backdrop-filter:blur(14px) saturate(1.3);}
.my-greet>span{display:inline-flex;align-items:center;}
.my-greet b.my-seal.is-plain{color:var(--my-strong);}
.my-hero.is-year .my-greet{letter-spacing:1px;}
.my-greet b.my-seal::before{content:"";width:6px;height:6px;border-radius:50%;flex:none;}
.my-greet b.my-seal.is-good{color:var(--my-good);}
.my-greet b.my-seal.is-good::before{background:currentColor;}
.my-greet b.my-seal.is-weak{color:var(--my-fg);}
.my-greet b.my-seal.is-weak::before{box-shadow:inset 0 0 0 1.2px currentColor;}
.my-greet b.my-seal.is-plain::before{background:currentColor;opacity:.4;}
.my-head{text-wrap:balance;margin-top:11px;font:300 19px/1.5 var(--font-title);letter-spacing:2px;color:var(--my-fg);}
.my-body{padding-top:11px;}
.my-text{font-family:var(--font-sans);font-size:15px;line-height:1.85;text-align:justify;color:var(--my-fg2);}
.my-text b{font-family:var(--font-title);font-weight:600;margin-right:6px;color:var(--my-fg);}
.my-section{padding-top:22px;}
.my-label{margin:0 0 14px;font-family:var(--font-mono);font-size:12px;font-weight:400;letter-spacing:.18em;color:var(--my-label);}
.my-label.is-lg{font-size:13px;margin-bottom:7px;}
.my-label.is-tight{margin-bottom:7px;}
.my-hero .my-label{margin:11px 0 7px;font-size:14px;}
.my-hero .my-events{gap:3px;}
.my-label-row{display:flex;align-items:baseline;justify-content:space-between;}
.my-label-row small{font-size:11.5px;letter-spacing:.06em;}
.my-dd{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:13px;}
.my-section.is-month{padding-top:31px;}
.my-section.my-dd{padding-top:22px;}
.traditional-card.is-panel.my-dd-card{padding:30px 22px 28px;text-align:center;}
.my-dd-col{display:flex;flex-direction:column;gap:2px;}
.my-mono-label{margin:0 0 10px;font-family:var(--font-mono);font-size:12px;font-weight:400;letter-spacing:.12em;color:var(--my-label);}
.my-dd-col .my-mono-label{font-size:14px;text-align:center;}
.my-dd-col p{font-size:14px;letter-spacing:1px;line-height:1.65;font-weight:300;color:var(--my-fg);text-align:center;text-wrap:balance;}
.my-line+.my-line{margin-top:11px;}
.my-line-row{display:flex;align-items:baseline;flex-wrap:wrap;column-gap:6px;row-gap:4px;font-family:var(--font-sans);font-size:14.5px;line-height:1.6;}
.my-line-icon{flex:none;align-self:center;margin-right:4px;fill:none;stroke:currentColor;stroke-width:1.25;stroke-linecap:round;stroke-linejoin:round;}
.my-area-wrap{display:inline-flex;align-items:baseline;gap:2px;color:var(--my-label);}
.my-area{min-height:28px;padding:0;font-family:var(--font-sans);font-size:14.5px;color:var(--my-fg);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px;transition:text-decoration-thickness var(--fc-motion-state,180ms) var(--fc-state-ease,ease),color var(--fc-motion-state,180ms) var(--fc-state-ease,ease);}
.my-area:active{opacity:.55;}
.my-area-one{font-family:var(--font-sans);font-size:14.5px;font-weight:600;color:var(--my-fg);}
.my-area.is-on{font-weight:600;text-decoration-thickness:2px;}
.my-line-detail{position:relative;margin-top:6px;padding-left:25px;font-family:var(--font-sans);font-size:14px;line-height:1.8;text-align:justify;color:var(--my-fg2);}
.my-line-detail i{position:absolute;left:5.5px;top:.78em;width:4px;height:4px;border-radius:50%;background:var(--my-fg2);}
.is-year .my-line-row{font-size:14px;}
.my-detail-wrap{display:grid;grid-template-rows:1fr;animation:myDetailOpen .52s cubic-bezier(.2,.7,.2,1) var(--d,.2s) both;}
.my-detail-wrap>.my-line-detail{min-height:0;overflow:hidden;margin-top:0;padding-top:6px;animation:myDetailText .44s cubic-bezier(.2,.7,.2,1) calc(var(--d,.2s) + .06s) both;}
.my-detail-wrap>.my-line-detail i{top:calc(.78em + 6px);animation:myDot .5s cubic-bezier(.3,1.6,.5,1) calc(var(--d,.2s) + .2s) both;}
.my-line-empty{font-family:var(--font-sans);font-size:14.5px;color:var(--my-fg2);}
.my-note{margin-top:11px;font-family:var(--font-sans);font-size:12px;line-height:1.7;color:var(--my-label);}
.my-note.is-lines{font-size:11px;letter-spacing:1.9px;}
.is-year .my-note.is-lines{letter-spacing:1px;margin-top:7px;}
.my-events{display:flex;flex-direction:column;gap:12px;}
.my-event{position:relative;padding-left:16px;font-family:var(--font-sans);font-size:14.5px;line-height:1.8;color:var(--my-fg);}
.my-event .my-mark{position:absolute;left:0;top:.78em;width:6px;height:6px;}
.my-lucky{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--my-line);border-bottom:1px solid var(--my-line);}
.my-lucky-col{padding:20px 4px;display:flex;flex-direction:column;align-items:center;text-align:center;transition:background-color var(--fc-motion-state,180ms) var(--fc-state-ease,ease);}
.my-lucky-col+.my-lucky-col{border-left:1px solid var(--my-line);}
.my-lucky-col:active{background:var(--my-fill);}
.my-lucky-lab{font-family:var(--font-sans);font-size:13px;letter-spacing:.2em;color:var(--my-label);}
.my-dial{margin:12px 0;overflow:visible;}
.my-dial text{font-family:var(--font-sans);font-size:7px;fill:var(--my-label);}
.my-ring{fill:none;stroke:rgba(var(--dark-rgb),.16);stroke-width:1;}
.my-tick{stroke:rgba(var(--dark-rgb),.28);stroke-width:1;}
.my-arc{fill:none;stroke:var(--my-strong);stroke-linecap:round;stroke-width:4px;opacity:.35;stroke-dasharray:1;animation:myDraw .9s cubic-bezier(.3,.6,.2,1) both;transition:stroke-width var(--fc-motion-medium,220ms) var(--fc-state-ease,ease),opacity var(--fc-motion-medium,220ms) var(--fc-state-ease,ease);}
.my-arc.is-on{stroke-width:6px;opacity:1;}
.my-hand,.my-needle,.my-needle-in{transform-origin:30px 30px;}
.my-hand{transition:transform var(--fc-motion-slow,460ms) var(--fc-state-ease,ease);}
.my-hand line{stroke:var(--my-fg);stroke-width:1.2;stroke-linecap:round;}
.my-hand circle,.my-hub{fill:var(--my-fg);}
.my-hub.is-hollow{fill:var(--my-on);stroke:var(--my-fg);stroke-width:1;}
.my-needle-in{animation:myNeedleIn 1.3s cubic-bezier(.25,1.35,.4,1) both;}
.my-needle{transition:transform var(--fc-motion-slow,460ms) cubic-bezier(.25,1.25,.4,1);}
.my-needle-n{fill:var(--my-fg);}
.my-needle-s{fill:rgba(var(--dark-rgb),.22);}
.my-discs{position:relative;width:64px;height:64px;margin:12px 0;}
.my-disc{position:absolute;left:28px;top:17px;width:30px;height:30px;border-radius:50%;z-index:1;box-shadow:0 0 0 2.5px rgba(var(--tint-rgb),1);transition:left var(--fc-motion-slow,460ms) var(--fc-motion-ease-out,ease),top var(--fc-motion-slow,460ms) var(--fc-motion-ease-out,ease),width var(--fc-motion-slow,460ms) var(--fc-motion-ease-out,ease),height var(--fc-motion-slow,460ms) var(--fc-motion-ease-out,ease);}
.my-disc.is-front{left:6px;top:13px;width:38px;height:38px;z-index:2;box-shadow:0 0 0 2.5px rgba(var(--tint-rgb),1),0 6px 14px rgba(0,0,0,.16);}
.my-lucky-names{display:flex;gap:8px;font-size:14px;letter-spacing:2px;color:rgba(var(--dark-rgb),.42);}
.my-lucky-names .is-on{color:var(--my-fg);font-weight:600;}
.my-lucky-sub{margin-top:4px;font-family:var(--font-sans);letter-spacing:2px;font-size:11px;line-height:1.5;color:var(--my-label);}
.my-now{margin-top:16px;display:flex;align-items:center;gap:8px;font-family:var(--font-sans);font-size:12px;line-height:1.7;color:var(--my-label);}
.my-now span{width:6px;height:6px;flex:none;border-radius:50%;background:rgba(var(--dark-rgb),.45);}
.my-now span.is-live{background:var(--my-good);animation:myPulse 2s ease-out infinite;}
.my-cal-week,.my-cal{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));}
.my-cal-week{margin-top:20px;padding-bottom:6px;border-bottom:1px solid var(--my-line);font-family:var(--font-sans);font-size:11px;letter-spacing:.1em;text-align:center;color:var(--my-label);}
.my-cal{row-gap:2px;padding-top:6px;}
.my-cal-cell{height:44px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;}
.my-cal-num{width:30px;height:26px;border-radius:13px;display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:14px;transition:background-color var(--fc-motion-state,180ms) var(--fc-state-ease,ease),color var(--fc-motion-state,180ms) var(--fc-state-ease,ease),box-shadow var(--fc-motion-state,180ms) var(--fc-state-ease,ease);}
.my-cal-num.is-bold{font-weight:600;}
.my-cal-num.is-today{box-shadow:inset 0 0 0 1px rgba(var(--dark-rgb),.35);}
.my-cal-num.is-peek{background:var(--my-fill);box-shadow:inset 0 0 0 1.5px var(--my-strong);}
.my-cal-num.is-on{background:var(--my-strong);color:var(--my-on);}
.my-cal-cell:active .my-cal-num{transform:scale(var(--fc-motion-press-scale,.96));}
.my-cal-peek{margin-top:10px;padding-top:12px;border-top:1px solid var(--my-line);display:flex;align-items:baseline;justify-content:space-between;gap:10px;font-size:15px;}
.my-cal-peek b{margin-left:10px;font-size:20px;font-weight:500;letter-spacing:.1em;}
.my-muted{font-family:var(--font-sans);font-size:12px;color:var(--my-label);}
.my-gl{stroke:rgba(var(--dark-rgb),.1);stroke-width:1;vector-effect:non-scaling-stroke;}
.my-gl.is-mid{stroke:rgba(var(--dark-rgb),.18);stroke-dasharray:2 4;}
.my-yline{fill:none;stroke:var(--my-strong);stroke-width:1.6;stroke-linejoin:round;stroke-linecap:round;vector-effect:non-scaling-stroke;}
.my-yaxis{position:absolute;left:0;font-family:var(--font-sans);font-size:10.5px;color:var(--my-label);}
.my-ytag{display:inline-flex;align-items:center;gap:6px;font-style:normal;font-family:var(--font-title);font-size:13px;letter-spacing:.2em;padding:2px calc(10px - .2em) 2px 10px;border-radius:999px;background:var(--my-fill);color:var(--my-strong);}
.my-ytag.is-good{color:var(--my-good);}
.my-ytag.is-weak{color:var(--my-fg);}
.my-ymk{display:inline-block;width:6px;height:6px;border-radius:50%;flex:none;}
.my-ymk.is-good{background:var(--my-good);}
.my-ymk.is-weak{box-shadow:inset 0 0 0 1.2px currentColor;}
.my-ymk.is-mid{background:currentColor;opacity:.35;}
.my-ylegend{margin-top:6px;padding-left:2px;}
.my-ylegend .my-ymk.is-weak{color:var(--my-fg);}
.my-yc{position:relative;height:182px;touch-action:pan-y;user-select:none;-webkit-user-select:none;}
.my-yc>svg{position:absolute;inset:0;width:100%;height:182px;}
.my-ycd{fill:rgba(var(--tint-rgb),1);stroke:var(--my-strong);stroke-width:1.3;vector-effect:non-scaling-stroke;}
.my-ycd.is-good{fill:var(--my-good);stroke:var(--my-good);}
.my-ycd.is-weak{fill:rgba(var(--tint-rgb),1);stroke:var(--my-fg);stroke-width:1.6;}
.my-ycguide{position:absolute;top:6px;height:122px;width:0;border-left:1px dashed rgba(var(--dark-rgb),.38);transform:translateX(-.5px);transition:left var(--fc-motion-medium,220ms) var(--fc-motion-ease-out,cubic-bezier(.2,.7,.2,1));pointer-events:none;}
.my-ycdot{position:absolute;width:18px;height:18px;margin:-9px 0 0 -9px;border-radius:50%;background:var(--my-strong);box-shadow:0 0 0 5px rgba(var(--tint-rgb),.8);transition:left var(--fc-motion-medium,220ms) var(--fc-motion-ease-out,cubic-bezier(.2,.7,.2,1)),top var(--fc-motion-medium,220ms) var(--fc-motion-ease-out,cubic-bezier(.2,.7,.2,1));pointer-events:none;}
.my-ycb{position:absolute;top:0;width:26px;height:182px;transform:translateX(-50%);display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:1px;padding-bottom:4px;font-family:var(--font-mono);color:var(--my-label);-webkit-tap-highlight-color:transparent;}
.my-ycl{font-size:12px;line-height:1.55;min-width:20px;text-align:center;white-space:nowrap;padding:0 4px;border-radius:9px;transition:background-color var(--fc-motion-state,180ms) var(--fc-state-ease,ease),color var(--fc-motion-state,180ms) var(--fc-state-ease,ease);}
.my-ycb small{font-family:var(--font-sans);font-size:9px;line-height:1.2;height:11px;}
.my-ycb.is-on .my-ycl{background:var(--my-strong);color:var(--my-on);font-weight:600;}
.my-ycb.is-on small{color:var(--my-strong);}
.my-ymc{margin-top:11px;border-radius:12px;background:var(--my-fill);box-shadow:inset 0 0 0 1px rgba(255,255,255,.5);padding:11px 14px 0;min-height:96px;}
.my-yone2{animation:myYIn .44s cubic-bezier(.2,.7,.2,1) both;}
.my-ymh{display:flex;align-items:baseline;gap:8px;padding-bottom:10px;border-bottom:1px solid rgba(var(--dark-rgb),.1);}
.my-ymn{font-family:var(--font-title);font-weight:600;font-size:17px;line-height:1;color:var(--my-fg);font-variant-numeric:lining-nums;}
.my-ymg{font-family:var(--font-sans);font-size:11px;line-height:1;letter-spacing:.1em;color:var(--my-label);}
.my-ymh .my-ytag{margin-left:auto;background:rgba(255,255,255,.55);padding-top:3px;padding-bottom:3px;line-height:1;font-size:11px;gap:5px;}
.my-ymnote{margin:9px 0 0;display:flex;align-items:center;gap:8px;font-family:var(--font-sans);font-size:12px;line-height:1.4;letter-spacing:.05em;color:var(--my-strong);}
.my-ymnote svg{display:none;flex:none;width:14px;height:14px;}
.my-ymnote.is-up .a-up,.my-ymnote.is-down .a-down,.my-ymnote.is-flat .a-flat{display:block;}
.my-ymnote.is-none{display:none;}
.my-ymempty{padding:9px 0 11px;font-family:var(--font-sans);font-size:12.5px;line-height:1.6;color:var(--my-fg2);}
.my-ymrows{margin-top:2px;}
.my-ymr{display:grid;grid-template-columns:14px 2.6em 1fr;column-gap:8px;align-items:center;padding:8px 0;font-family:var(--font-sans);font-size:12.5px;line-height:1.6;color:var(--my-fg2);animation:myYIn .46s cubic-bezier(.2,.7,.2,1) calc(var(--i,0) * 80ms + 120ms) both;}
.my-ymr+.my-ymr{border-top:1px solid rgba(var(--dark-rgb),.07);}
.my-ymr .my-line-icon{width:14px;height:14px;margin:0;color:var(--my-strong);}
.my-ymr b{font-weight:600;color:var(--my-fg);letter-spacing:.06em;}
.my-ymr span{min-width:0;}
.my-legend.is-month{margin-top:14px;}
.my-legend .my-legend-hint{margin-left:auto;padding-right:8px;}
.my-ymr.is-up .i-cloud,.my-ymr.is-up .i-rain,.my-ymr.is-cloud .i-up,.my-ymr.is-cloud .i-rain,.my-ymr.is-rain .i-up,.my-ymr.is-rain .i-cloud{display:none;}
@keyframes myDetailOpen{from{grid-template-rows:0fr;opacity:0}to{grid-template-rows:1fr;opacity:1}}
@keyframes myDetailText{from{opacity:0;transform:translateX(-8px);filter:blur(2px)}to{opacity:1;transform:none;filter:none}}
@keyframes myDot{from{transform:scale(0)}to{transform:scale(1)}}
@keyframes myYIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.my-yone2,.my-ymr,.my-detail-wrap,.my-detail-wrap>.my-line-detail,.my-detail-wrap>.my-line-detail i{animation:none}.my-ycguide,.my-ycdot,.my-area{transition:none}}
.my-entry{padding:48px 0 24px;}
.my-entry-title{font:500 32px/1.32 var(--font-title);}
.my-entry-text{margin-top:14px;font-family:var(--font-sans);font-size:15px;line-height:1.85;color:var(--my-fg2);}
.my-entry-link{display:inline-flex;align-items:center;gap:12px;min-height:52px;margin-top:24px;padding:0 28px;font-family:var(--font-sans);font-size:13px;letter-spacing:.2em;color:var(--my-on);background:var(--my-strong);}
.my-state{padding:80px 0;text-align:center;font-family:var(--font-sans);font-size:13px;line-height:2;color:var(--my-label);}
.my-foot{padding-top:48px;text-align:center;font-family:var(--font-sans);font-size:11.5px;line-height:1.8;color:var(--my-label);}
.my-peek{animation:myPeek .28s cubic-bezier(.2,.7,.2,1) both;}
.riyun-mine button:focus-visible{outline:1.5px solid var(--my-strong);outline-offset:2px;}
@keyframes myDraw{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
@keyframes myNeedleIn{from{transform:rotate(-150deg)}to{transform:rotate(0)}}
@keyframes myPulse{0%{box-shadow:0 0 0 0 rgba(150,150,150,.5)}70%{box-shadow:0 0 0 6px rgba(150,150,150,0)}100%{box-shadow:0 0 0 0 rgba(150,150,150,0)}}
@keyframes myPeek{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.my-arc,.my-needle-in,.my-peek,.my-now span.is-live{animation:none;stroke-dashoffset:0}.my-hand,.my-needle,.my-disc,.my-day,.my-cal-num{transition:none}}
