:root{--navy:#1f3a68;--blue:#0f4c8a;--gold:#e3a21a;--bg:#f2f6fb;--line:#d3dcea;--ink:#1b2433;--green:#0b6b2e}
*{box-sizing:border-box}
body{margin:0;font-family:"Segoe UI",Arial,sans-serif;color:var(--ink);background:linear-gradient(180deg,#f8fbff,#eef3fa 40%,#fff7e8);line-height:1.5}
a{color:var(--blue)}
.sitehead{text-align:center;padding:10px 12px 6px;background:linear-gradient(180deg,#fff,#f4f8fe)}
.sitehead .logo{width:88px;height:auto;display:block;margin:0 auto}
.sitehead .org{font-family:Georgia,"Times New Roman",serif;font-size:clamp(1rem,2.4vw,1.55rem);font-weight:700;color:#2b2b2b;margin-top:2px}
.sitehead .rule{width:130px;height:3px;background:var(--gold);margin:6px auto 0}
.sitenav{background:linear-gradient(180deg,#0f4c8a,#0a3566);display:flex;flex-wrap:wrap;justify-content:center;gap:0 4px;padding:0 8px;position:relative;z-index:20}
.sitenav>a,.sitenav .dd>a{display:block;color:#fff;text-decoration:none;font-size:.86rem;font-weight:600;padding:12px 12px;white-space:nowrap}
.sitenav a:hover{background:rgba(255,255,255,.12)}
.sitenav .dd{position:relative}.sitenav .dd-menu{display:none;position:absolute;left:0;top:100%;background:#0a3566;min-width:260px;box-shadow:0 6px 14px rgba(0,0,0,.3)}
.sitenav .dd:hover .dd-menu,.sitenav .dd:focus-within .dd-menu{display:block}.sitenav .dd-menu a{display:block;color:#fff;text-decoration:none;font-size:.84rem;padding:9px 14px;white-space:normal}
.sitenav .portal-tab{background:var(--gold);color:#1b2433;border-radius:6px;margin:6px 4px;padding:6px 12px}.sitenav .portal-tab:hover,.sitenav .portal-tab.on{background:#ffd062}
.userbar{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;background:#fff;border-bottom:3px solid var(--gold);padding:8px 18px;font-size:.92rem}
.userbar .brand{font-weight:800;color:var(--navy);letter-spacing:.4px}.userbar .sp{flex:1}
button.link{background:none;border:0;color:var(--blue);text-decoration:underline;cursor:pointer;font:inherit;padding:0}
.wrap{max-width:1100px;margin:0 auto;padding:18px 14px 40px}
.hero{background:linear-gradient(120deg,#0f3d75,#1b6ab3);color:#fff;border-radius:14px;padding:26px 24px;margin-bottom:18px}
.hero h1{margin:0 0 6px;font-size:clamp(1.4rem,3vw,2.1rem)}.hero p{margin:4px 0;max-width:760px;font-size:1.02rem}
.hero .cta{margin-top:12px;display:flex;gap:10px;flex-wrap:wrap}
.btn,button.btn{display:inline-block;background:var(--gold);color:#1b2433;border:0;border-radius:8px;padding:10px 18px;font:700 .98rem "Segoe UI",Arial,sans-serif;text-decoration:none;cursor:pointer}
.btn.alt{background:#fff;color:var(--navy)}.btn.small{padding:6px 12px;font-size:.88rem}.btn.navy{background:var(--navy);color:#fff}
.stats{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 16px}.stat{background:#fff;border:2px solid var(--line);border-radius:10px;padding:8px 14px;min-width:150px}.stat b{display:block;font-size:1.3rem;color:var(--navy)}
.tabs{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0 14px}
.tab{border:2px solid var(--line);background:#fff;color:var(--navy);padding:9px 16px;border-radius:30px;font:700 .95rem "Segoe UI",Arial,sans-serif;cursor:pointer}
.tab[aria-selected=true]{background:var(--navy);border-color:var(--navy);color:#fff}
.sets{display:grid;grid-template-columns:repeat(auto-fill,minmax(310px,1fr));gap:14px}
.set{background:#fff;border:2px solid var(--line);border-radius:14px;padding:14px 16px;display:flex;flex-direction:column}
.set .cat{font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.5px;color:#7a5a00}
.set h2{margin:2px 0 6px;font-size:1.25rem;color:var(--navy)}
.set ol{margin:4px 0 10px;padding-left:20px;font-size:.9rem}.set li{margin:2px 0}.set li a{text-decoration:none}.set li a:hover{text-decoration:underline}
.set .meta{font-size:.84rem;color:#4a566a;margin-top:auto;padding-top:6px}
.bar{height:8px;background:#e3eaf5;border-radius:6px;overflow:hidden;margin:6px 0}.bar i{display:block;height:100%;background:var(--green)}
.soon{background:#fff8e6;border:2px dashed var(--gold);border-radius:14px;padding:18px}
.card{background:#fff;border:2px solid var(--line);border-radius:14px;padding:20px 22px;max-width:560px;margin:10px auto}
.card h1{margin:0 0 10px;font-size:1.5rem;color:var(--navy)}
.card label{display:block;font-weight:600;margin:10px 0 3px}.card input[type=text],.card input[type=email],.card input[type=password],.card input[type=tel],.card select{width:100%;padding:10px;border:2px solid #9fb0c8;border-radius:8px;font:inherit}
.card .chk{display:flex;gap:8px;align-items:flex-start;font-weight:400;margin-top:12px}.card .chk input{margin-top:5px}
.err{background:#fde8e8;border:2px solid #b42318;color:#7a1410;padding:8px 12px;border-radius:8px;margin:8px 0}
.ok{background:#e6f6ea;border:2px solid var(--green);color:#0b4a20;padding:8px 12px;border-radius:8px;margin:8px 0}
.foot{text-align:center;font-size:.85rem;color:#4a566a;padding:16px}
table.t{width:100%;border-collapse:collapse;background:#fff;font-size:.88rem}table.t th,table.t td{border:1px solid var(--line);padding:6px 8px;text-align:left;vertical-align:top}table.t th{background:#eaf0fa}
.portalbar{background:#fff;border-bottom:3px solid var(--gold);padding:8px 16px;display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center;font:.92rem "Segoe UI",Arial,sans-serif}
.portalbar b{color:var(--navy)}.portalbar .sp{flex:1}
@media(max-width:600px){.sitenav>a,.sitenav .dd>a{padding:9px 8px;font-size:.8rem}}
