:root{
  --royal-1:#1e3c72;
  --royal-2:#2a5298;
  --card-bg:rgba(255,255,255,0.98);
  --card-text:#0b2545;
}

*{box-sizing:border-box}
html,body{height:100%}

body{
  margin:0;
  font-family:Inter,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  background:linear-gradient(135deg,var(--royal-1) 0%,var(--royal-2) 100%);
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:flex-start;
  min-height:100vh;
  padding:60px 20px 40px;
  color:#fff;
}

.top-logo{
  display:block;
  max-width:700px;
  width:90%;
  margin:0 0 40px 0;
  object-fit:contain;
}

.app{
  background:var(--card-bg);
  border-radius:16px;
  padding:50px 40px; 
  max-width:800px;   
  width:95%;
  box-shadow:0 8px 30px rgba(7,17,34,0.12);
  text-align:center;
  color:var(--card-text);
}

/* header layout */
.header{padding-bottom:8px}
.header h1{margin:0;font-size:20px}

.uploader{
  margin:20px 0;border:2px dashed rgba(42,82,152,0.35);padding:20px;border-radius:8px;cursor:pointer;
  background:linear-gradient(180deg,rgba(42,82,152,0.02),rgba(42,82,152,0.01));
}
.uploader:focus{outline:none}
.uploader.uploaded{border-style:solid;background:linear-gradient(90deg,#f8fbff,#fff)}
.uploader input[type="file"]{display:none}

.placeholder p{margin:0;font-weight:600;color:rgba(11,37,69,0.9)}
.placeholder small{display:block;margin-top:6px;color:rgba(11,37,69,0.65)}

.btn{display:inline-block;padding:12px 20px;border-radius:8px;border:0;cursor:pointer;font-weight:600;margin-top:10px;text-decoration:none}
.btn.primary{background:linear-gradient(90deg,#3b63e6,#2b6be6);color:#fff}
.btn.download{background:linear-gradient(90deg,#2b6be6,#175bd6);color:#fff}
.logout-btn{background:#dc3545;color:#fff;font-size:14px;padding:8px 16px;position:fixed;bottom:20px;right:20px;z-index:100;margin:0}

@media(max-width:768px){.app{padding:36px 20px}.top-logo{max-width:320px}}

@media(max-width:420px){.app{padding:24px}.top-logo{width:88px}}
