*{margin:0;padding:0;box-sizing:border-box;}
body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;background:#fffaf5;color:#2d2d2d;line-height:1.6;}
a{text-decoration:none;color:inherit;}
img{max-width:100%;}
.header{background:#fff;box-shadow:0 2px 12px rgba(189,26,26,0.08);position:sticky;top:0;z-index:100;}
.header-inner{max-width:1200px;margin:0 auto;padding:12px 20px;display:flex;align-items:center;justify-content:space-between;}
.logo{display:flex;align-items:center;gap:10px;font-size:28px;font-weight:700;color:#bd1a1a;}
.logo-icon{width:40px;height:40px;background:linear-gradient(135deg,#bd1a1a,#d93025);border-radius:10px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:20px;}
.nav{display:flex;gap:8px;}
.nav a{padding:8px 20px;border-radius:20px;font-size:16px;transition:all .3s;color:#444;}
.nav a:hover{background:#fef2f2;color:#bd1a1a;}
.nav a.active{background:#bd1a1a;color:#fff;}
.mobile-menu-btn{display:none;}
.breadcrumb{max-width:1200px;margin:0 auto;padding:16px 20px;font-size:14px;color:#718096;}
.breadcrumb a:hover{color:#bd1a1a;}
.breadcrumb span{margin:0 6px;color:#cbd5e0;}
.hero{background:linear-gradient(135deg,#fff3d6 0%,#ffe8e0 100%);padding:40px 0;}
.hero .container{max-width:1200px;margin:0 auto;padding:0 20px;}
.hero h1{font-size:42px;font-weight:700;color:#1a202c;margin-bottom:12px;}
.hero p{font-size:16px;color:#718096;max-width:700px;}
.container{max-width:1200px;margin:0 auto;padding:0 20px;}
.main-layout{display:grid;grid-template-columns:1fr 300px;gap:24px;padding:30px 20px;}
.card{background:#fff;border-radius:20px;padding:28px;box-shadow:0 4px 20px rgba(0,0,0,0.04);margin-bottom:24px;}
.huangli-card{background:linear-gradient(135deg,#fff5f5,#fff);border:2px solid #fee2e2;}
.huangli-header{display:flex;align-items:center;gap:24px;margin-bottom:24px;padding-bottom:20px;border-bottom:1px solid #f3f4f6;}
.day-num{font-size:72px;font-weight:700;color:#bd1a1a;line-height:1;}
.day-info h2{font-size:24px;margin-bottom:8px;color:#1a202c;}
.day-info p{color:#718096;font-size:15px;}
.yiji{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px;}
.yi,.ji{padding:16px;border-radius:12px;}
.yi{background:#f0fdf4;}
.ji{background:#fef2f2;}
.yi h4{color:#166534;margin-bottom:10px;font-size:16px;}
.ji h4{color:#991b1b;margin-bottom:10px;font-size:16px;}
.yi span,.ji span{display:inline-block;padding:4px 10px;margin:3px;border-radius:6px;font-size:14px;}
.yi span{background:#dcfce7;color:#166534;}
.ji span{background:#fee2e2;color:#991b1b;}
.shen{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;font-size:14px;}
.shen div{padding:8px;background:#f9fafb;border-radius:8px;}
.tools-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:24px 0;}
.tool-item{background:#fff;border-radius:16px;padding:24px;text-align:center;box-shadow:0 4px 12px rgba(0,0,0,0.04);transition:all .3s;cursor:pointer;}
.tool-item:hover{transform:translateY(-4px);box-shadow:0 8px 20px rgba(189,26,26,0.1);}
.tool-icon{font-size:36px;margin-bottom:12px;}
.tool-item h3{font-size:17px;margin-bottom:6px;color:#1a202c;}
.tool-item p{font-size:13px;color:#718096;}
.season-section{margin-bottom:30px;}
.season-title{display:flex;align-items:center;gap:12px;margin-bottom:20px;}
.season-icon{font-size:32px;}
.season-title h3{font-size:26px;font-weight:700;}
.season-spring h3{color:#166534;}
.season-summer h3{color:#9a3412;}
.season-autumn h3{color:#92400e;}
.season-winter h3{color:#1e40af;}
.season-title p{color:#718096;font-size:15px;margin-top:4px;}
.jieqi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;}
.jieqi-card{background:#fff;border-radius:16px;padding:20px;box-shadow:0 4px 12px rgba(0,0,0,0.04);cursor:pointer;transition:all .3s;}
.jieqi-card:hover{transform:translateY(-3px);box-shadow:0 8px 20px rgba(0,0,0,0.08);}
.jieqi-date{font-size:15px;color:#718096;margin-bottom:8px;}
.jieqi-name{font-size:22px;font-weight:700;color:#1a202c;margin-bottom:10px;}
.jieqi-tag{display:inline-block;padding:3px 10px;border-radius:12px;font-size:13px;}
.tag-spring{background:#dcfce7;color:#166534;}
.tag-summer{background:#ffedd5;color:#9a3412;}
.tag-autumn{background:#fef3c7;color:#92400e;}
.tag-winter{background:#dbeafe;color:#1e40af;}
.calendar-nav{display:flex;gap:12px;align-items:center;margin-bottom:20px;flex-wrap:wrap;}
.calendar-nav select{padding:8px 16px;border:2px solid #e5e7eb;border-radius:10px;font-size:16px;background:#fff;cursor:pointer;}
.calendar-btn{padding:8px 20px;border:none;border-radius:10px;font-size:15px;cursor:pointer;background:#f3f4f6;transition:all .2s;}
.calendar-btn:hover{background:#e5e7eb;}
.calendar-btn.today{background:#bd1a1a;color:#fff;}
.calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;}
.calendar-head{padding:12px;text-align:center;font-weight:600;color:#718096;background:#f9fafb;border-radius:8px;}
.calendar-day{min-height:90px;padding:10px;border-radius:10px;background:#fff;cursor:pointer;transition:all .2s;border:1px solid #f3f4f6;}
.calendar-day:hover{background:#fef2f2;border-color:#fee2e2;}
.calendar-day.other-month{opacity:0.4;}
.calendar-day.today{background:#fef2f2;border-color:#bd1a1a;}
.calendar-day .d{font-size:20px;font-weight:600;color:#bd1a1a;margin-bottom:4px;}
.calendar-day .l{font-size:12px;color:#718096;}
.calendar-day .j{font-size:12px;color:#059669;font-weight:500;}
.sidebar .widget{background:#fff;border-radius:16px;padding:20px;box-shadow:0 4px 12px rgba(0,0,0,0.04);margin-bottom:20px;}
.widget h4{font-size:17px;margin-bottom:12px;padding-bottom:10px;border-bottom:2px solid #f3f4f6;color:#1a202c;}
.widget ul{list-style:none;}
.widget ul li{padding:8px 0;font-size:14px;color:#4a5568;}
.widget ul li a:hover{color:#bd1a1a;}
.tag-cloud{display:flex;flex-wrap:wrap;gap:8px;}
.tag-cloud a{padding:5px 12px;background:#f9fafb;border-radius:14px;font-size:13px;color:#4a5568;transition:all .2s;}
.tag-cloud a:hover{background:#fee2e2;color:#bd1a1a;}
.jiri-list .jiri-card{padding:16px;border-bottom:1px solid #f3f4f6;cursor:pointer;transition:background .2s;}
.jiri-card:last-child{border-bottom:none;}
.jiri-card:hover{background:#fef2f2;border-radius:10px;}
.jiri-date{font-size:18px;font-weight:600;color:#bd1a1a;margin-bottom:6px;}
.jiri-info{font-size:14px;color:#4a5568;}
.tabs{display:flex;gap:8px;margin-bottom:20px;}
.tab{padding:10px 24px;border-radius:20px;background:#f3f4f6;cursor:pointer;font-size:15px;transition:all .2s;}
.tab.active{background:#bd1a1a;color:#fff;}
.friend-links{background:#fff;border-radius:20px;padding:28px;box-shadow:0 4px 20px rgba(0,0,0,0.04);}
.friend-links h3{font-size:22px;margin-bottom:16px;}
.links{display:flex;flex-wrap:wrap;gap:12px;}
.links a{padding:6px 16px;background:#f9fafb;border-radius:14px;font-size:14px;color:#4a5568;transition:all .2s;}
.links a:hover{background:#fee2e2;color:#bd1a1a;}
.footer{background:#1a202c;color:#cbd5e0;padding:40px 0 20px;margin-top:40px;}
.footer-inner{max-width:1200px;margin:0 auto;padding:0 20px;}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:30px;margin-bottom:30px;}
.footer h4{color:#fff;font-size:17px;margin-bottom:12px;}
.footer ul{list-style:none;}
.footer ul li{padding:5px 0;font-size:14px;}
.footer a:hover{color:#fff;}
.copyright{text-align:center;padding-top:20px;border-top:1px solid #2d3748;font-size:14px;}
.article-card{border-radius:16px;overflow:hidden;background:#fff;box-shadow:0 4px 12px rgba(0,0,0,0.04);cursor:pointer;transition:all .3s;}
.article-card:hover{transform:translateY(-3px);box-shadow:0 8px 20px rgba(0,0,0,0.08);}
.article-img{height:140px;background:linear-gradient(135deg,#fee2e2,#fecaca);display:flex;align-items:center;justify-content:center;font-size:48px;}
.article-content{padding:18px;}
.article-tag{display:inline-block;padding:3px 10px;background:#fee2e2;color:#bd1a1a;border-radius:10px;font-size:12px;margin-bottom:8px;}
.article-content h4{font-size:16px;margin-bottom:8px;color:#1a202c;line-height:1.5;}
.article-content p{font-size:13px;color:#718096;line-height:1.6;}
.articles-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}
.detail-section{margin-bottom:30px;}
.detail-section h3{font-size:22px;color:#bd1a1a;margin-bottom:14px;display:flex;align-items:center;gap:8px;}
.detail-section p{font-size:15px;line-height:1.9;color:#4a5568;margin-bottom:12px;}
.select-row{display:flex;justify-content:flex-end;align-items:center;gap:10px;margin-bottom:20px;}
.select-row label{font-size:15px;color:#4a5568;}
.year-selector{padding:8px 16px;border:2px solid #e5e7eb;border-radius:12px;font-size:16px;}
@media(max-width:1024px){
    .main-layout{grid-template-columns:1fr;}
    .tools-grid{grid-template-columns:repeat(2,1fr);}
    .jieqi-grid{grid-template-columns:repeat(3,1fr);}
    .articles-grid{grid-template-columns:repeat(2,1fr);}
}
@media(max-width:768px){
    .nav{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;flex-direction:column;padding:16px;box-shadow:0 4px 12px rgba(0,0,0,0.1);}
    .nav.show{display:flex;}
    .nav a{text-align:center;}
    .mobile-menu-btn{display:block;background:none;border:none;font-size:24px;cursor:pointer;}
    .hero h1{font-size:30px;}
    .day-num{font-size:54px;}
    .tools-grid{grid-template-columns:1fr;}
    .jieqi-grid{grid-template-columns:repeat(2,1fr);}
    .yiji{grid-template-columns:1fr;}
    .shen{grid-template-columns:1fr;}
    .calendar-day{min-height:70px;padding:6px;}
    .calendar-day .d{font-size:16px;}
    .footer-grid{grid-template-columns:1fr;}
    .articles-grid{grid-template-columns:1fr;}
}
