
:root{
  --navy:#12345b;--blue:#1e6fb9;--teal:#17a6a1;--purple:#7a2ba6;
  --orange:#f28c3a;--green:#4fa86c;--red:#d84a4a;--yellow:#f6c445;
  --ink:#183042;--muted:#667a86;--paper:#fff;--bg:#eef5f8;--line:#d7e5ed;
  --shadow:0 14px 34px rgba(18,52,91,.14);
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:linear-gradient(135deg,#eef5f8,#f8fbfc)}
a{color:inherit}.institution{width:min(1120px,calc(100% - 28px));margin:16px auto 0;padding:15px 20px;background:#fff;border-radius:20px 20px 0 0;display:flex;align-items:center;justify-content:space-between;gap:18px}
.institution h1{font-size:clamp(1.05rem,3vw,1.6rem);margin:0 0 4px;color:#070707}.institution p{margin:2px 0;font-size:.92rem}.institution img{width:112px;height:auto}
.topbar{width:min(1120px,calc(100% - 28px));margin:auto;background:var(--navy);color:#fff;padding:12px 17px;display:flex;justify-content:space-between;align-items:center;gap:12px;position:sticky;top:0;z-index:20;box-shadow:0 8px 18px rgba(18,52,91,.2)}
.score{background:#fff;color:var(--navy);border-radius:999px;padding:8px 13px;font-weight:900}.shell{width:min(1120px,calc(100% - 28px));margin:0 auto 30px;padding:24px;background:rgba(255,255,255,.58);border-radius:0 0 24px 24px}
.hero,.card{background:#fff;border-radius:24px;box-shadow:var(--shadow)}.hero{padding:clamp(24px,5vw,46px);display:grid;grid-template-columns:1.2fr .8fr;align-items:center;gap:28px}
.hero h2{font-size:clamp(2rem,6vw,3.4rem);line-height:1.02;margin:8px 0 12px;color:var(--navy)}.hero p{font-size:1.08rem;line-height:1.55}.hero img{width:100%;max-width:460px}
.eyebrow{color:var(--teal);font-weight:900;letter-spacing:.08em;font-size:.8rem}.notice{background:#fff7e7;border-left:7px solid var(--orange);padding:13px 15px;border-radius:12px;line-height:1.45}
.grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:22px}.mission{background:#fff;border-radius:20px;padding:18px;display:grid;grid-template-columns:92px 1fr;gap:16px;align-items:center;box-shadow:var(--shadow)}
.mission img{width:88px}.mission h3{margin:0 0 5px;color:var(--navy)}.mission p{margin:0 0 10px;color:var(--muted);line-height:1.4}.btn{display:inline-block;border:0;border-radius:13px;padding:12px 17px;background:var(--navy);color:#fff;text-decoration:none;font-weight:900;cursor:pointer}
.btn.alt{background:#dce9f1;color:var(--navy)}.btn.green{background:var(--green)}.btn.orange{background:var(--orange)}.btn.red{background:var(--red)}
.card{padding:clamp(18px,4vw,32px)}.heading{display:flex;gap:15px;align-items:center}.heading img{width:78px}.heading h2{margin:0;color:var(--navy)}.heading p{margin:4px 0 0;color:var(--muted)}
.progress{height:13px;background:#e6eef2;border-radius:99px;overflow:hidden;margin:18px 0}.bar{height:100%;width:0;background:linear-gradient(90deg,var(--teal),var(--blue));transition:.3s}
.workarea{margin-top:18px;padding:18px;border:2px dashed #b7cad5;border-radius:18px;background:#f7fafc}.feedback{display:none;margin-top:15px;padding:13px 15px;border-radius:13px;font-weight:800}.feedback.ok{display:block;background:#e6f7ed;color:#17663f}.feedback.bad{display:block;background:#fff0ef;color:#922f2f}
.word-window{border:8px solid var(--navy);border-radius:18px;overflow:hidden;background:#fff}.word-title{padding:10px 14px;background:#164a7c;color:#fff;font-weight:900}.ribbon{display:flex;gap:8px;padding:12px;background:#eaf2f7;flex-wrap:wrap}.tool{padding:8px 11px;background:#fff;border:1px solid #c8d9e3;border-radius:8px}.page{position:relative;width:min(620px,92%);min-height:420px;margin:24px auto;background:#fff;box-shadow:0 6px 18px rgba(18,52,91,.18);padding:50px 48px}
.hotspot{position:absolute;border:3px solid transparent;background:rgba(255,255,255,.02);cursor:pointer}.hotspot:hover{border-color:var(--orange)}.labels{display:flex;flex-wrap:wrap;gap:8px;margin-top:15px}.label-btn{border:0;padding:10px 13px;border-radius:999px;background:#dfeaf1;color:var(--navy);font-weight:900;cursor:pointer}.label-btn.active{background:var(--orange);color:#fff}
.editor-toolbar{display:flex;gap:8px;flex-wrap:wrap;padding:12px;background:#e8f1f6;border-radius:14px 14px 0 0}.editor-toolbar button{min-width:45px;border:1px solid #b9cbd5;background:#fff;border-radius:8px;padding:9px;cursor:pointer;font-weight:900}
.editor{min-height:330px;padding:28px;border:1px solid #cedce5;border-top:0;background:#fff;outline:none}.editor h1{color:var(--navy)}
.builder-tools{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}.doc-preview{min-height:390px;background:#fff;border:1px solid var(--line);padding:28px;box-shadow:0 7px 18px rgba(18,52,91,.11)}.placeholder-image{height:120px;display:grid;place-items:center;border:3px dashed var(--green);background:#eaf6ee;color:var(--green);font-weight:900}
.route-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.bank,.route{min-height:310px;padding:14px;border:2px dashed #bdced8;border-radius:16px;background:#f7fafc}.chip{width:100%;margin:6px 0;border:0;border-radius:12px;padding:12px;background:#fff;color:var(--navy);box-shadow:0 3px 9px rgba(18,52,91,.08);font-weight:800;cursor:pointer;text-align:left}.route li{margin:7px 0;padding:12px;background:#fff;border-radius:12px;box-shadow:0 3px 9px rgba(18,52,91,.08);cursor:pointer}
.filename{width:100%;padding:12px;border:2px solid #c8d8e2;border-radius:12px;font-size:1rem}.checklist{display:grid;gap:9px;margin:15px 0}.check{display:flex;gap:10px;align-items:center;padding:11px;border-radius:12px;background:#f1f6f8}.check input{width:20px;height:20px}
.badges{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.badge{padding:13px 8px;border-radius:14px;background:var(--navy);color:#fff;text-align:center;font-weight:900}.badge:nth-child(2){background:var(--teal)}.badge:nth-child(3){background:var(--orange)}.badge:nth-child(4){background:var(--purple)}
footer{text-align:center;color:#6d818c;padding:20px;font-size:.84rem}
@media(max-width:800px){.hero{grid-template-columns:1fr}.grid{grid-template-columns:1fr}.route-grid{grid-template-columns:1fr}.institution img{width:82px}.badges{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.institution img{display:none}.topbar{position:static}.shell{padding:13px}.mission{grid-template-columns:70px 1fr}.mission img{width:68px}.page{padding:35px 25px}.badges{grid-template-columns:1fr}}
