﻿/* ===== 浅色模式（默认） ===== */
:root {
  /* 渐变色定义 */
  --yukima-gradient-start: #c9a000;  /* 深鹅黄 */
  --yukima-gradient-end: #3d7a1a;    /* 深草绿 */
  --yukima-gradient: linear-gradient(135deg, var(--yukima-gradient-start), var(--yukima-gradient-end));
  
  --yukima-bg: #fafdf6;
  --yukima-text: #5a6a5a;
  --yukima-strong: #3d4a3d;
  --yukima-title: #6b8e23;
  --yukima-border: #d4e6c3;
  --yukima-border-hover: #b8d4a0;
  --yukima-shadow: rgba(107, 142, 35, 0.08);
  --yukima-shadow-hover: rgba(107, 142, 35, 0.15);
  --yukima-link: #7cb342;
  --yukima-link-hover: #558b2f;
  --yukima-button-bg: #8bc34a;
  --yukima-button-bg-hover: #7cb342;
  --yukima-button-text: #ffffff;
  --yukima-button-text-hover: var(--yukima-button-text);
  --yukima-button-border: var(--yukima-button-bg);
  --yukima-button-border-hover: var(--yukima-button-bg-hover);
  --yukima-glow: #c5e1a5;
  --yukima-component-bg: rgba(200, 230, 180, 0.25);
  --yukima-component-bg-hover: rgba(200, 230, 180, 0.45);
  --yukima-component-border: transparent;
  --yukima-component-border-hover: var(--yukima-border-hover);
  --yukima-component-shadow-hover: var(--yukima-shadow);
  --yukima-toc-bg: rgba(245, 250, 240, 0.7);
  --yukima-toc-border: var(--yukima-border);
  --yukima-code-bg: #f5f9f0;
  --yukima-code-border: #d4e6c3;
  --yukima-code-shadow: rgba(107, 142, 35, 0.08);
  --yukima-code-shadow-hover: rgba(107, 142, 35, 0.12);
  --yukima-code-text: #4b5263;
  --yukima-code-comment: #85929e;
  --yukima-code-keyword: #7cb342;
  --yukima-code-function: #5294e2;
  --yukima-code-string: #8bc34a;
  --yukima-code-number: #c49000;
  --yukima-code-type: #c48218;
  --yukima-code-variable: #d94d4d;
  --yukima-code-operator: #26a69a;
  --yukima-plotly-bg: #f5f9f0;
  --yukima-plotly-font-color: #5a6a5a;
  --yukima-plotly-title-color: #6b8e23;
  --yukima-plotly-grid-color: #d4e6c3;
  --yukima-plotly-axis-color: #b8d4a0;
  --yukima-plotly-legend-bg: rgba(200, 230, 180, 0.3);
  --yukima-plotly-legend-border: #d4e6c3;
  --yukima-plotly-trace-1: #8bc34a;
  --yukima-plotly-trace-2: #5294e2;
  --yukima-plotly-trace-3: #ffc107;
  --yukima-plotly-trace-4: #7cb342;
  --yukima-size-0: 0.125rem;
  --yukima-size-1: 0.25rem;
  --yukima-size-2: 0.5rem;
  --yukima-size-3: 0.75rem;
  --yukima-size-4: 1rem;
  --yukima-size-5: 1.25rem;
  --yukima-size-6: 1.5rem;
  --yukima-size-8: 2rem;
  --yukima-size-10: 2.5rem;
  --yukima-size-12: 3rem;
  --yukima-size-font-xs: clamp(0.75rem, 0.6rem + 0.5vw, 0.9rem);
  --yukima-size-font-sm: clamp(0.875rem, 0.7rem + 0.5vw, 1rem);
  --yukima-size-font-base: clamp(1rem, 0.8rem + 0.5vw, 1.125rem);
  --yukima-size-font-md: clamp(1.25rem, 1rem + 1vw, 1.5rem);
  --yukima-size-font-lg: clamp(1.5rem, 1.2rem + 1.5vw, 2rem);
  --yukima-size-font-xl: clamp(2rem, 1.5rem + 2.5vw, 3rem);
  --yukima-size-font-xxl: clamp(2.5rem, 2rem + 3.5vw, 4rem);
  --yukima-size-font-display: clamp(6rem, 5rem + 10vw, 10rem);
  --yukima-line-height-tight: 1.3;
  --yukima-line-height-base: 1.7;
  --yukima-line-height-loose: 1.8;
  --yukima-radius-sm: 4px;
  --yukima-radius-md: 8px;
  --yukima-radius-lg: 16px;
  --yukima-size-border-width: 1px;
  --yukima-size-border-width-lg: 4px;
  --yukima-size-icon-sm: 1.25rem;
  --yukima-size-icon-md: 1.75rem;
  --yukima-size-icon-lg: 2.25rem;
  --yukima-width-text-prose: 600px;
  --yukima-width-content: 800px
}

/* ===== 深色模式 ===== */
[data-theme="dark"] {
  /* 深色模式渐变色 - 更明亮 */
  --yukima-gradient-start: #fff59d;  /* 亮鹅黄 */
  --yukima-gradient-end: #aed581;    /* 亮草绿 */
  --yukima-gradient: linear-gradient(135deg, var(--yukima-gradient-start), var(--yukima-gradient-end));
  
  --yukima-bg: #1a2318;
  --yukima-text: #b8c9a8;
  --yukima-strong: #d4e0c8;
  --yukima-title: #a4d65e;
  --yukima-border: #2d3a2a;
  --yukima-border-hover: #3d4a3a;
  --yukima-shadow: rgba(0, 0, 0, 0.25);
  --yukima-shadow-hover: rgba(0, 0, 0, 0.4);
  --yukima-link: #9ccc65;
  --yukima-link-hover: #c5e1a5;
  --yukima-button-bg: #7cb342;
  --yukima-button-bg-hover: #9ccc65;
  --yukima-button-text: #1a2318;
  --yukima-button-text-hover: var(--yukima-button-text);
  --yukima-button-border: var(--yukima-button-bg);
  --yukima-button-border-hover: var(--yukima-button-bg-hover);
  --yukima-glow: #7cb342;
  --yukima-component-bg: rgba(100, 140, 80, 0.12);
  --yukima-component-bg-hover: rgba(100, 140, 80, 0.22);
  --yukima-component-border: transparent;
  --yukima-component-border-hover: var(--yukima-border-hover);
  --yukima-component-shadow-hover: var(--yukima-shadow);
  --yukima-toc-bg: rgba(45, 58, 42, 0.6);
  --yukima-toc-border: var(--yukima-border);
  --yukima-code-bg: #232b22;
  --yukima-code-border: #3d4a3a;
  --yukima-code-shadow: rgba(0, 0, 0, 0.3);
  --yukima-code-shadow-hover: rgba(0, 0, 0, 0.4);
  --yukima-code-text: #b8c9a8;
  --yukima-code-comment: #6a7a6a;
  --yukima-code-keyword: #a4d65e;
  --yukima-code-function: #7aa2f7;
  --yukima-code-string: #9ccc65;
  --yukima-code-number: #ffc107;
  --yukima-code-type: #e0af68;
  --yukima-code-variable: #f7768e;
  --yukima-code-operator: #73daca;
  --yukima-plotly-bg: rgba(35, 43, 34, 0.9);
  --yukima-plotly-font-color: #b8c9a8;
  --yukima-plotly-title-color: #a4d65e;
  --yukima-plotly-grid-color: #2d3a2a;
  --yukima-plotly-axis-color: #3d4a3a;
  --yukima-plotly-legend-bg: rgba(26, 35, 24, 0.5);
  --yukima-plotly-legend-border: #2d3a2a;
  --yukima-plotly-trace-1: #9ccc65;
  --yukima-plotly-trace-2: #7aa2f7;
  --yukima-plotly-trace-3: #ffc107;
  --yukima-plotly-trace-4: #a4d65e
}

/* ===== 切换按钮样式 ===== */
.theme-toggle {
  position: fixed;
  top: 20px;
  right: 20px;
  z-index: 1000;
  background: var(--yukima-component-bg);
  border: 2px solid var(--yukima-border);
  border-radius: 50px;
  padding: 8px 16px;
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: 8px;
  transition: all 0.3s ease;
  font-size: 14px;
  color: var(--yukima-text);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
}

.theme-toggle:hover {
  border-color: var(--yukima-gradient-end);
  transform: scale(1.05);
  box-shadow: 0 4px 12px var(--yukima-shadow-hover);
}

.theme-toggle .icon {
  font-size: 18px;
  transition: transform 0.3s ease;
}

.theme-toggle:hover .icon {
  transform: rotate(20deg);
}

.theme-toggle .sun { display: inline; }
.theme-toggle .moon { display: none; }
[data-theme="dark"] .theme-toggle .sun { display: none; }
[data-theme="dark"] .theme-toggle .moon { display: inline; }

/* ===== 基础样式 ===== */
*,*::before,*::after{box-sizing:border-box}
html{background-color:var(--yukima-bg);color:var(--yukima-text);font-family:"Iowan Old Style",Georgia,"Songti SC","SimSun","宋体","Hiragino Mincho ProN","ヒラギノ明朝 ProN","Yu Mincho","游明朝体","MS Mincho","ＭＳ 明朝",serif;font-size:100%;line-height:var(--yukima-line-height-base);transition: background-color 0.3s ease, color 0.3s ease}
body{width:var(--yukima-width-content);max-width:90%;margin:0 auto;padding:var(--yukima-size-4);display:flex;flex-direction:column;min-height:100vh}
main{flex-grow:1}
html{font-size:var(--yukima-size-font-base)}

/* ===== 标题渐变效果 ===== */
h1,h2,h3,h4,h5,h6{
  font-family:"Noto Serif",serif;
  line-height:var(--yukima-line-height-tight);
  margin:var(--yukima-size-6) 0 var(--yukima-size-4);
  background: var(--yukima-gradient);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  transition: all 0.3s ease;
}
h1{font-size:var(--yukima-size-font-xl)}
h2{font-size:var(--yukima-size-font-lg)}
h3{font-size:var(--yukima-size-font-md)}
h4,h5,h6{font-size:var(--yukima-size-font-base)}

/* ===== 链接渐变效果 ===== */
a{
  background: var(--yukima-gradient);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  text-decoration: none;
  transition: all 0.3s ease;
}
a:hover{
  filter: brightness(1.2);
  text-shadow: 0 0 8px var(--yukima-glow);
}

.giscus {
    margin-top: 3rem;
}

/* 让评论区容器与你的博客风格统一 */
.giscus-frame {
    border-radius: 8px;
}

p,ul,ol{margin-top:0;margin-bottom:var(--yukima-size-5)}
blockquote{margin:0 0 var(--yukima-size-5) 0;padding-left:var(--yukima-size-6);border-left-width:var(--yukima-size-border-width-lg);border-left-style:solid;border-left-color:var(--yukima-border);color:var(--yukima-text)}
hr{border:none;border-top-width:var(--yukima-size-border-width);border-top-style:solid;border-top-color:var(--yukima-border);margin:var(--yukima-size-8) 0}
b,strong{color:var(--yukima-strong)}
.skip-to-content{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}
.skip-to-content:focus{position:static;width:auto;height:auto}
.table-wrapper{overflow-x:auto;margin:var(--yukima-size-8) 0;border:var(--yukima-size-border-width) solid var(--yukima-border);border-radius:var(--yukima-radius-md)}
.post-content table{width:100%;border-collapse:collapse;font-size:var(--yukima-size-font-sm)}
.post-content table th,.post-content table td{padding:var(--yukima-size-3) var(--yukima-size-4);border:var(--yukima-size-border-width) solid var(--yukima-border);text-align:left;vertical-align:top;white-space:nowrap}
.post-content table thead{background-color:var(--yukima-component-bg);border-bottom:var(--yukima-size-border-width-lg) solid var(--yukima-border)}
.post-content table thead th{font-family:"Noto Serif",serif;color:var(--yukima-strong);font-weight:bold;background:none;-webkit-background-clip:unset;background-clip:unset}
.post-content table tbody tr:nth-child(even){background-color:var(--yukima-code-bg)}
.site-header{padding:var(--yukima-size-4) 0;text-align:center;margin-bottom:var(--yukima-size-8)}
.site-header .site-title{font-size:var(--yukima-size-font-xxl);margin:0}
.site-header .site-title a{text-decoration:none}
.site-header .site-title img{vertical-align:middle}
.site-footer{margin-top:var(--yukima-size-12);padding-top:var(--yukima-size-6);border-top-width:var(--yukima-size-border-width, 1px);border-top-style:solid;border-top-color:var(--yukima-border);text-align:center;font-size:var(--yukima-size-font-sm)}
.site-footer .sakura-separator{font-size:var(--yukima-size-font-md);margin:var(--yukima-size-2) 0}
@font-face{font-family:'Seventeen';src:url('./fonts/seventeen.TTF') format('truetype')}
.main-nav{margin-top:var(--yukima-size-4);display:flex;justify-content:center;gap:var(--yukima-size-6);font-size:clamp(1.45rem, 1.2rem + 1vw, 1.7rem);font-family:'Seventeen',sans-serif}
.post-navigation{display:flex;justify-content:space-between;margin-top:var(--yukima-size-12)}
.post-navigation a{display:block;max-width:48%;padding:var(--yukima-size-4);border-radius:var(--yukima-radius-md);transition:all .3s ease;background-color:var(--yukima-component-bg);border-width:var(--yukima-size-border-width);border-style:solid;border-color:var(--yukima-component-border)}
.post-navigation a:hover{background-color:var(--yukima-component-bg-hover);border-color:var(--yukima-component-border-hover);transform:translateY(calc(var(--yukima-size-1)*-1));box-shadow:var(--yukima-component-shadow-hover)}
.post-navigation .nav-label{font-size:var(--yukima-size-font-xs);display:block;margin-bottom:var(--yukima-size-1);color:var(--yukima-text);background:none;-webkit-background-clip:unset;background-clip:unset}
.post-navigation .nav-title{font-size:var(--yukima-size-font-base);font-weight:bold}
.post-navigation .nav-previous{text-align:left}
.post-navigation .nav-next{text-align:right;margin-left:auto}
pre,code{font-family:"Fira Code","Source Code Pro","JetBrains Mono",Consolas,Monaco,monospace;font-size:var(--yukima-size-font-sm);border-radius:var(--yukima-radius-sm)}
code{padding:var(--yukima-size-0) var(--yukima-size-1);background-color:var(--yukima-code-bg);border-width:var(--yukima-size-border-width);border-style:solid;border-color:var(--yukima-code-border);color:var(--yukima-code-text)}
pre{padding:var(--yukima-size-4);background-color:var(--yukima-code-bg);border:var(--yukima-size-border-width) solid var(--yukima-code-border);border-radius:var(--yukima-radius-md);overflow-x:auto;margin:var(--yukima-size-6) 0;box-shadow:0 var(--yukima-size-1) var(--yukima-size-2) var(--yukima-code-shadow);transition:all .3s ease}
pre:hover{box-shadow:0 var(--yukima-size-2) var(--yukima-size-4) var(--yukima-code-shadow-hover);border-color:var(--yukima-border-hover)}
pre code{padding:0;border:none;background:none;font-size:inherit}
.hljs-comment,.hljs-quote{color:var(--yukima-code-comment);font-style:italic}
.hljs-keyword,.hljs-selector-tag,.hljs-built_in{color:var(--yukima-code-keyword)}
.hljs-title,.hljs-section,.hljs-name{color:var(--yukima-code-function)}
.hljs-string,.hljs-attr{color:var(--yukima-code-string)}
.hljs-number,.hljs-literal{color:var(--yukima-code-number)}
.hljs-type,.hljs-template-tag{color:var(--yukima-code-type)}
.hljs-variable,.hljs-template-variable{color:var(--yukima-code-variable)}
.hljs-symbol,.hljs-bullet{color:var(--yukima-code-operator)}
.plotly-chart{margin:var(--yukima-size-8) 0;border:var(--yukima-size-border-width) solid var(--yukima-code-border);border-radius:var(--yukima-radius-md);overflow:hidden;background-color:var(--yukima-code-bg);box-shadow:0 var(--yukima-size-1) var(--yukima-size-2) var(--yukima-code-shadow);transition:all .3s ease;display:flex;justify-content:center;align-items:stretch}
.plotly-chart:hover{transform:translateY(calc(var(--yukima-size-0)*-1));box-shadow:0 var(--yukima-size-2) var(--yukima-size-4) var(--yukima-code-shadow-hover);border-color:var(--yukima-border-hover)}
.plotly-error{padding:var(--yukima-size-6);background-color:var(--yukima-code-bg);font-family: 'Long Cang', 'Noto Serif SC', cursive;text-align:center;width:100%}
.plotly-error p{margin:0;line-height:var(--yukima-line-height-base)}
.post-item>a{display:block;padding:var(--yukima-size-6);margin-bottom:var(--yukima-size-6);border-radius:var(--yukima-radius-md);background-color:var(--yukima-component-bg);border-width:var(--yukima-size-border-width);border-style:solid;border-color:var(--yukima-component-border);transition:all .3s ease}
.post-item>a:hover{background-color:var(--yukima-component-bg-hover);border-color:var(--yukima-component-border-hover);transform:translateY(calc(var(--yukima-size-1)*-1));box-shadow:var(--yukima-component-shadow-hover)}
.post-item>a:hover .tag{background-color:var(--yukima-link);color:var(--yukima-button-text);border-color:var(--yukima-link)}
.post-item-title{font-size:var(--yukima-size-font-lg);margin:0 0 var(--yukima-size-2) 0}
.post-item-meta{font-size:var(--yukima-size-font-sm);color:var(--yukima-text);margin-bottom:var(--yukima-size-3);background:none;-webkit-background-clip:unset;background-clip:unset}
.post-item-description{font-size:var(--yukima-size-font-base);color:var(--yukima-strong);margin:0;background:none;-webkit-background-clip:unset;background-clip:unset}
.post-item-tags{margin-top:var(--yukima-size-4)}
.post-item-tags .tag{display:inline-block;margin:0 var(--yukima-size-2) var(--yukima-size-2) 0;padding:var(--yukima-size-0) var(--yukima-size-2);font-size:var(--yukima-size-font-xs);border-radius:var(--yukima-radius-sm);border-width:var(--yukima-size-border-width);border-style:solid;border-color:var(--yukima-border);color:var(--yukima-text);transition:all .3s ease;background:var(--yukima-component-bg);-webkit-background-clip:unset;background-clip:unset}
.social-links{display:flex;justify-content:center;gap:var(--yukima-size-6);padding:var(--yukima-size-4) 0 var(--yukima-size-8)}
.social-links a{transition:transform .3s ease,filter .3s ease}
.social-links a:hover{transform:scale(1.15) rotate(-5deg);filter:drop-shadow(0 0 var(--yukima-size-2) var(--yukima-glow))}
.social-links .social-icon{width:var(--yukima-size-icon-md);height:var(--yukima-size-icon-md)}
.post-toc{margin:var(--yukima-size-8) auto var(--yukima-size-12);padding:var(--yukima-size-4) var(--yukima-size-4);border:var(--yukima-size-border-width, 1px) solid var(--yukima-toc-border);border-radius:var(--yukima-radius-md);width:100%;max-width:var(--yukima-width-text-prose, 600px);background-color:var(--yukima-toc-bg);box-shadow:var(--yukima-shadow);transition:all .3s ease}
.post-toc:hover{box-shadow:var(--yukima-shadow-hover);border-color:var(--yukima-border-hover)}
.post-toc .toc-title{margin:0 0 var(--yukima-size-5) 0;font-size:var(--yukima-size-font-md);text-align:center;font-family:"Noto Serif",serif}
.post-toc ul{list-style-type:none;padding-left:0;margin:var(--yukima-size-4) 0 0 0}
.post-toc ul ul{padding-left:var(--yukima-size-5);margin-top:var(--yukima-size-2)}
.post-toc li{margin-bottom:var(--yukima-size-2);font-size:var(--yukima-size-font-sm)}
.post-toc li a{display:block;padding:var(--yukima-size-1) var(--yukima-size-2);border-radius:var(--yukima-radius-sm);transition:all .2s ease-out}
.post-toc li a:hover{background-color:var(--yukima-component-bg);transform:translateX(var(--yukima-size-1))}
.home-page .hero{text-align:center;padding:var(--yukima-size-8) var(--yukima-size-4) var(--yukima-size-4)}
.home-page .hero h2{font-size:var(--yukima-size-font-xxl);margin-bottom:var(--yukima-size-2)}
.home-page .hero p{font-size:var(--yukima-size-font-base);max-width:var(--yukima-width-text-prose);margin:var(--yukima-size-4) auto 0;color:var(--yukima-text);background:none;-webkit-background-clip:unset;background-clip:unset}
.home-page .latest-posts-title{text-align:center;font-size:var(--yukima-size-font-xl);margin:var(--yukima-size-8) 0;border-top-width:var(--yukima-size-border-width, 1px);border-top-style:solid;border-top-color:var(--yukima-border);padding-top:var(--yukima-size-8)}
.home-page .all-posts-link{text-align:center;margin-top:var(--yukima-size-4);font-weight:bold}
.post .post-header{text-align:center;margin-bottom:var(--yukima-size-12)}
.post .post-title{font-size:var(--yukima-size-font-xl);margin-bottom:var(--yukima-size-4)}
.post .post-meta{font-size:var(--yukima-size-font-sm);color:var(--yukima-text);background:none;-webkit-background-clip:unset;background-clip:unset}
.post .post-meta .post-tags{margin-top:var(--yukima-size-4)}
.post .post-meta .post-tags a{display:inline-block;margin:var(--yukima-size-0) var(--yukima-size-1);padding:var(--yukima-size-0) var(--yukima-size-2);border-radius:var(--yukima-radius-lg);border-width:var(--yukima-size-border-width);border-style:solid;border-color:var(--yukima-component-border);font-size:var(--yukima-size-font-xs);transition:all .2s ease-out;background-color:var(--yukima-component-bg)}
.post .post-meta .post-tags a:hover{background-color:var(--yukima-component-bg-hover);border-color:var(--yukima-component-border-hover)}
.post .post-content{font-size:var(--yukima-size-font-base);line-height:var(--yukima-line-height-loose)}
.post .post-content p{color:var(--yukima-text);background:none;-webkit-background-clip:unset;background-clip:unset}
.post .post-content a{text-decoration:underline;text-decoration-color:var(--yukima-border);text-decoration-thickness:var(--yukima-size-border-width);text-underline-offset:var(--yukima-size-1)}
.post .post-content pre,.post .post-content code{font-size:var(--yukima-size-font-xs)}
.post .post-content .math-block{margin:var(--yukima-size-8) 0;overflow-x:auto}
.section-header{text-align:center;padding:var(--yukima-size-4) 0 var(--yukima-size-12)}
.section-header .section-title{font-size:var(--yukima-size-font-xl);margin-bottom:var(--yukima-size-4)}
.section-header .section-description{font-size:var(--yukima-size-font-base);max-width:var(--yukima-width-text-prose);margin:0 auto;color:var(--yukima-strong);background:none;-webkit-background-clip:unset;background-clip:unset}
.term-list{display:flex;flex-wrap:wrap;gap:var(--yukima-size-4);justify-content:center;padding:var(--yukima-size-4) 0}
.term-item.term-item{display:flex;align-items:center;gap:var(--yukima-size-3);padding:var(--yukima-size-2) var(--yukima-size-4);border-radius:var(--yukima-radius-md);transition:all .3s ease;background-color:var(--yukima-component-bg);border:var(--yukima-size-border-width) solid var(--yukima-component-border);text-decoration:none}
.term-item.term-item:hover{background-color:var(--yukima-component-bg-hover);border-color:var(--yukima-component-border-hover);transform:translateY(calc(var(--yukima-size-1)*-1));box-shadow:var(--yukima-component-shadow-hover)}
.term-item .term-name{font-weight:bold}
.term-item .term-count{font-size:var(--yukima-size-font-xs);background-color:var(--yukima-border);color:var(--yukima-text);padding:var(--yukima-size-0) var(--yukima-size-1);border-radius:var(--yukima-radius-sm);-webkit-background-clip:unset;background-clip:unset}
.error-page{display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;flex-grow:1;padding:var(--yukima-size-8) 0}
.error-code{font-size:var(--yukima-size-font-display);font-weight:bold;font-family:"Noto Serif",serif;line-height:1;background: var(--yukima-gradient);-webkit-background-clip: text;background-clip: text;color: transparent;opacity:0.3}
.error-message h2{font-size:var(--yukima-size-font-xl);margin-top:0;margin-bottom:var(--yukima-size-2)}
.error-message p{font-size:var(--yukima-size-font-base);color:var(--yukima-text);background:none;-webkit-background-clip:unset;background-clip:unset}
.error-link{display:inline-block;margin-top:var(--yukima-size-8);padding:var(--yukima-size-3) var(--yukima-size-6);border-radius:var(--yukima-radius-md);font-weight:bold;text-decoration:none;transition:all .3s ease;background:var(--yukima-gradient);-webkit-background-clip:unset;background-clip:unset;color:var(--yukima-button-text)}
.error-link:hover{transform:translateY(calc(var(--yukima-size-1)*-1));box-shadow:var(--yukima-shadow-hover);filter:brightness(1.1)}

/* ===== 每日一句弹窗样式 ===== */
.daily-quote-popup {
  position: fixed;
  top: 20px;
  right: 20px;
  width: 300px;
  background: linear-gradient(135deg, #f0f4e8 0%, #fffef7 100%);
  border-left: 4px solid #8b9f6e;
  border-radius: 8px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
  padding: 20px;
  opacity: 0;
  transform: translateY(-20px);
  transition: all 0.3s ease;
  z-index: 99999;
}

.daily-quote-popup.show {
  opacity: 1;
  transform: translateY(0);
}

.quote-content {
  position: relative;
}

.quote-text {
  font-size: 14px;
  line-height: 1.6;
  color: #333;
  margin: 0;
  padding-right: 20px;
}

.quote-close {
  position: absolute;
  top: -10px;
  right: -10px;
  background: #8b9f6e;
  color: white;
  border: none;
  border-radius: 50%;
  width: 24px;
  height: 24px;
  cursor: pointer;
  font-size: 18px;
  line-height: 1;
  transition: background 0.2s;
}

.quote-close:hover {
  background: #6d7d56;
}