*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--accent: #6ab4e0;--accent-dark: #4da0d0;--bg: #eef2f8;--bg-white: #fff;--border: #d8e2f0;--text: #222;--text-light: #777;--max-width: 1000px;--sidebar-width: 300px}body{font-family:Helvetica Neue,Arial,Hiragino Kaku Gothic ProN,Hiragino Sans,sans-serif;font-size:16px;line-height:1.75;color:var(--text);background:var(--bg)}a{color:var(--accent);text-decoration:none}a:hover{color:var(--accent-dark);text-decoration:underline}img{max-width:100%;height:auto}.site-header{background:var(--bg-white);text-align:center;padding:20px 0 12px}.site-logo{display:inline-flex;flex-direction:column;align-items:center;gap:10px;text-decoration:none}.logo-title{font-size:26px;font-weight:800;color:#333;letter-spacing:.02em}.logo-title span{color:var(--accent)}.logo-sub{display:flex;align-items:center;gap:12px;width:100vw}.logo-sub-line{flex:1;height:1px;background:var(--border)}.logo-sub-text{font-size:14px;font-weight:700;color:#555;letter-spacing:.1em;white-space:nowrap}.site-hero{background:var(--bg-white);border-bottom:1px solid var(--border);padding:24px 40px 30px;text-align:center}.site-hero h2{font-size:18px;font-weight:800;color:#1a1a1a;line-height:1.55;margin-bottom:10px}.site-hero p{font-size:14px;color:#666;line-height:1.8}.site-wrapper{max-width:var(--max-width);margin:24px auto;padding:0 16px;display:grid;grid-template-columns:1fr var(--sidebar-width);gap:36px;align-items:start}.post-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.post-card{background:var(--bg-white);border-radius:8px;overflow:hidden;border:1px solid var(--border);transition:box-shadow .2s;cursor:pointer}.post-card:hover{box-shadow:0 4px 16px #00000014}.card-thumb{width:100%;aspect-ratio:16/9;background:#fff;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;padding:6px;box-sizing:border-box}.card-thumb img{width:100%;height:100%;object-fit:contain;border-radius:4px}.thumb-placeholder{width:100%;height:100%;background:linear-gradient(135deg,#6cb4e4,#4a90d9);border-radius:4px}.card-cat{position:absolute;top:8px;left:8px;background:#ffffffeb;color:#333;font-size:11px;font-weight:700;padding:3px 10px;border-radius:3px}.card-body{padding:12px 14px 14px}.card-title{font-size:15px;font-weight:700;color:var(--text);line-height:1.6;margin-bottom:8px}.card-title a{color:var(--text)}.card-title a:hover{color:var(--accent);text-decoration:none}.card-date{font-size:12px;color:#aaa}.card-date:before{content:"⏱ "}.pagination{display:flex;justify-content:center;align-items:center;gap:6px;margin-top:24px}.page-btn{width:34px;height:34px;border:1px solid var(--border);border-radius:4px;background:var(--bg-white);display:flex;align-items:center;justify-content:center;font-size:13px;color:#555;text-decoration:none}.page-btn.active{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:700}.page-btn:hover:not(.active){background:#eef6fb;text-decoration:none}.sidebar-block{background:var(--bg-white);border:1px solid var(--border);border-radius:8px;overflow:hidden;margin-bottom:20px}.sidebar-title{background:var(--accent);color:#fff;font-size:14px;font-weight:700;padding:10px 14px;letter-spacing:.05em}.sidebar-body{padding:14px}.profile{display:flex;gap:12px;align-items:flex-start}.profile-icon{width:64px;height:64px;border-radius:50%;overflow:hidden;flex-shrink:0}.profile-icon img{width:100%;height:100%;object-fit:cover;object-position:center top}.profile-name{font-size:14px;font-weight:700;color:#222;margin-bottom:4px}.profile-desc{font-size:13px;color:var(--text-light);line-height:1.65}.cat-list{list-style:none}.cat-list li{border-bottom:1px solid var(--bg);padding:9px 0;display:flex;justify-content:space-between;align-items:center;font-size:14px}.cat-list li:last-child{border-bottom:none}.cat-list a{color:var(--text)}.cat-list a:hover{color:var(--accent);text-decoration:none}.cat-count{background:var(--bg);color:#888;font-size:11px;padding:1px 7px;border-radius:10px}.popular-list{list-style:none}.popular-item{display:flex;gap:10px;padding:8px 0;border-bottom:1px solid var(--bg)}.popular-item:last-child{border-bottom:none}.popular-num{width:22px;height:22px;background:var(--accent);color:#fff;font-size:11px;font-weight:700;border-radius:4px;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:2px}.popular-title{font-size:13px;color:#333;line-height:1.55}.popular-title a{color:#333}.popular-title a:hover{color:var(--accent);text-decoration:none}.post-wrapper{max-width:var(--max-width);margin:24px auto;padding:0 16px;display:grid;grid-template-columns:1fr var(--sidebar-width);gap:36px;align-items:start}.post-article{background:var(--bg-white);border-radius:8px;border:1px solid var(--border);padding:32px}.post-article h1{font-size:22px;font-weight:800;line-height:1.5;margin-bottom:12px}.post-meta{font-size:12px;color:#aaa;margin-bottom:24px}.post-meta .cat-badge{display:inline-block;background:var(--accent);color:#fff;font-size:11px;font-weight:700;padding:2px 8px;border-radius:3px;margin-left:8px;vertical-align:middle}.post-content{line-height:1.9}.post-content h2{font-size:19px;font-weight:700;border-left:4px solid var(--accent);padding-left:12px;margin:2em 0 .8em}.post-content h3{font-size:17px;font-weight:700;margin:1.6em 0 .6em}.post-content p{margin-bottom:1.2em}.post-content ul,.post-content ol{padding-left:1.5em;margin-bottom:1.2em}.post-content li{margin-bottom:.4em}.post-content table{width:100%;border-collapse:collapse;margin-bottom:1.5em;font-size:14px}.post-content th{background:var(--accent);color:#fff;padding:8px 12px;text-align:left}.post-content td{padding:8px 12px;border-bottom:1px solid var(--border)}.post-content tr:nth-child(2n) td{background:#f5f8fc}.post-content a{color:var(--accent)}.post-content strong{font-weight:700}.post-content blockquote{border-left:4px solid var(--border);padding:8px 16px;color:var(--text-light);margin:1.2em 0;background:#f5f8fc}.site-footer{background:#333;color:#aaa;text-align:center;padding:28px 16px;margin-top:40px;font-size:13px;line-height:2}.site-footer a{color:#aaa}.site-footer a:hover{color:#fff;text-decoration:none}@media(max-width:768px){.site-wrapper,.post-wrapper,.post-grid{grid-template-columns:1fr}.site-hero{padding:20px 16px}.site-hero h2{font-size:16px}.post-article{padding:20px 16px}}
