/* cybernote front — security magazine editorial */
.cn{--bg:#0b1322;--fg:#e2ecf7;--mut:#8ba3bd;--cyan:#38bdf8;--cyan-d:#0ea5e9;--line:#1c2a40;max-width:1200px;margin:0 auto;padding:0 24px 30px;color:var(--fg)}
.cn a{text-decoration:none;color:inherit}
.cn-hero{position:relative;padding:60px 0 46px;overflow:hidden}
.cn-hero::before{content:"";position:absolute;inset:-40% -20% auto;height:130%;background:
 radial-gradient(600px 300px at 18% 20%,rgba(56,189,248,.16),transparent 60%),
 radial-gradient(500px 280px at 85% 10%,rgba(129,140,248,.14),transparent 60%),
 radial-gradient(400px 240px at 60% 80%,rgba(56,189,248,.08),transparent 60%);pointer-events:none}
.cn-hero .inner{position:relative;display:grid;grid-template-columns:1.08fr .92fr;gap:44px;align-items:center}
.cn-kicker{display:inline-block;font-size:11px;font-weight:800;letter-spacing:.1em;color:var(--cyan);border:1px solid rgba(56,189,248,.35);border-radius:999px;padding:5px 14px;margin-bottom:16px;background:rgba(56,189,248,.08)}
.cn-hero h1{font-size:clamp(30px,4.2vw,50px);line-height:1.08;letter-spacing:-.025em;margin:0 0 16px;font-weight:800}
.cn-hero h1 span{color:var(--cyan)}
.cn-hero .lead{font-size:16px;line-height:1.65;color:var(--mut);margin:0 0 24px;max-width:470px}
.cn-ctas{display:flex;gap:12px;flex-wrap:wrap}
.cn-btn{padding:12px 24px;border-radius:10px;font-weight:700;font-size:14px}
.cn-btn-primary{background:var(--cyan);color:#04141f!important;box-shadow:0 8px 26px rgba(56,189,248,.35)}
.cn-btn-primary:hover{background:var(--cyan-d);transform:translateY(-2px)}
.cn-btn-ghost{border:1.5px solid var(--line);color:var(--fg)!important}
.cn-btn-ghost:hover{border-color:var(--cyan);color:var(--cyan)!important}
.cn-note{position:relative;background:rgba(16,28,48,.85);border:1px solid var(--line);border-radius:14px;padding:18px;font-family:"Cascadia Code",Consolas,monospace;font-size:12px;box-shadow:0 24px 60px rgba(0,0,0,.45)}
.cn-note::before{content:"private-note.md";position:absolute;top:-10px;left:14px;background:#0b1322;padding:0 8px;font-size:10px;color:var(--cyan);font-weight:700;letter-spacing:.06em}
.cn-line{color:#c3d5e8;padding:3px 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cn-line .red{color:#f87171}
.cn-line .cy{color:var(--cyan)}
.cn-line.dim{color:#5f7a97}
.cn-status{margin-top:10px;padding:8px 12px;border-radius:8px;background:rgba(52,211,153,.12);color:#34d399;font-weight:700;font-size:11px}
.cn-sechead{display:flex;align-items:baseline;justify-content:space-between;margin:40px 0 20px}
.cn-sechead h2{font-size:23px;margin:0;font-weight:800;letter-spacing:-.015em}
.cn-sechead a{font-size:13px;font-weight:700;color:var(--cyan)!important}
.cn-tools{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.cn-tool{border-top:2px solid var(--line);padding-top:16px;transition:.2s}
.cn-tool:hover{border-top-color:var(--cyan)}
.cn-num{font-size:34px;font-weight:800;color:transparent;-webkit-text-stroke:1.5px rgba(56,189,248,.55);font-family:"Cascadia Code",Consolas,monospace;line-height:1}
.cn-tool h3{margin:12px 0 8px;font-size:17px;font-weight:800}
.cn-tool p{margin:0;font-size:13px;color:var(--mut);line-height:1.65}
.cn-tool .cn-link{display:inline-block;margin-top:12px;font-size:12px;font-weight:800;color:var(--cyan)!important;letter-spacing:.04em}
.cn-list{display:flex;flex-direction:column}
.cn-row{display:grid;grid-template-columns:44px 1fr auto;gap:16px;align-items:baseline;padding:18px 4px;border-bottom:1px solid var(--line);transition:.15s}
.cn-row:hover{background:rgba(56,189,248,.04)}
.cn-row:hover h3 a{color:var(--cyan)!important}
.cn-idx{font-size:13px;color:#41586f;font-family:"Cascadia Code",Consolas,monospace;font-weight:700}
.cn-row h3{margin:0 0 4px;font-size:15.5px;line-height:1.45;font-weight:700}
.cn-row .meta{font-size:11px;color:#41586f;display:flex;gap:10px;margin-top:2px}
.cn-cat{color:var(--cyan)!important;font-weight:800;font-size:10px;letter-spacing:.07em;text-transform:uppercase}
.cn-band{margin:44px 0 10px;border:1px solid rgba(56,189,248,.4);background:linear-gradient(115deg,rgba(56,189,248,.16),rgba(129,140,248,.08));border-radius:18px;padding:32px 36px;display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}
.cn-band h2{margin:0 0 4px;font-size:20px}
.cn-band p{margin:0;color:var(--mut);font-size:13.5px}
.cn-band a{background:var(--cyan);color:#04141f!important;font-weight:800;padding:12px 24px;border-radius:10px;font-size:14px}
@media(max-width:900px){.cn-hero .inner{grid-template-columns:1fr;padding-top:10px}.cn-tools{grid-template-columns:1fr}.cn-row{grid-template-columns:1fr;gap:6px}.cn-idx{display:none}}

/* deco7 patch: Kadence paints its own bg/heading colors on the front page — override for .cn surfaces only */
body.home,
body.page-template-page-blog { background: #0b1322 !important; }
body.home .site,
body.page-template-page-blog .site { background: transparent !important; }
body.home .content-area,
body.page-template-page-blog .content-area { background: transparent !important; }
.cn h1, .cn h2, .cn h3, .cn h4 { color: #e2ecf7 !important; }
.cn, .cn p, .cn span, .cn div { text-align: left; }
.cn-hero .inner > div:first-child { text-align: left !important; }
.cn .cn-btn { display: inline-block; width: auto; }

/* deco7 bugfix: footer text invisible (dark body + theme's dark slate footer text) */
body.home .site-footer,
body.page-template-page-blog .site-footer { color: #8ba3bd !important; }
body.home .site-footer *,
body.page-template-page-blog .site-footer * { color: #8ba3bd !important; }
body.home .site-footer a:hover,
body.page-template-page-blog .site-footer a:hover { color: #38bdf8 !important; }
