
:root{
  --ink:#152033;--muted:#607089;--paper:#f5faff;--panel:#ffffff;--soft:#e7f0ff;--line:#c9d8ee;
  --brand:#2458d3;--brand-dark:#173a8a;--accent:#f2a41f;--accent-soft:#fff4d9;--ok:#0f7b55;--warn:#a05a00;--danger:#a33232;
  --shadow:0 18px 42px rgba(23,58,138,.10);--radius:24px;--max:1480px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:radial-gradient(circle at top left,rgba(36,88,211,.14),transparent 34rem),radial-gradient(circle at 90% 10%,rgba(242,164,31,.18),transparent 26rem),linear-gradient(180deg,#f7fbff 0%,#f1f7ff 55%,#f8fbff 100%);color:var(--ink);font-size:17px;line-height:1.66}a{color:var(--brand-dark);font-weight:750;text-decoration-thickness:.08em;text-underline-offset:.18em}a:hover{color:#b15f00}.container{width:min(var(--max),calc(100% - 40px));margin-inline:auto}.skip-link{position:absolute;left:-999px;top:auto;width:1px;height:1px;overflow:hidden}.skip-link:focus{left:1rem;top:1rem;width:auto;height:auto;background:#fff;padding:.7rem 1rem;border-radius:12px;border:2px solid var(--brand);z-index:999}
.site-top{position:sticky;top:0;z-index:50;background:rgba(245,250,255,.94);backdrop-filter:blur(12px);border-bottom:1px solid rgba(201,216,238,.9)}.top-inner{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.85rem 0;min-width:0}.brand{display:flex;align-items:center;gap:.75rem;min-width:0;color:var(--ink);text-decoration:none}.brand img{width:48px;height:48px;flex:0 0 auto}.brand strong{display:block;font-size:1.02rem;line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.brand span{display:block;color:var(--muted);font-size:.86rem;font-weight:650;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:46vw}.nav{display:flex;gap:.45rem;flex-wrap:wrap;justify-content:flex-end}.nav a{display:inline-flex;align-items:center;padding:.55rem .78rem;border-radius:999px;text-decoration:none;color:var(--ink);font-size:.94rem;font-weight:800}.nav a:hover,.nav a.active{background:#dceaff;color:var(--brand-dark)}.menu-button{display:none;border:1px solid var(--line);background:#fff;border-radius:999px;padding:.55rem .8rem;font-weight:850;color:var(--ink)}
.hero{padding:5.2rem 0 2.8rem;overflow:hidden}.hero-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(330px,.85fr);gap:2rem;align-items:center}.eyebrow{display:inline-flex;align-items:center;gap:.45rem;background:var(--accent-soft);border:1px solid #efd08b;color:#734700;padding:.4rem .7rem;border-radius:999px;font-weight:900;font-size:.9rem}h1{font-size:clamp(2.45rem,5vw,5rem);line-height:.98;margin:.85rem 0 1rem;letter-spacing:-.055em;max-width:13ch}.lead{font-size:clamp(1.08rem,2vw,1.32rem);max-width:72ch;color:#30415d;margin:0 0 1.25rem}.hero-actions{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:1.1rem}.button,.button-secondary,.small-button{display:inline-flex;align-items:center;gap:.45rem;border-radius:999px;padding:.82rem 1.05rem;text-decoration:none;font-weight:900;border:1px solid transparent;line-height:1.2;cursor:pointer;font-size:1rem}.button{background:linear-gradient(135deg,var(--brand),#1e7fe7);color:#fff;box-shadow:0 12px 24px rgba(36,88,211,.24)}.button:hover{background:var(--brand-dark);color:#fff}.button-secondary{background:#fff;color:var(--brand-dark);border-color:var(--line)}.button-secondary:hover{background:var(--soft);color:var(--ink)}.small-button{padding:.55rem .8rem;font-size:.9rem;background:#fff;border-color:var(--line);color:var(--brand-dark)}.hero-panel{background:linear-gradient(160deg,#fff,#edf5ff);border:1px solid var(--line);border-radius:var(--radius);padding:1.35rem;box-shadow:var(--shadow)}.hero-panel h2{margin-top:0;font-size:1.25rem}.mini-list{display:grid;gap:.65rem;margin:1rem 0 0;padding:0;list-style:none}.mini-list li{display:flex;gap:.6rem;align-items:flex-start;padding:.72rem;background:#fff;border:1px solid rgba(201,216,238,.75);border-radius:16px}.mini-list li:before{content:'☑';font-weight:900;color:var(--brand);margin-top:.02rem}
.section{padding:2rem 0}.section h2{font-size:clamp(1.65rem,3vw,2.5rem);line-height:1.1;letter-spacing:-.025em;margin:0 0 .8rem}.section-intro{max-width:80ch;color:var(--muted);margin-top:0}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.card,.check-card,.note-box,.checklist-panel,.progress-box{background:rgba(255,255,255,.9);border:1px solid rgba(201,216,238,.9);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.15rem;min-width:0}.check-card{position:relative;overflow:hidden;display:flex;flex-direction:column;gap:.45rem}.check-card:before{content:'';position:absolute;inset:0 0 auto;height:5px;background:linear-gradient(90deg,var(--brand),var(--accent));opacity:.92}.check-card h3{margin:.1rem 0 .35rem;font-size:1.22rem;line-height:1.2}.check-card p{margin:.2rem 0;color:var(--muted)}.card-link{margin-top:auto;display:inline-flex;align-items:center;gap:.4rem;text-decoration:none;color:var(--brand-dark);font-weight:950}.tag-row{display:flex;gap:.4rem;flex-wrap:wrap;margin:.55rem 0}.tag{font-size:.78rem;font-weight:850;color:#244575;background:#eef5ff;border:1px solid #cfe0fb;border-radius:999px;padding:.22rem .5rem}.featured{border-color:rgba(36,88,211,.45);background:linear-gradient(180deg,#fff,#f2f7ff)}.path-diagram{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.8rem;margin-top:1rem}.step{background:#fff;border:1px solid var(--line);border-radius:18px;padding:1rem}.step strong{display:block;color:var(--brand-dark);font-size:1.02rem;margin-bottom:.35rem}.step span{display:inline-flex;width:2rem;height:2rem;border-radius:999px;align-items:center;justify-content:center;background:var(--brand);color:white;font-weight:950;margin-bottom:.5rem}
.page-hero{padding:3.3rem 0 1.5rem}.breadcrumbs{font-size:.9rem;color:var(--muted);margin-bottom:.75rem}.breadcrumbs a{font-weight:750;color:var(--muted)}.page-hero h1{max-width:18ch;font-size:clamp(2.25rem,4vw,4rem)}.content-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:1.25rem;align-items:start}.sidebar{position:sticky;top:86px}.sidebar .card{box-shadow:none;background:rgba(255,255,255,.75)}.sidebar ul{margin:.7rem 0 0;padding-left:1.2rem}.prose{max-width:930px}.prose h2{margin-top:2rem;line-height:1.15}.prose h3{margin-top:1.4rem;line-height:1.2}.prose table,.data-table{width:100%;border-collapse:collapse;background:#fff;border-radius:16px;overflow:hidden;border:1px solid var(--line);margin:1rem 0;display:table}.prose th,.prose td,.data-table th,.data-table td{border-bottom:1px solid #e6eefb;padding:.75rem;text-align:left;vertical-align:top}.prose th,.data-table th{background:#eaf3ff;color:#173a8a}.prose tr:last-child td,.data-table tr:last-child td{border-bottom:0}.note-box{background:#fff9ea;border-color:#efd08b;color:#493719;margin:1rem 0}.note-box strong{color:#734700}.ad-wrap{margin:1.35rem 0;padding:.65rem;border-top:1px solid rgba(201,216,238,.9);border-bottom:1px solid rgba(201,216,238,.9);background:rgba(255,255,255,.5);text-align:center;overflow:hidden}.ad-label{font-size:.75rem;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;margin-bottom:.35rem}
.checklist-actions{display:flex;gap:.55rem;flex-wrap:wrap;margin:.85rem 0 1rem}.progress-box{display:flex;justify-content:space-between;align-items:center;gap:1rem;background:#f8fbff;box-shadow:none;margin:1rem 0}.progress-meter{height:12px;background:#dceaff;border-radius:999px;overflow:hidden;min-width:180px;flex:1}.progress-meter span{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--brand),#1e7fe7);transition:.2s}.checklist-section{margin:1.3rem 0}.checklist-section h2{border-bottom:1px solid var(--line);padding-bottom:.35rem}.check-item{display:grid;grid-template-columns:auto 1fr;gap:.65rem;align-items:start;background:#fff;border:1px solid #e1ebfb;border-radius:16px;padding:.76rem;margin:.55rem 0}.check-item input{width:1.05rem;height:1.05rem;margin-top:.22rem;accent-color:var(--brand)}.check-item label{font-weight:760}.check-item small{display:block;color:var(--muted);margin-top:.12rem}.copy-box{white-space:pre-wrap;background:#fff;border:1px solid var(--line);border-radius:16px;padding:1rem;overflow:auto;display:none}.copy-box.show{display:block}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.form-row{display:grid;gap:.35rem;margin-bottom:.9rem}label{font-weight:850;color:#26344f}input,select,textarea{width:100%;font:inherit;padding:.78rem .85rem;border-radius:14px;border:1px solid #bfcce2;background:#fff;color:var(--ink);min-width:0}textarea{min-height:120px;resize:vertical}input:focus,select:focus,textarea:focus{outline:3px solid rgba(36,88,211,.18);border-color:var(--brand)}
footer{margin-top:3rem;background:#101a2b;color:#f5f8ff;padding:2.4rem 0 1.4rem}footer a{color:#ffd98c}.footer-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:1.5rem}.footer-grid h2,.footer-grid h3{margin-top:0;color:#fff}.footer-links{display:grid;gap:.35rem}.small{font-size:.92rem;color:#66758c}footer .small{color:#cbd7ec}.muted{color:var(--muted)}.status-ok{color:var(--ok);font-weight:900}.status-warn{color:var(--warn);font-weight:900}.status-danger{color:var(--danger);font-weight:900}
@media (max-width:1050px){.hero-grid,.content-layout{grid-template-columns:1fr}.sidebar{position:static}.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.path-diagram{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:760px){body{font-size:16px}.container{width:min(100% - 28px,var(--max))}.top-inner{align-items:flex-start}.nav{display:none;position:absolute;left:14px;right:14px;top:74px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:.65rem;box-shadow:var(--shadow);justify-content:flex-start}.nav.open{display:flex}.menu-button{display:inline-flex}.brand span{max-width:56vw}.hero{padding:3.2rem 0 2rem}.grid,.grid-2,.form-grid,.footer-grid,.path-diagram{grid-template-columns:1fr}.button,.button-secondary{width:100%;justify-content:center}.prose table,.data-table{display:block;overflow-x:auto;white-space:nowrap}.sidebar{display:none}.progress-box{display:block}.progress-meter{margin-top:.6rem;min-width:0}.checklist-actions .small-button{width:100%;justify-content:center}}
@media print{.site-top,.hero-actions,.sidebar,.ad-wrap,.checklist-actions,footer{display:none!important}body{background:#fff;color:#000}.container{width:100%}.card,.check-card,.note-box,.checklist-panel,.progress-box{box-shadow:none;border:1px solid #bbb}.content-layout{display:block}.check-item{break-inside:avoid}.page-hero{padding:1rem 0}.copy-box{display:none!important}a{color:#000;text-decoration:none}}
