.theme-liunian{background:var(--ink-paper);color:var(--ink-text)}.ln-page :focus-visible{outline:2px solid var(--ink-water);outline-offset:2px}.ln-page{z-index:1;flex-direction:column;min-height:100vh;padding:1.5rem 1rem;display:flex;position:relative}.ln-title{color:var(--ink-text);letter-spacing:.06em;font-weight:400}.ln-hint{color:var(--ink-text-2)}.ln-year-banner{background:var(--ink-band);color:var(--ink-band-text);border-radius:20px;margin-bottom:1.5rem}.ln-year-banner .ln-title{color:var(--ink-band-text)}.ln-star-auspicious{color:var(--ink-wood)}.ln-star-inauspicious{color:var(--ink-fire)}.ln-taisui-safe,.ln-taisui-warning,.ln-taisui-danger{border:0;border-radius:16px}.ln-taisui-safe{background:color-mix(in srgb, var(--ink-wood) 9%, var(--ink-stone))}.ln-taisui-warning{background:color-mix(in srgb, var(--ink-earth) 11%, var(--ink-stone))}.ln-taisui-danger{background:color-mix(in srgb, var(--ink-fire) 10%, var(--ink-stone))}.ln-fortune-section{background:var(--ink-card);box-shadow:var(--ink-shadow);border-radius:20px;padding:1.25rem}@media (min-width:640px){.ln-fortune-section{padding:1.75rem}}.ln-star-filled{color:var(--ink-earth)}.ln-star-empty{color:var(--ink-line)}.ln-month-card{background:var(--ink-stone);border-radius:14px;padding:.75rem}.ln-tip-card{background:var(--ink-stone);border-radius:14px;padding:1rem}.ln-btn-primary{letter-spacing:.04em;width:100%;min-height:48px;color:var(--ink-action-text);background:var(--ink-action);cursor:pointer;border:0;border-radius:999px;justify-content:center;align-items:center;gap:.5rem;padding:0 1.5rem;font-size:16px;font-weight:500;transition:background-color .15s;display:inline-flex}.ln-btn-primary:hover:not(:disabled){background:var(--ink-action-hover)}.ln-btn-primary:disabled{opacity:.45;cursor:not-allowed}.ln-btn-quickfill{width:100%;min-height:44px;color:var(--ink-text);border:1px solid var(--ink-line);cursor:pointer;background:0 0;border-radius:999px;justify-content:center;align-items:center;gap:.5rem;padding:0 1rem;font-size:.9375rem;font-weight:500;transition:border-color .15s;display:flex}.ln-btn-quickfill:hover:not(:disabled){border-color:var(--ink-text-3)}.ln-page :where(input:not([type=checkbox]):not([type=radio]),textarea,select){background:var(--ink-card);border:1px solid hsl(var(--input));min-height:48px;color:var(--ink-text);border-radius:12px}.ln-page :where(select){appearance:none;background-image:linear-gradient(45deg, transparent 50%, var(--ink-text-3) 50%), linear-gradient(135deg, var(--ink-text-3) 50%, transparent 50%);background-position:calc(100% - 19px) 55%,calc(100% - 14px) 55%;background-repeat:no-repeat;background-size:5px 5px;padding-right:36px}.ln-page :where(input,textarea,select):focus{border-color:var(--ink-water);box-shadow:0 0 0 3px color-mix(in srgb, var(--ink-water) 18%, transparent);outline:none}@keyframes liunian-pulse{0%,to{opacity:.4}50%{opacity:1}}.ln-streaming-cursor{background:var(--ink-text-3);vertical-align:text-bottom;border-radius:1px;width:2px;height:1em;margin-left:2px;animation:1.2s ease-in-out infinite liunian-pulse;display:inline-block}.ln-shimmer{background:var(--ink-stone);border-radius:8px}.ln-severity-dot{background:currentColor;border-radius:50%;width:6px;height:6px;display:inline-block}.ln-calendar-table{border-collapse:collapse}.ln-calendar-table thead{background:var(--ink-stone)}.ln-calendar-table th{color:var(--ink-text-2);letter-spacing:.02em;font-size:.8125rem;font-weight:500}.ln-calendar-table tbody tr{border-bottom:1px solid var(--ink-line)}.ln-calendar-table tbody tr:last-child{border-bottom:none}.liunian-interpretation .markdown-content{color:var(--ink-text);font-size:17px;line-height:1.85}.liunian-interpretation .markdown-content>*{max-width:36em}.liunian-interpretation .markdown-content h2{color:var(--ink-text);letter-spacing:.04em;margin-top:2rem;margin-bottom:.75rem;padding-bottom:10px;font-size:1.25rem;font-weight:500;position:relative}.liunian-interpretation .markdown-content h2:before{content:"";background:var(--ink-water);opacity:.6;border-radius:2px;width:28px;height:2px;position:absolute;bottom:0;left:0}.liunian-interpretation .markdown-content h2:first-of-type{margin-top:0}.liunian-interpretation .markdown-content p{margin-bottom:1em;line-height:1.85}.liunian-interpretation .markdown-content strong{color:var(--ink-text);font-weight:600}@media (prefers-reduced-motion:reduce){.ln-streaming-cursor{opacity:.7;animation:none}.ln-btn-primary,.ln-btn-quickfill{transition:none}}
