* { box-sizing:border-box; }
    body { margin:0; min-height:100vh; background:#f7f2ec; color:#30231c; font-family:Inter,system-ui,sans-serif; }
    .auth-shell { width:min(100%,568px); margin:clamp(24px,8vh,72px) auto; padding:0 24px 40px; }
    .auth-card { background:#fff; border:1px solid #ead9c8; border-radius:20px; padding:clamp(22px,5vw,30px); box-shadow:0 18px 50px rgba(74,47,30,.09); }
    .auth-card h1 { margin:0 0 8px; font-size:clamp(26px,5vw,34px); line-height:1.18; }
    .auth-card > p { margin:0 0 20px; color:#806a5b; line-height:1.6; }
    .field { display:grid; gap:7px; margin:18px 0; }
    .field label { font-weight:700; }
    .field input { width:100%; padding:13px 14px; border:1px solid #d8c3b2; border-radius:10px; font:inherit; font-size:16px; color:#30231c; background:#fff; }
    .field input:focus { outline:3px solid rgba(148,103,68,.18); border-color:#8c6045; }
    .field-hint { color:#806a5b; font-size:13px; }
    .actions { display:flex; gap:10px; flex-wrap:wrap; }
    button { min-height:44px; border:0; border-radius:10px; padding:12px 16px; font:inherit; font-weight:700; cursor:pointer; background:#5b3525; color:#fff; }
    button.secondary { background:#e9f4e8; color:#2f6334; }
    button:disabled { opacity:.5; cursor:not-allowed; }
    .status { min-height:24px; margin-top:16px; color:#725344; line-height:1.5; }
    .status[data-tone="error"] { color:#a12626; }
    .status[data-tone="success"] { color:#28713a; }
    .account { padding:14px; background:#f7f2ec; border-radius:12px; margin-bottom:20px; line-height:1.5; }
    .account strong { display:block; margin-bottom:3px; }
    .account-detail { color:#806a5b; font-size:14px; }
    .auth-form[hidden], .signed-in-actions[hidden], #alternative-actions[hidden] { display:none; }
    .email-summary { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:12px 14px; border-radius:10px; background:#f7f2ec; }
    .text-button { min-height:auto; padding:4px; background:transparent; color:#5b3525; text-decoration:underline; }
    .signed-in-actions { display:flex; gap:10px; flex-wrap:wrap; }
    .signed-in-actions a { display:inline-flex; align-items:center; min-height:44px; padding:11px 16px; border-radius:10px; background:#5b3525; color:#fff; text-decoration:none; font-weight:700; }
    .history { margin-top:22px; padding-top:18px; border-top:1px solid #ead9c8; }
    .history h2 { font-size:18px; margin:0 0 10px; }
    .history-list { display:grid; gap:8px; margin:0; padding:0; list-style:none; }
    .history-list li { display:flex; justify-content:space-between; gap:12px; padding:10px 12px; background:#f7f2ec; border-radius:10px; }
    .history-empty { color:#806a5b; }
    .back { display:inline-flex; min-height:44px; align-items:center; margin-bottom:10px; color:#5b3525; }
    @media (max-width:520px) {
      .auth-shell { padding-inline:16px; }
      .auth-card { border-radius:16px; }
      .actions > button { flex:1 1 100%; }
      .history-list li { align-items:flex-start; flex-direction:column; }
    }
