
:root{
  --navy:#062b5a; --cyan:#10c4e0; --cyan2:#dff8fc; --text:#0a2345;
  --muted:#60738a; --bg:#f5f8fb; --line:#dce6ef; --white:#fff;
  --shadow:0 10px 28px rgba(6,43,90,.10); --radius:20px;
}
*{box-sizing:border-box} html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--text);background:var(--bg)}
a{color:inherit;text-decoration:none} button,input{font:inherit}
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.94);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.header-inner{max-width:1180px;margin:auto;padding:12px 20px;display:flex;align-items:center;gap:18px}
.brand{display:flex;align-items:center;gap:12px;font-weight:900;letter-spacing:-.02em}
.brand img{width:54px;height:54px;object-fit:contain}.brand span{font-size:18px}
.nav{margin-left:auto;display:flex;gap:16px;align-items:center}.nav a{font-size:14px;font-weight:750;color:var(--muted)}
.nav a:hover{color:var(--navy)}
.container{max-width:1180px;margin:auto;padding:30px 20px 64px}
.hero{display:grid;grid-template-columns:1.25fr .75fr;gap:30px;align-items:center;padding:28px 0 34px}
.hero h1{font-size:clamp(38px,6vw,72px);line-height:.98;margin:0 0 20px;letter-spacing:-.05em;color:var(--navy)}
.hero p{font-size:19px;line-height:1.55;color:var(--muted);max-width:760px}
.hero-card{background:linear-gradient(150deg,var(--navy),#0a4a89);padding:26px;border-radius:28px;color:#fff;box-shadow:var(--shadow)}
.hero-card .rule{font-size:20px;font-weight:800;line-height:1.45}.hero-card .rule b{color:#75e8f6}
.toolbar{display:flex;gap:12px;align-items:center;margin:4px 0 24px;flex-wrap:wrap}
.search{flex:1;min-width:230px;border:1px solid var(--line);background:#fff;border-radius:14px;padding:13px 16px;color:var(--text);outline:none}
.search:focus{border-color:var(--cyan)}
.chips{display:flex;gap:8px;flex-wrap:wrap}.chip{border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 12px;font-size:13px;color:var(--muted)}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.card{background:#fff;border:1px solid var(--line);border-radius:22px;overflow:hidden;box-shadow:0 5px 16px rgba(6,43,90,.05);transition:.18s transform,.18s box-shadow}
.card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}
.card-media{aspect-ratio:1/1;background:#eef5f9;overflow:hidden;position:relative}
.card-media img{width:100%;height:100%;object-fit:cover}.media-badge{position:absolute;right:12px;top:12px;background:rgba(6,43,90,.92);color:white;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:800}
.card-body{padding:18px}.card h2{font-size:20px;line-height:1.16;margin:0 0 10px;letter-spacing:-.025em}.card p{margin:0;color:var(--muted);line-height:1.45;font-size:14px}
.meta{display:flex;gap:8px;flex-wrap:wrap;margin-top:15px}.tag{font-size:12px;background:var(--cyan2);color:#07536a;border-radius:999px;padding:6px 9px;font-weight:750}
.archive-note{margin:32px 0 0;background:#fff6d8;border:1px solid #f0d786;padding:16px 18px;border-radius:14px;color:#66500b;font-size:14px;line-height:1.5}
.footer{border-top:1px solid var(--line);background:#fff}.footer-inner{max-width:1180px;margin:auto;padding:26px 20px 44px;display:flex;gap:20px;justify-content:space-between;flex-wrap:wrap;color:var(--muted);font-size:13px}.footer-nav{display:flex;gap:14px;flex-wrap:wrap}
.post-shell{max-width:1040px}.back{display:inline-flex;align-items:center;gap:8px;color:var(--muted);font-weight:750;margin-bottom:20px}
.post-head{margin-bottom:22px}.post-head h1{font-size:clamp(34px,5vw,58px);line-height:1.03;letter-spacing:-.045em;margin:0 0 14px;color:var(--navy)}
.post-head p{font-size:18px;color:var(--muted);line-height:1.55;max-width:850px}.status{display:inline-block;background:#e8f8ef;color:#1d6d42;border-radius:999px;padding:7px 11px;font-size:12px;font-weight:800}
.carousel-wrap{background:#fff;border-radius:24px;border:1px solid var(--line);padding:14px;box-shadow:var(--shadow)}
.carousel{position:relative;overflow:hidden;border-radius:16px;background:#edf4f8;touch-action:pan-y}
.track{display:flex;transition:transform .28s ease}.slide{min-width:100%;display:flex;justify-content:center;align-items:center}.slide img{width:100%;height:auto;display:block;max-height:80vh;object-fit:contain;background:white}
.arrow{position:absolute;top:50%;transform:translateY(-50%);width:46px;height:46px;border:none;border-radius:50%;background:rgba(6,43,90,.88);color:#fff;font-size:24px;cursor:pointer;box-shadow:0 3px 12px rgba(0,0,0,.14)}
.arrow.prev{left:12px}.arrow.next{right:12px}.counter{position:absolute;top:12px;right:12px;background:rgba(6,43,90,.88);color:#fff;padding:7px 10px;border-radius:999px;font-size:12px;font-weight:850}
.dots{display:flex;justify-content:center;gap:7px;padding:12px 0 1px}.dot{width:8px;height:8px;border-radius:50%;background:#c7d7e5}.dot.active{background:var(--cyan);transform:scale(1.25)}
.actions{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0 28px}.btn{border:none;border-radius:12px;padding:11px 14px;font-weight:800;cursor:pointer;display:inline-flex;align-items:center;gap:8px}.btn.primary{background:var(--navy);color:#fff}.btn.secondary{background:#fff;border:1px solid var(--line);color:var(--navy)}.btn.cyan{background:var(--cyan);color:var(--navy)}
.copy-note{font-size:12px;color:var(--muted)}
.content-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(260px,.5fr);gap:26px}
.panel{background:#fff;border:1px solid var(--line);border-radius:20px;padding:22px}.panel h2{margin:0 0 14px;font-size:22px}.caption{white-space:pre-wrap;line-height:1.65;color:#193a5e;font-size:15px}.source-text{white-space:pre-wrap;line-height:1.6;color:#36536f;font-size:14px}
.ai-note{margin-top:16px;padding:12px 14px;border-radius:12px;background:#f2f5f8;color:var(--muted);font-size:12px}
.video-card{background:#fff;border:1px solid var(--line);border-radius:24px;padding:14px;box-shadow:var(--shadow)}.video-card video{display:block;width:100%;max-height:78vh;border-radius:16px;background:#000}
.static-page{max-width:850px}.static-page h1{font-size:46px;line-height:1.05;color:var(--navy);letter-spacing:-.04em}.static-page h2{margin-top:34px;color:var(--navy)}.static-page p,.static-page li{line-height:1.7;color:#36536f}.static-page .box{background:#fff;border:1px solid var(--line);border-radius:18px;padding:20px;margin:20px 0}
.toast{position:fixed;left:50%;bottom:28px;transform:translate(-50%,20px);background:var(--navy);color:#fff;padding:11px 16px;border-radius:999px;font-size:13px;opacity:0;pointer-events:none;transition:.2s;z-index:99}.toast.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:850px){.hero{grid-template-columns:1fr}.grid{grid-template-columns:repeat(2,1fr)}.content-grid{grid-template-columns:1fr}.nav .desktop{display:none}}
@media(max-width:590px){.container{padding:22px 14px 50px}.header-inner{padding:9px 14px}.brand span{display:none}.nav{gap:10px}.nav a{font-size:13px}.grid{grid-template-columns:1fr 1fr;gap:10px}.card-body{padding:12px}.card h2{font-size:15px}.card p{display:none}.meta{display:none}.carousel-wrap{padding:6px;border-radius:16px}.arrow{width:38px;height:38px;font-size:19px}.actions{gap:8px}.btn{padding:10px 11px;font-size:13px}.post-head h1{font-size:34px}.hero h1{font-size:44px}}
