:root{--navy:#0a2747;--blue:#0d5cab;--gold:#d7a62a;--bg:#f2f6fa;--text:#172b3f}*{box-sizing:border-box}body{margin:0;font-family:Arial,sans-serif;color:var(--text);background:var(--bg)}button,input{font:inherit}.center,.loginPage{min-height:100vh;display:grid;place-items:center;padding:24px;background:linear-gradient(135deg,#071d36,#0d5cab)}.center{color:white}.loginCard{width:min(460px,100%);background:white;border-radius:18px;padding:38px;box-shadow:0 24px 70px #00152d88;text-align:center;border-top:7px solid var(--gold)}.crest{margin:auto;width:64px;height:64px;border-radius:50%;display:grid;place-items:center;background:#f7e7aa;color:#8a6300;font-weight:700}.eyebrow{font-size:12px;letter-spacing:2px;color:var(--gold);font-weight:700}.loginCard h1{font-size:42px;margin:8px 0;color:var(--navy)}.tagline{line-height:1.5;color:#597086}.loginCard form{text-align:left;margin-top:28px}.loginCard label{display:block;font-weight:700;margin:16px 0}.loginCard input{display:block;width:100%;margin-top:8px;padding:14px;border:1px solid #c7d3df;border-radius:8px}.actions button,.loginCard button{width:100%;padding:14px;border:0;border-radius:8px;color:white;background:var(--blue);font-weight:700;cursor:pointer}.message{color:#b42318}.topbar{display:flex;justify-content:space-between;align-items:center;padding:18px clamp(20px,6vw,80px);background:var(--navy);color:white}.brand{font-size:25px;font-weight:700}.sub{margin-left:15px;color:#a9c6e2}.exit{background:transparent;color:white;border:1px solid #7892ac;padding:9px 14px;border-radius:7px}.hero{padding:42px clamp(20px,6vw,80px);background:linear-gradient(120deg,#0a2747,#0d5cab);color:white}.hero h1{font-size:clamp(30px,5vw,50px);margin:8px 0}.content{padding:28px clamp(20px,6vw,80px);max-width:1400px;margin:auto}.notice{display:flex;gap:12px;flex-wrap:wrap;background:#fff7dc;border-left:5px solid var(--gold);padding:18px;margin-bottom:24px}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:18px}.card{display:flex;gap:16px;align-items:center;background:white;padding:22px;border-radius:12px;box-shadow:0 5px 18px #173b5d18}.card strong{font-size:30px;color:var(--blue)}.card p{margin:4px 0}.icon{font-size:28px}.actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px}.actions button{background:var(--navy)}footer{text-align:center;padding:30px;color:#60758a}.spinner{width:42px;height:42px;border:4px solid #ffffff44;border-top-color:white;border-radius:50%;animation:s 1s linear infinite}@keyframes s{to{transform:rotate(1turn)}}.brandArea,.topActions,.welcome{display:flex;align-items:center;gap:12px}.topActions button{cursor:pointer}.personalize{background:transparent;color:#ffe59a;border:1px solid #e6bb49;padding:9px 14px;border-radius:7px}.documentsButton{background:#fff;color:var(--navy);border:1px solid white;padding:9px 14px;border-radius:7px;font-weight:700}.miniAvatar{width:42px;height:42px;border-radius:50%;object-fit:cover;border:2px solid var(--gold)}.heroAvatar{width:96px;height:96px;border-radius:16px;object-fit:cover;border:3px solid var(--gold);background:white}.displayName{font-size:22px;font-weight:700;margin:4px 0}.modalBackdrop{position:fixed;inset:0;background:#06182dcc;display:grid;place-items:center;padding:20px;z-index:1000}.profileModal{position:relative;width:min(520px,100%);max-height:92vh;overflow:auto;background:white;border-radius:18px;padding:30px;box-shadow:0 24px 70px #00152d88;border-top:7px solid var(--gold)}.profileModal h2{font-size:30px;color:var(--navy);margin:5px 0 8px}.profileModal label{display:block;font-weight:700;margin:18px 0}.profileModal input{display:block;width:100%;margin-top:8px;padding:13px;border:1px solid #c7d3df;border-radius:8px}.closeModal{position:absolute;right:15px;top:12px;border:0;background:transparent;font-size:30px;cursor:pointer;color:#52687d}.preview{text-align:center;margin:12px 0}.preview img{width:120px;height:120px;object-fit:cover;border-radius:16px;border:3px solid var(--gold)}.saveProfile{width:100%;padding:14px;border:0;border-radius:8px;background:var(--blue);color:white;font-weight:700;cursor:pointer}.saveProfile:disabled{opacity:.65}.profileMessage{text-align:center;font-weight:700;color:var(--blue)}.documentsModal{position:relative;width:min(760px,100%);max-height:92vh;overflow:auto;background:white;border-radius:18px;padding:30px;box-shadow:0 24px 70px #00152d88;border-top:7px solid var(--gold)}.documentsModal h2{font-size:30px;color:var(--navy);margin:5px 0 8px}.uploadDocument{display:block;width:100%;padding:14px;margin:22px 0 12px;border-radius:8px;background:var(--blue);color:white;text-align:center;font-weight:700;cursor:pointer}.uploadDocument input{display:none}.uploadDocument.disabled{opacity:.65;cursor:wait}.docMessage{text-align:center;font-weight:700;color:var(--blue);margin:14px 0}.documentList{display:grid;gap:10px;margin-top:18px}.documentRow{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px;border:1px solid #d8e1ea;border-radius:10px;background:#f8fafc}.documentRow strong{display:block;overflow-wrap:anywhere}.documentRow small{display:block;color:#65798c;margin-top:4px}.documentActions{display:flex;gap:8px;flex-shrink:0}.documentActions button{border:0;border-radius:7px;padding:9px 11px;background:var(--navy);color:white;cursor:pointer}.documentActions .deleteDocument{background:#a4261d}.privacyNote{margin-top:20px;padding:12px;background:#edf6ff;border-radius:8px;color:#31506d}@media(max-width:640px){.topbar,.welcome{align-items:flex-start}.topActions{flex-direction:column;gap:6px}.heroAvatar{width:72px;height:72px}.sub{display:block;margin:2px 0 0}.profileModal{padding:24px 20px}.documentsModal{padding:24px 18px}.documentRow{align-items:flex-start;flex-direction:column}.documentActions{width:100%}.documentActions button{flex:1 1}.documentsButton,.exit,.personalize{width:100%}}