
    :root { color-scheme: light; font-family: Inter, "Segoe UI", Arial, sans-serif; color: #244b38; background: #f5f4ee; }
    * { box-sizing: border-box; }
    body { margin: 0; min-height: 100svh; display: flex; flex-direction: column; }
    header { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 26px max(6vw, 24px); border-bottom: 1px solid #d9ded4; }
    .brand { font-size: 25px; font-weight: 800; letter-spacing: -.08em; }
    .header-note { color: #647166; font-size: 13px; }
    main { width: min(1120px, 88%); margin: auto; padding: 80px 0; }
    .eyebrow { margin: 0 0 20px; color: #647166; font-size: 12px; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; }
    h1 { margin: 0; font-size: clamp(44px, 7vw, 80px); line-height: 1.04; font-weight: 600; letter-spacing: -.065em; }
    .intro { margin: 24px 0 44px; color: #647166; font-size: 18px; line-height: 1.6; }
    .downloads { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
    button { display: flex; flex-direction: column; align-items: stretch; min-height: 232px; padding: 28px; border: 1px solid #244b38; border-radius: 16px; background: #244b38; color: #fff; font: inherit; text-align: left; cursor: pointer; transition: background .15s ease, transform .15s ease; }
    button:hover { background: #315f48; transform: translateY(-3px); }
    button:active { transform: translateY(0); }
    button:focus-visible { outline: 3px solid #93652d; outline-offset: 5px; }
    .number { color: #d9e5d9; font-size: 13px; letter-spacing: .09em; }
    .button-bottom { display: flex; justify-content: space-between; align-items: center; gap: 12px; margin-top: auto; padding-top: 64px; }
    .button-label { font-size: clamp(18px, 2vw, 24px); font-weight: 600; letter-spacing: -.025em; }
    svg { width: 24px; height: 24px; flex-shrink: 0; }
    #status { min-height: 24px; margin: 22px 0 0; color: #647166; font-size: 14px; line-height: 1.6; }
    footer { margin: 0 max(6vw, 24px); padding: 24px 0; border-top: 1px solid #d9ded4; color: #647166; font-size: 12px; }
    @media (max-width: 720px) { main { padding: 54px 0; } .downloads { grid-template-columns: 1fr; gap: 12px; } button { min-height: 148px; padding: 24px; } .button-bottom { padding-top: 30px; } .button-label { font-size: 24px; } .intro { margin-bottom: 30px; } }
    @media (prefers-reduced-motion: reduce) { button { transition: none; } button:hover { transform: none; } }
  .logout { margin-top: 20px; } .logout button { display: inline-block; min-height: auto; padding: 10px 18px; } main p { overflow-wrap: anywhere; }
