/* V6.6 - tải đề PDF, tích điểm và đổi quà */
.v66-nav-badge{min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:#d8b354;color:#173b2e;display:inline-grid;place-items:center;font-size:9px;font-weight:800;margin-left:auto}
.v66-dashboard-alert{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:16px 0;padding:16px 18px;border:1px solid #e6cf8d;background:#fff8e7;border-radius:16px;box-shadow:0 8px 22px rgba(80,59,12,.06)}
.v66-dashboard-alert h3{margin:0 0 4px;font-family:'Playfair Display',serif;color:var(--forest-900)}.v66-dashboard-alert p{margin:0;color:#6d5c2d;font-size:11px;line-height:1.55}
.v66-reward-hero{display:grid;grid-template-columns:1.2fr repeat(3,minmax(130px,.55fr));gap:12px;margin-bottom:18px}
.v66-reward-hero>div{background:#fff;border:1px solid var(--line);border-radius:17px;padding:17px;min-width:0}.v66-reward-hero .main-card{background:linear-gradient(120deg,#073a2b,#167151);color:#fff}.v66-reward-hero h2{font-family:'Playfair Display',serif;margin:0 0 5px}.v66-reward-hero p{margin:0;font-size:10px;line-height:1.55;color:inherit;opacity:.82}.v66-stat strong{display:block;font-family:'Playfair Display',serif;font-size:27px;color:var(--forest-900)}.v66-stat span{font-size:9px;color:var(--muted)}
.v66-tabs{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:15px}.v66-tabs button{border:1px solid var(--line);background:#fff;color:var(--forest-800);padding:9px 13px;border-radius:10px;font-weight:700;font-size:10px;cursor:pointer}.v66-tabs button.active{background:var(--forest-700);color:#fff;border-color:var(--forest-700)}
.v66-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.v66-panel{background:#fff;border:1px solid var(--line);border-radius:17px;overflow:hidden;min-width:0}.v66-panel.full{grid-column:1/-1}.v66-panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 17px;border-bottom:1px solid var(--line);background:#fbfcfb}.v66-panel-head h3{font-family:'Playfair Display',serif;margin:0;color:var(--forest-900)}.v66-panel-body{padding:16px}
.v66-claim-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.v66-claim-form .full{grid-column:1/-1}.v66-rule-box{grid-column:1/-1;padding:12px 14px;border-radius:13px;background:#edf7f2;border:1px solid #cfe5d9;font-size:10px;line-height:1.65;color:#285a47}.v66-rule-box b{color:#0d513a}
.v66-list{display:grid;gap:10px}.v66-row{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(100px,.55fr) auto;gap:12px;align-items:center;padding:12px;border:1px solid var(--line);border-radius:13px;background:#fcfdfc}.v66-row h4{margin:0 0 3px;font-size:12px;color:var(--forest-900)}.v66-row p{margin:0;font-size:9px;color:var(--muted);line-height:1.45;overflow-wrap:anywhere}.v66-row-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.v66-points{font-family:'Playfair Display',serif;font-size:18px;font-weight:700;color:#0f6549;white-space:nowrap}.v66-points.negative{color:#b33b44}
.v66-gift-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.v66-gift{border:1px solid var(--line);background:#fff;border-radius:17px;padding:16px;display:flex;flex-direction:column;min-width:0}.v66-gift-icon{width:46px;height:46px;border-radius:14px;background:#fff1ce;color:#8b6207;display:grid;place-items:center;font-size:22px;margin-bottom:12px}.v66-gift h3{font-family:'Playfair Display',serif;font-size:17px;margin:0 0 7px;color:var(--forest-900);overflow-wrap:anywhere}.v66-gift p{font-size:10px;color:var(--muted);line-height:1.55;margin:0 0 12px;flex:1}.v66-gift-cost{display:flex;align-items:end;justify-content:space-between;gap:10px;margin-bottom:12px}.v66-gift-cost strong{font-size:25px;color:#0f6549}.v66-gift-cost span{font-size:9px;color:var(--muted)}
.v66-proof-thumb{width:54px;height:54px;border-radius:10px;object-fit:cover;border:1px solid var(--line);background:#eef3ef;cursor:pointer}.v66-proof-preview{max-width:min(90vw,760px);max-height:72vh;display:block;margin:auto;border-radius:12px}
.v66-status-pending{color:#956a09}.v66-status-approved,.v66-status-fulfilled{color:#126044}.v66-status-rejected,.v66-status-cancelled{color:#b33b44}
.v66-download-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:9px}.v66-download-actions .btn{min-width:0}
.v66-result-download{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px;padding:12px;border:1px solid #cfe3d8;background:#f1f8f4;border-radius:12px}.v66-result-download span{font-size:10px;color:#315c4c}
.v66-notice-dot{width:9px;height:9px;border-radius:50%;background:#d3555b;display:inline-block;margin-right:5px;box-shadow:0 0 0 4px rgba(211,85,91,.12)}
.v66-empty{padding:28px;text-align:center;color:var(--muted);font-size:11px}
@media(max-width:1050px){.v66-reward-hero{grid-template-columns:repeat(3,1fr)}.v66-reward-hero .main-card{grid-column:1/-1}.v66-gift-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.v66-reward-hero{grid-template-columns:1fr 1fr}.v66-reward-hero .main-card{grid-column:1/-1}.v66-grid{grid-template-columns:1fr}.v66-panel.full{grid-column:auto}.v66-claim-form{grid-template-columns:1fr}.v66-claim-form .full,.v66-rule-box{grid-column:auto}.v66-row{grid-template-columns:1fr}.v66-row-actions{justify-content:flex-start}.v66-gift-grid{grid-template-columns:1fr}.v66-dashboard-alert{align-items:flex-start;flex-direction:column}.v66-download-actions{grid-template-columns:1fr}}

/* V6.6.1 Safari submit stability */
.v661-safari-note{margin:0 0 16px!important;text-align:left;line-height:1.55}


/* V6.6.2 — Trang đăng nhập di động có đầy đủ phần giới thiệu thương hiệu. */
.v662-safari-focus-note{margin-top:10px;text-align:left}

@media(max-width:600px){
  .login-page{
    display:flex!important;
    flex-direction:column;
    min-height:100vh;
    min-height:100svh;
    padding:0!important;
    overflow-x:hidden;
    background:var(--ivory)!important;
  }
  .login-brand{
    display:flex!important;
    flex:0 0 auto;
    min-height:0!important;
    padding:max(22px,env(safe-area-inset-top)) 22px 24px!important;
    gap:18px;
    justify-content:flex-start;
    background:radial-gradient(circle at 18% 8%,#1a6046,transparent 34%),linear-gradient(135deg,var(--forest-1000),var(--forest-800));
  }
  .login-brand:after{
    width:330px;
    height:330px;
    right:-175px;
    bottom:-205px;
  }
  .login-brand img{
    width:154px;
    max-height:76px;
    object-fit:contain;
    object-position:left center;
  }
  .login-brand h1{
    margin:0 0 9px;
    max-width:100%;
    font-size:30px;
    line-height:1.17;
    letter-spacing:-.35px;
  }
  .login-brand p{
    max-width:100%;
    margin:0;
    font-size:11px;
    line-height:1.65;
    color:#cfddd7;
  }
  .login-points{
    gap:7px;
    position:relative;
    z-index:1;
  }
  .login-points span{
    padding:7px 9px;
    font-size:8px;
    white-space:nowrap;
  }
  .login-side{
    display:block!important;
    flex:1 0 auto;
    min-height:0!important;
    padding:16px 14px max(24px,env(safe-area-inset-bottom))!important;
    background:var(--ivory);
  }
  .login-card{
    width:100%;
    max-width:520px;
    margin:0 auto;
    padding:22px;
    border-radius:22px;
    box-shadow:0 16px 45px rgba(3,24,18,.15);
  }
  .login-card h2{font-size:25px;line-height:1.18}
  .login-card>p{font-size:11px;margin-bottom:15px}
  .login-help{font-size:10px;line-height:1.55}
}

@media(max-width:380px){
  .login-brand{padding-left:18px!important;padding-right:18px!important}
  .login-brand img{width:138px;max-height:68px}
  .login-brand h1{font-size:27px}
  .login-points span{font-size:7px;padding:6px 7px}
  .login-side{padding-left:10px!important;padding-right:10px!important}
  .login-card{padding:19px}
}
