*{box-sizing:border-box}
body{margin:0;font-family:Arial,Helvetica,sans-serif;background:#f3f6fb;color:#1f2937}
.page{max-width:1120px;margin:auto;padding:24px}
.hero{background:white;border-radius:24px;overflow:hidden;box-shadow:0 14px 40px rgba(0,0,0,.08)}
.top{text-align:center;padding:42px 24px;background:linear-gradient(135deg,#f8fbff,#eef6ff)}
.tagline,.brand{font-size:13px;letter-spacing:2px;font-weight:700;color:#64748b}
.logo{max-width:180px;margin:18px auto;display:block}
h1{font-size:34px;max-width:780px;margin:28px auto 12px}
.intro{max-width:720px;margin:auto;color:#64748b;line-height:1.6}
.catalog-box{max-width:850px;margin:24px auto;background:#0f766e;color:white;border-radius:20px;padding:26px}
.catalog-box p{color:#dff7f3}
.catalog-box a,.catalog-link{display:inline-block;background:white;color:#0f766e;padding:13px 24px;border-radius:999px;text-decoration:none;font-weight:700;margin-top:10px}
.search-box{max-width:720px;margin:32px auto 0;background:white;border-radius:20px;padding:28px;box-shadow:0 8px 28px rgba(15,118,110,.14)}
input{width:100%;padding:15px;border:1px solid #cbd5e1;border-radius:12px;font-size:16px;margin:10px 0}
button{background:#0f766e;color:white;border:0;border-radius:12px;padding:14px 24px;font-size:16px;font-weight:700;cursor:pointer}
button:hover{background:#115e59}
.content{text-align:center;padding:32px}
.catalog-link{background:#0f766e;color:white}
.support{margin-top:28px;background:#f8fafc;border-radius:18px;padding:26px}
footer{margin-top:24px;color:#64748b;font-size:14px}
.card{background:white;border:1px solid #e2e8f0;border-radius:18px;padding:24px;margin-top:24px;text-align:left}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin-top:18px}
.field{background:#f8fafc;border-radius:14px;padding:14px}
.label{display:block;font-size:12px;color:#64748b;font-weight:700;margin-bottom:6px}
.value{font-size:15px;color:#111827}
.docs{display:grid;gap:12px;margin-top:12px}
.doc{display:flex;justify-content:space-between;align-items:center;background:#0f766e;color:white;text-decoration:none;border-radius:14px;padding:15px 18px;font-weight:700}
.doc span:last-child{background:white;color:#0f766e;border-radius:999px;padding:6px 10px;font-size:12px}
.status{color:#64748b}
.error{color:#b91c1c;font-weight:700}
#accessModal{display:none;position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:999;padding:20px}
.modal{background:white;max-width:420px;margin:10vh auto;padding:28px;border-radius:20px}
.modal button{width:100%;margin-top:10px}
.cancel{background:#e5e7eb!important;color:#111827}
@media(max-width:600px){
.page{padding:12px}
.top{padding:28px 16px}
h1{font-size:26px}
.search-box{padding:22px}
}