﻿.area-page { --area-navy:#091527; --area-blue:#4a98ec; --area-orange:#bc3e18; --area-line:#dce3eb; --area-muted:#536071; }
.area-page [hidden] { display:none !important; }
.area-page button,.area-page input { font:inherit; }
.area-page button { cursor:pointer; }
.area-page a:focus-visible,.area-page button:focus-visible,.area-page summary:focus-visible { outline:3px solid #2872b8; outline-offset:4px; }
.area-page .area-menu { background:transparent; border:0; }
.area-page .area-skip { position:fixed; top:-100px; left:12px; z-index:2000; background:white; color:#091527; padding:12px; }
.area-page .area-skip:focus { top:8px; }
.area-login-main { display:flex; align-items:center; }
.area-login-layout { width:100%; max-width:1280px; margin:auto; padding:88px 60px 95px; display:grid; grid-template-columns:1.15fr 1fr; gap:100px; align-items:center; }
.area-symbol { width:130px; height:auto; margin-bottom:30px; }
.area-eyebrow { font-size:.64rem; letter-spacing:.13em; color:var(--area-muted); font-weight:600; margin-bottom:16px; }
.area-page h1 { font-weight:300; font-size:2.4rem; line-height:1.18; color:var(--area-navy); margin-bottom:24px; }
.area-lead { font-size:1.24rem; line-height:1.5; color:var(--area-navy); margin-bottom:18px; }
.area-description { font-size:.9rem; line-height:1.8; color:var(--area-muted); max-width:480px; }
.area-login-box { padding:38px; border:1px solid var(--area-line); border-top:3px solid var(--area-blue); border-radius:0 0 5px 5px; }
.area-label { font-size:.62rem; line-height:1.5; letter-spacing:.09em; font-weight:700; text-transform:uppercase; color:var(--area-muted); }
.area-login-box h2 { font-size:1.55rem; font-weight:400; color:var(--area-navy); margin:12px 0; }
.area-login-box > p { color:var(--area-muted); font-size:.82rem; line-height:1.8; }
.area-login-form { margin-top:28px; }
.area-login-form label { display:block; font-size:.76rem; font-weight:600; margin-bottom:10px; }
.area-password-row { display:flex; border:1px solid #8b97a6; border-radius:3px; min-height:52px; }
.area-password-row:focus-within { outline:3px solid #4a98ec; outline-offset:2px; }
.area-password-row input { background:#fff; border:0; border-radius:3px; padding:10px 12px; width:100%; min-width:0; font-size:.9rem; color:#091527; }
.area-password-row input:focus { outline:0; }
.area-show-password { padding:0 12px; background:#fff; border:0; font-size:.68rem !important; font-weight:600 !important; color:var(--area-navy); }
.area-small { font-size:.65rem; line-height:1.7; color:var(--area-muted); margin:10px 0 22px; }
.area-page .area-button { display:inline-flex; align-items:center; justify-content:center; gap:24px; min-height:46px; padding:11px 20px; border-radius:3px; border:1px solid transparent; text-decoration:none; font-size:.75rem; font-weight:600; line-height:1.5; transition:background-color .15s; }
.area-page .area-primary { width:100%; justify-content:space-between; background:var(--area-orange); color:white; }
.area-page .area-primary:hover { background:#9e3011; }
.area-page .area-secondary { border-color:var(--area-line); background:#fff; color:var(--area-navy); }
.area-page .area-secondary:hover { background:#edf3fa; }
.area-contact { margin-top:28px; padding-top:22px; border-top:1px solid var(--area-line); font-size:.72rem; display:flex; flex-direction:column; gap:7px; }
.area-contact span { color:var(--area-muted); }
.area-page .area-contact a { color:var(--area-navy); font-weight:600; }
.area-alert { margin:22px 0; font-size:.76rem; line-height:1.7; padding:14px 16px; border-left:3px solid #bc3e18; background:#fff4ee; color:#742d15; }
.area-content-layout { max-width:1280px; margin:auto; padding:65px 60px; }
.area-content-heading { display:flex; gap:30px; align-items:flex-start; justify-content:space-between; margin-bottom:42px; }
.area-content-heading h1 { font-size:2.15rem; margin-bottom:18px; }
.area-content-heading form { margin-top:5px; flex-shrink:0; }
.area-filters { display:flex; gap:10px; flex-wrap:wrap; margin-bottom:24px; }
.area-filters button { font-size:.69rem; border:1px solid var(--area-line); background:white; color:var(--area-muted); padding:10px 17px; min-height:44px; border-radius:3px; }
.area-filters button[aria-pressed="true"] { background:var(--area-navy); color:white; border-color:var(--area-navy); }
.area-count { font-size:.65rem; color:var(--area-muted); margin-bottom:12px; }
.area-item { display:flex; gap:24px; align-items:flex-start; padding:30px 0; border-top:1px solid var(--area-line); }
.area-item:last-child { border-bottom:1px solid var(--area-line); }
.area-item-mark { flex:0 0 44px; width:44px; height:44px; background:#eff5fc; color:#1a609e; display:flex; align-items:center; justify-content:center; font-size:1.4rem; border-radius:3px; }
.area-item-body { flex:1; min-width:0; }
.area-item h2 { font-weight:600; color:var(--area-navy); font-size:1.02rem; line-height:1.5; margin:8px 0; }
.area-item-body > p:not(.area-label):not(.area-metadata) { font-size:.79rem; line-height:1.8; color:var(--area-muted); }
.area-metadata { font-size:.62rem; color:var(--area-muted); margin-top:12px; }
.area-page .area-download { color:var(--area-navy); background:white; border-color:var(--area-line); margin-top:24px; flex-shrink:0; }
.area-page .area-download:hover { background:#eff5fc; }
.area-details { margin-top:17px; }
.area-details summary { display:list-item; width:fit-content; cursor:pointer; font-size:.74rem; color:var(--area-navy); font-weight:600; padding:6px 0; }
.area-prose { font-size:.8rem; line-height:1.85; white-space:pre-wrap; overflow-wrap:anywhere; padding:16px 0; color:#28384a; }
.area-help { background:#f3f6fa; display:flex; justify-content:space-between; align-items:center; gap:25px; padding:28px; margin-top:40px; }
.area-help h2 { font-size:.9rem; font-weight:600; color:var(--area-navy); margin-bottom:6px; }
.area-help p,.area-help a { font-size:.74rem; line-height:1.8; }
.area-help p { color:var(--area-muted); }
.area-help a { flex-shrink:0; }
.area-session-note { font-size:.63rem; color:var(--area-muted); margin-top:22px; line-height:1.8; }
.area-empty { padding:35px 0; font-size:.9rem; }
@media(max-width:1150px) { .area-page .nav-links a { min-width:unset; padding:0 12px; font-size:.75rem; } .area-login-layout { gap:50px; } }
@media(max-width:960px) { .area-login-layout { padding:60px 30px; gap:35px; } .area-login-box { padding:28px; } .area-content-layout { padding:50px 30px; } }
@media(max-width:800px) { .area-login-layout { grid-template-columns:1fr; max-width:620px; padding-top:45px; } .area-symbol { width:82px; margin-bottom:22px; } .area-page h1 { font-size:1.9rem; } .area-lead br { display:none; } .area-lead { font-size:1.08rem; } .area-content-heading h1 { font-size:1.7rem; } .area-item { gap:16px; flex-wrap:wrap; } .area-item-body { flex-basis:calc(100% - 60px); } .area-page .area-download { margin:0 0 0 60px; } .area-help { align-items:flex-start; flex-direction:column; } }
@media(max-width:700px) { .area-page .nav-links { height:auto; } .area-page .nav-links a { min-height:48px; padding:14px 25px; font-size:.82rem; } .area-page .navbar-logo { width:220px; margin-left:14px; } .area-content-heading { flex-direction:column; gap:10px; } .area-login-box { padding:25px 22px; } .area-content-layout,.area-login-layout { padding-left:22px; padding-right:22px; } }
@media(prefers-reduced-motion:reduce) { .area-page *, .area-page *::before, .area-page *::after { transition:none !important; scroll-behavior:auto !important; } }
