:root{--ink: #111111;--paper: #f4f1ea;--orange: #ff5a1f;--blue: #2545ff;--green: #00a86b;--yellow: #ffd02e;--pink: #ff8fc1}*{margin:0;padding:0;box-sizing:border-box}body{background:var(--paper);color:var(--ink);font-family:PingFang SC,Hiragino Sans GB,Microsoft YaHei,Noto Sans SC,sans-serif;line-height:1.7;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer}::selection{background:var(--yellow)}.wrap{max-width:1100px;margin:0 auto;padding:0 24px}.nav{position:sticky;top:0;z-index:50;background:var(--paper);border-bottom:3px solid var(--ink);display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 28px;flex-wrap:wrap}.nav .brand{font-weight:900;font-size:19px;background:var(--ink);color:var(--paper);padding:8px 14px;border-radius:10px;transform:rotate(-1.5deg);white-space:nowrap}.nav-links{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.nav-links a{font-weight:800;font-size:15px;padding:8px 14px;border-radius:999px;border:2px solid transparent;transition:all .18s}.nav-links a:hover{border-color:var(--ink);background:#fff;box-shadow:3px 3px 0 var(--ink)}.nav-links a.active{background:var(--yellow);border-color:var(--ink)}.nav-user{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:800}.nav-user .who{background:#fff;border:2px solid var(--ink);border-radius:999px;padding:6px 14px}.nav-user .who.admin{background:var(--orange);color:#fff}.btn{font-weight:900;font-size:15px;padding:11px 22px;border-radius:999px;border:3px solid var(--ink);background:#fff;box-shadow:4px 4px 0 var(--ink);transition:transform .15s,box-shadow .15s}.btn:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--ink)}.btn:disabled{opacity:.55;cursor:not-allowed;transform:none}.btn.primary{background:var(--blue);color:#fff}.btn.dark{background:var(--ink);color:var(--paper)}.btn.warn{background:var(--orange);color:#fff}.btn.small{font-size:13px;padding:6px 14px;border-width:2px;box-shadow:3px 3px 0 var(--ink)}section{padding:90px 0;position:relative}.sec-tag{display:inline-block;font-size:12px;font-weight:800;letter-spacing:.3em;padding:7px 14px;border:2px solid var(--ink);border-radius:999px;background:var(--yellow);box-shadow:3px 3px 0 var(--ink);margin-bottom:26px}.sec-title{font-size:clamp(34px,6vw,70px);font-weight:900;line-height:1.05;letter-spacing:-.02em;margin-bottom:22px}.sec-title em{font-style:normal;color:var(--orange)}.lead{font-size:18px;color:#444;max-width:720px}.hero{padding:70px 0 90px;position:relative;overflow:hidden}.hero-kicker{display:flex;align-items:center;gap:12px;font-weight:700;margin-bottom:16px}.hero-kicker .dot{width:12px;height:12px;border-radius:50%;background:var(--green);animation:blink 1.4s infinite}@keyframes blink{50%{opacity:.25}}.hero-name{font-size:clamp(58px,13vw,190px);font-weight:900;line-height:.98;letter-spacing:-.03em}.hero-name .row{display:block}.hero-name .outline{color:transparent;-webkit-text-stroke:3px var(--ink)}.hero-name .blue{color:var(--blue)}.hero-name .orange{color:var(--orange)}.pills{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.pill{padding:9px 18px;border-radius:999px;font-weight:800;font-size:15px;border:2px solid var(--ink);box-shadow:4px 4px 0 var(--ink)}.pill.y{background:var(--yellow)}.pill.b{background:var(--blue);color:#fff}.pill.o{background:var(--orange);color:#fff}.pill.g{background:var(--green);color:#fff}.hero-photo{position:absolute;right:2vw;top:12vh;width:clamp(170px,22vw,300px);transform:rotate(3.5deg);border:3px solid var(--ink);border-radius:18px;background:#fff;box-shadow:10px 10px 0 var(--yellow),10px 10px 0 3px var(--ink);padding:10px 10px 34px}.hero-photo img{width:100%;display:block;border-radius:10px}.hero-photo figcaption{position:absolute;bottom:8px;left:0;right:0;text-align:center;font-weight:800;font-size:13px}.marquee{border-top:3px solid var(--ink);border-bottom:3px solid var(--ink);background:var(--ink);color:var(--paper);overflow:hidden;padding:14px 0;transform:rotate(-1deg) scale(1.02)}.marquee-inner{display:flex;gap:44px;white-space:nowrap;width:max-content;font-size:clamp(18px,2.6vw,30px);font-weight:900;animation:scroll-x 24s linear infinite}.marquee-inner span i{color:var(--yellow);font-style:normal;margin:0 10px}@keyframes scroll-x{to{transform:translate(-50%)}}.bento{display:grid;grid-template-columns:repeat(12,1fr);gap:20px}.card{border:3px solid var(--ink);border-radius:22px;padding:26px;background:#fff;box-shadow:8px 8px 0 var(--ink);transition:transform .22s}.card:hover{transform:translate(-3px,-3px);box-shadow:11px 11px 0 var(--ink)}.card h3{font-size:22px;font-weight:900;margin-bottom:10px}.card p{color:#333}.c-photo{grid-column:span 5;background:var(--yellow)}.c-photo img{width:100%;border:3px solid var(--ink);border-radius:14px}.c-bio{grid-column:span 7;background:var(--ink);color:var(--paper)}.c-bio p{color:#ddd}.c-bio h3 em{color:var(--yellow);font-style:normal}.c-small{grid-column:span 4}.c-small.v1{background:var(--blue);color:#fff}.c-small.v1 p{color:#dde4ff}.c-small.v2{background:var(--orange);color:#fff}.c-small.v2 p{color:#ffe2d6}.tagline{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.tagline span{font-size:12.5px;font-weight:800;padding:5px 11px;border-radius:999px;border:1px solid rgba(255,255,255,.5);background:#ffffff29}.article-list{display:grid;gap:22px}.article-card{border:3px solid var(--ink);border-radius:20px;background:#fff;padding:26px 28px;box-shadow:8px 8px 0 var(--ink);transition:transform .22s;display:block}.article-card:hover{transform:translate(-4px,-4px);box-shadow:12px 12px 0 var(--orange)}.article-card .meta{display:flex;gap:10px;align-items:center;font-size:13px;font-weight:800;margin-bottom:12px;flex-wrap:wrap}.article-card .cat{background:var(--yellow);border:2px solid var(--ink);border-radius:999px;padding:3px 12px}.article-card h3{font-size:26px;font-weight:900;margin-bottom:8px;line-height:1.3}.article-card p{color:#444}.article-card .more{margin-top:14px;font-weight:900;color:var(--blue)}.article-body{background:#fff;border:3px solid var(--ink);border-radius:22px;padding:36px 34px;box-shadow:10px 10px 0 var(--ink)}.article-body h1{font-size:clamp(28px,4.6vw,46px);font-weight:900;line-height:1.2;margin-bottom:12px}.article-body .meta{font-size:14px;font-weight:800;color:#666;margin-bottom:24px}.article-body .content{font-size:17.5px;line-height:1.95;white-space:pre-wrap;color:#222}.comment-list{display:grid;gap:14px;margin:26px 0}.comment{border:2px solid var(--ink);border-radius:16px;background:#fff;padding:16px 18px;box-shadow:4px 4px 0 var(--ink)}.comment .top{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:6px;flex-wrap:wrap}.comment .name{font-weight:900}.comment .time{font-size:12.5px;color:#777;font-weight:700}.comment .text{line-height:1.8;white-space:pre-wrap}.field{margin-bottom:16px}.field label{display:block;font-weight:900;margin-bottom:6px;font-size:14px}.field input,.field textarea,.field select{width:100%;font:inherit;padding:12px 14px;border:3px solid var(--ink);border-radius:12px;background:#fff;outline:none}.field input:focus,.field textarea:focus,.field select:focus{box-shadow:4px 4px 0 var(--yellow)}.field textarea{min-height:120px;resize:vertical}.form-card{border:3px solid var(--ink);border-radius:20px;background:#fff;padding:28px;box-shadow:8px 8px 0 var(--ink);max-width:520px}.form-card h2{font-size:28px;font-weight:900;margin-bottom:18px}.notice{padding:12px 16px;border-radius:12px;font-weight:800;margin-bottom:16px;border:2px solid var(--ink)}.notice.err{background:var(--pink)}.notice.ok{background:var(--green);color:#fff}.notice.info{background:var(--yellow)}.tabs{display:flex;gap:10px;margin-bottom:20px}.tabs button{font-weight:900;padding:9px 20px;border-radius:999px;border:3px solid var(--ink);background:#fff}.tabs button.on{background:var(--ink);color:var(--paper)}.admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.admin-box{border:3px solid var(--ink);border-radius:20px;background:#fff;padding:22px;box-shadow:8px 8px 0 var(--ink)}.admin-box h3{font-weight:900;font-size:20px;margin-bottom:14px}.admin-row{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:12px 0;border-bottom:2px dashed #ddd}.admin-row:last-child{border-bottom:none}.admin-row .t{font-weight:800;font-size:15px}.admin-row .d{font-size:12.5px;color:#777;font-weight:700}.empty{padding:28px;text-align:center;color:#777;font-weight:800}footer{border-top:3px solid var(--ink);background:var(--yellow);padding:24px 0;text-align:center;font-weight:700;font-size:14px}@media (max-width: 900px){.hero-photo{position:static;margin:34px auto 0;width:min(66vw,280px)}.bento{grid-template-columns:1fr}.c-photo,.c-bio,.c-small{grid-column:span 12}.admin-grid{grid-template-columns:1fr}.nav{padding:12px 16px}section{padding:64px 0}}
