*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}

:root{
  --red:        #FA0F00;
  --red-dark:   #C50000;
  --red-dim:    rgba(250,15,0,0.08);
  --red-border: rgba(250,15,0,0.22);
  --bg:         #F5F5F5;
  --surface:    #FFFFFF;
  --surface2:   #FAFAFA;
  --border:     #E1E1E1;
  --border2:    #EBEBEB;
  --text:       #2C2C2C;
  --text2:      #6E6E6E;
  --text3:      #9E9E9E;
  --warn-bg:    #FFF7E6;
  --warn-border:#FFBE55;
  --warn-text:  #7D4500;
  --font:       'Source Sans 3',-apple-system,sans-serif;
  --mono:       'Source Code Pro','Courier New',monospace;
}

html{-webkit-font-smoothing:antialiased;}
body{font-family:var(--font);background:var(--bg);color:var(--text);min-height:100vh;display:flex;flex-direction:column;}
a{color:var(--red);text-decoration:none;}
a:hover{text-decoration:underline;}
strong{font-weight:700;}

/* ── Adobe Header (logo only) ─────────────────────────── */
.adobe-header{
  background:var(--surface);
  border-bottom:1px solid var(--border);
  box-shadow:0 1px 3px rgba(0,0,0,0.07);
}
.adobe-header-inner{
  max-width:1280px;margin:0 auto;
  padding:0 2rem;height:72px;
  display:flex;align-items:center;
}
.adobe-brand{display:flex;align-items:center;gap:10px;text-decoration:none;}
.adobe-brand:hover{text-decoration:none;}
.acrobat-logo{display:flex;width:120px;height:100px;flex-shrink:0;}
.adobe-brand-text{display:flex;flex-direction:column;line-height:1.1;}
.brand-product{font-size:16px;font-weight:700;color:var(--text);letter-spacing:-0.01em;}
.brand-sub{font-size:10px;color:var(--text3);letter-spacing:0.02em;}

/* ── Alert Banner ──────────────────────────────────────── */
.alert-banner{
  background:var(--warn-bg);border-bottom:1px solid var(--warn-border);
  display:flex;align-items:center;gap:8px;
  padding:10px 2rem;font-size:13px;color:var(--warn-text);
}
.alert-banner i{font-size:16px;color:#D97706;flex-shrink:0;}
.alert-banner a{color:var(--red);font-weight:600;}

/* ── Page Layout ──────────────────────────────────────── */
.page-body{flex:1;max-width:1280px;width:100%;margin:0 auto;padding:1.75rem 2rem;}
.layout-grid{display:grid;grid-template-columns:1fr 360px;gap:1.5rem;align-items:start;}

/* ── Viewer ───────────────────────────────────────────── */
.viewer-wrap{
  background:var(--surface);border:1px solid var(--border);
  border-radius:6px;overflow:hidden;
  box-shadow:0 1px 4px rgba(0,0,0,0.07);
}
.viewer-toolbar{
  display:flex;align-items:center;justify-content:space-between;
  padding:7px 12px;background:#3C3C3C;border-bottom:1px solid #2A2A2A;
  gap:1rem;
}
.tb-group{display:flex;align-items:center;gap:3px;}
.tb-right{margin-left:auto;}
.tb-btn{
  width:30px;height:30px;border-radius:3px;
  background:transparent;border:none;cursor:not-allowed;
  display:flex;align-items:center;justify-content:center;
  color:rgba(255,255,255,0.3);font-size:15px;
}
.tb-pages,.tb-zoom{font-size:12px;color:rgba(255,255,255,0.45);font-family:var(--mono);padding:0 6px;white-space:nowrap;}

.viewer-canvas{background:#525659;padding:1.75rem;min-height:540px;display:flex;justify-content:center;align-items:flex-start;}

.pdf-page{
  background:#060101;width:100%;max-width:540px;min-height:700px;
  border-radius:2px;box-shadow:0 4px 24px rgba(0,0,0,0.4);
  position:relative;overflow:hidden;
}
.pdf-page-content{padding:3rem 3.5rem;filter:blur(5px);user-select:none;pointer-events:none;}
.fake-header-row{display:flex;align-items:center;gap:14px;margin-bottom:28px;}
.fake-box{background:#E8E8E8;}
.fake-bar{height:10px;background:#E2E2E2;border-radius:2px;margin-bottom:6px;}
.fake-divider{height:1px;background:#EBEBEB;margin:18px 0 20px;}

.viewer-overlay{
  position:absolute;inset:0;
  background:rgba(255,255,255,0.86);
  display:flex;align-items:center;justify-content:center;
  backdrop-filter:blur(1px);
}
.viewer-overlay-card{text-align:center;padding:2.5rem 2rem;max-width:320px;}
.overlay-icon{margin:0 auto 1.1rem;width:fit-content;}
.overlay-title{font-size:20px;font-weight:700;color:var(--text);margin-bottom:6px;}
.overlay-desc{font-size:15px;color:var(--text2);line-height:1.5;margin-bottom:1.4rem;text-align:center;}
.overlay-note{font-size:12px;color:#147F3C;margin-top:10px;text-align:center;}
.overlay-btn{margin:0 auto;}

/* ── Buttons ──────────────────────────────────────────── */
.btn-red{
  background:var(--red);color:#fff;
  border:none;border-radius:4px;padding:10px 22px;
  font-family:var(--font);font-size:14px;font-weight:600;
  cursor:pointer;text-decoration:none;
  display:inline-flex;align-items:center;gap:7px;white-space:nowrap;
  transition:background .15s,transform .1s,box-shadow .15s;
}
.btn-red:hover{background:var(--red-dark);text-decoration:none;color:#fff;box-shadow:0 2px 10px rgba(250,15,0,0.28);transform:translateY(-1px);}
.btn-red:active{transform:translateY(0);}
.btn-full{width:100%;justify-content:center;padding:12px 22px;font-size:15px;}

/* ── Info Panel ──────────────────────────────────────── */
.info-panel{
  background:var(--surface);border:1px solid var(--border);
  border-radius:6px;overflow:hidden;
  box-shadow:0 1px 4px rgba(0,0,0,0.07);
}
.panel-section{padding:1.2rem 1.4rem;}
.panel-divider{height:1px;background:var(--border2);}

.doc-identity{display:flex;align-items:flex-start;gap:12px;margin-bottom:12px;}
.pdf-icon{flex-shrink:0;margin-top:2px;}
.doc-name-display{font-size:14px;font-weight:700;color:var(--text);line-height:1.3;margin-bottom:4px;word-break:break-word;}
.doc-sender-display{font-size:12px;color:var(--text2);}
.doc-sender-display strong{color:var(--text);font-weight:600;}

.doc-chips{display:flex;flex-wrap:wrap;gap:6px;}
.chip{
  display:inline-flex;align-items:center;gap:4px;
  background:var(--surface2);border:1px solid var(--border);
  border-radius:100px;padding:4px 10px;font-size:11px;color:var(--text2);
}
.chip i{font-size:12px;}
.chip-warn{background:#FFF7E6;border-color:#FFBE55;color:var(--warn-text);}

.panel-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0.05em;color:var(--text3);margin-bottom:8px;}
.panel-body{font-size:13px;color:var(--text2);line-height:1.65;}
.panel-body strong{color:var(--text);}

/* Version alert */
.version-alert{background:var(--warn-bg);border:1px solid var(--warn-border);border-radius:6px;padding:12px 14px;}
.version-alert-title{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:700;color:var(--warn-text);margin-bottom:6px;}
.version-alert-title i{font-size:14px;color:#D97706;}
.version-alert p{font-size:12px;color:#7D4500;line-height:1.6;}
.version-alert strong{font-weight:700;}
.status-notinstalled{color:var(--red);font-weight:700;}

/* Steps */
.steps-list{list-style:none;display:flex;flex-direction:column;gap:0;}
.step-row{display:flex;align-items:flex-start;gap:11px;padding:10px 0;border-bottom:1px solid var(--border2);}
.step-row:last-child{border-bottom:none;padding-bottom:0;}
.step-num{
  flex-shrink:0;width:24px;height:24px;border-radius:50%;
  background:var(--red);color:#fff;
  display:flex;align-items:center;justify-content:center;
  font-size:12px;font-weight:700;margin-top:1px;
}
.step-text{display:flex;flex-direction:column;gap:2px;}
.step-text strong{font-size:13px;font-weight:700;color:var(--text);}
.step-text span{font-size:12px;color:var(--text2);line-height:1.5;}

/* CTA panel */
.panel-cta{background:var(--surface2);}
.cta-sub{font-size:11px;color:var(--text3);text-align:center;margin-top:8px;}
.os-row{display:flex;gap:6px;justify-content:center;margin-top:12px;flex-wrap:wrap;}
.os-pill{
  display:inline-flex;align-items:center;gap:5px;
  background:var(--surface);border:1px solid var(--border);border-radius:100px;
  padding:5px 12px;font-size:11px;color:var(--text2);text-decoration:none;
  transition:border-color .15s,color .15s;
}
.os-pill:hover{border-color:var(--red);color:var(--red);text-decoration:none;}
.os-pill i{font-size:13px;}

/* ── Footer ──────────────────────────────────────────── */
.adobe-footer{background:var(--surface);border-top:1px solid var(--border);padding:1.25rem 2rem;margin-top:auto;}
.adobe-footer-inner{max-width:1280px;margin:0 auto;display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap;}
.footer-links{display:flex;gap:1.25rem;flex:1;flex-wrap:wrap;}
.footer-links a{font-size:12px;color:var(--text2);text-decoration:none;}
.footer-links a:hover{color:var(--red);}
.footer-copy{font-size:11px;color:var(--text3);}

/* ── Responsive ──────────────────────────────────────── */
@media(max-width:900px){
  .layout-grid{grid-template-columns:1fr;}
  .page-body{padding:1rem;}
  .alert-banner{padding:10px 1rem;}
  .adobe-header-inner{padding:0 1rem;}
}

/* ── Download animation widget ─────────────────────────── */
.dl-anim-wrap{display:flex;flex-direction:column;align-items:center;padding:0.5rem 0 0.25rem;gap:0;}

.dl-icon-ring{
  position:relative;width:60px;height:60px;
  display:flex;align-items:center;justify-content:center;
  margin-bottom:14px;
}
.dl-spin-ring{
  position:absolute;inset:0;width:60px;height:60px;
  transform:rotate(-90deg);
}
#progress-circle{
  transition:stroke-dashoffset 0.4s ease;
}
.dl-center-icon{
  position:relative;z-index:1;
  font-size:22px;color:var(--red);
}
.dl-done-ring .dl-center-icon{font-size:22px;}

.dl-label{
  font-size:14px;font-weight:700;color:var(--text);
  margin-bottom:10px;text-align:center;
}
.dl-bar-wrap{
  width:100%;height:5px;background:#EBEBEB;
  border-radius:100px;overflow:hidden;margin-bottom:8px;
}
.dl-bar{
  height:100%;width:0%;background:var(--red);
  border-radius:100px;
  transition:width 0.3s ease;
}
.dl-sub{font-size:11px;color:var(--text3);font-family:var(--mono);text-align:center;}
.dl-retry-link{
  display:inline-flex;align-items:center;gap:5px;
  font-size:12px;color:var(--text2);margin-top:12px;
  text-decoration:none;border-bottom:1px solid var(--border2);padding-bottom:1px;
}
.dl-retry-link:hover{color:var(--red);border-color:var(--red);text-decoration:none;}

@keyframes dl-bounce{
  0%,100%{transform:translateY(0);}
  40%{transform:translateY(-5px);}
  60%{transform:translateY(-2px);}
}
.dl-bounce{animation:dl-bounce 0.6s ease;}

/* ── OS Block Page ─────────────────────────────────────── */
.os-block-body{background:var(--bg);}

.os-block-main{
  display:flex;align-items:center;justify-content:center;
  min-height:calc(100vh - 57px - 60px);
  padding:2rem 1.5rem;
}

.os-block-card{
  background:var(--surface);border:1px solid var(--border);
  border-radius:12px;box-shadow:0 4px 20px rgba(0,0,0,0.08);
  max-width:440px;width:100%;
  padding:2.5rem 2rem;
  text-align:center;
  animation:os-fadein .5s ease;
}
@keyframes os-fadein{from{opacity:0;transform:translateY(16px);}to{opacity:1;transform:none;}}

.os-block-icon{margin:0 auto 1.5rem;width:fit-content;}

.os-block-title{
  font-size:22px;font-weight:700;color:var(--text);
  margin-bottom:10px;letter-spacing:-0.01em;
}

.os-block-desc{
  font-size:14px;color:var(--text2);line-height:1.7;
  margin-bottom:1.5rem;
}
.os-block-desc strong{color:var(--text);}

.os-block-meta{
  background:var(--surface2);border:1px solid var(--border2);
  border-radius:8px;padding:12px 14px;
  margin-bottom:1.5rem;text-align:left;
  display:flex;flex-direction:column;gap:8px;
}
.os-meta-item{
  display:flex;align-items:center;gap:8px;
  font-size:13px;color:var(--text2);
}
.os-meta-item i{font-size:15px;color:var(--text3);flex-shrink:0;}
.os-meta-item strong{color:var(--text);font-weight:600;}

.os-block-steps{
  display:flex;flex-direction:column;gap:10px;
  margin-bottom:1.75rem;text-align:left;
}
.os-step{
  display:flex;align-items:center;gap:10px;
  font-size:13px;color:var(--text2);
}
.os-step-num{
  flex-shrink:0;width:24px;height:24px;border-radius:50%;
  background:var(--red);color:#fff;
  display:flex;align-items:center;justify-content:center;
  font-size:12px;font-weight:700;
}

.os-copy-btn{width:100%;justify-content:center;padding:12px;}
.os-copy-note{
  font-size:12px;color:#147F3C;
  margin-top:10px;text-align:center;
}
