/* Portraits stay in full colour, with rank and suit clear at both corners. */
.brand{padding:0;background:transparent;text-align:left;border-radius:8px}
.brand-pinup{display:block;width:60px;height:60px;object-fit:cover;border-radius:50%;border:1px solid #cda759;box-shadow:0 3px 14px #08040a66;flex:0 0 auto}
.card-portrait{inset:7% 12%;filter:none;border-color:#b99a5970;border-radius:2px;background-size:200% 200%;background-repeat:no-repeat}
.queen{background-image:url('/assets/queens.png')}
.king{background-image:url('/assets/kings.png')}
.card-portrait.court-S{background-position:left top}
.card-portrait.court-H{background-position:right top}
.card-portrait.court-D{background-position:left bottom}
.card-portrait.court-C{background-position:right bottom}

/* A game entrance: one invitation leads directly back to the saved table. */
.casino-entrance{max-width:1200px;min-height:100svh;display:flex;flex-direction:column;justify-content:center;padding:24px 26px max(22px,env(safe-area-inset-bottom));margin:auto}
.entrance-stage{position:relative;display:grid;grid-template-columns:minmax(0,1fr);align-items:center;isolation:isolate}
.entrance-showgirls{display:block;grid-area:1/1;width:100%;height:auto;min-width:0;object-fit:contain;border-radius:20px;box-shadow:0 20px 80px #09040d77}
.entrance-invitation{grid-area:1/1;z-index:1;justify-self:center;width:36%;display:flex;flex-direction:column;align-items:center;gap:28px;padding:20px 0}
.entrance-title{text-align:center;width:100%;color:#f4d795;text-shadow:0 2px 12px #130619}
.entrance-welcome{display:block;font:italic 22px CasinoSerif,Georgia,serif;letter-spacing:1px;margin-bottom:15px;color:#eddbbb}
.entrance-title h1{font:clamp(48px,6.7vw,84px)/.95 CasinoSerif,Georgia,serif;font-weight:normal;letter-spacing:-2px;outline-offset:8px}
.entrance-title h1>span{display:block;font:15px Arial,sans-serif;letter-spacing:7px;text-transform:uppercase;margin-top:23px;padding-left:7px;color:#eac48b}
.entrance-actions{display:flex;flex-direction:column;align-items:center;gap:13px;width:100%;text-align:center}
.entrance-greeting{font:16px/1.5 Georgia,serif;color:#f4e4c7;overflow-wrap:anywhere;text-shadow:0 1px 9px #100615}
.entrance-enter{min-height:56px;font-size:17px;justify-content:center;width:100%;max-width:292px;padding:15px 20px;gap:17px;box-shadow:0 7px 25px #09030f99,0 0 25px #dfb7771f}
.entrance-table{font-size:14px;line-height:1.5;color:#d7bfd1}
.entrance-footer{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:12px 26px;margin-top:23px;color:#bd9fc3;font-size:14px;text-align:center;line-height:1.5}
.entrance-footer button{display:flex;align-items:center;gap:8px;padding:10px 12px;background:transparent;color:#d9bb88;min-height:44px;font-size:14px}
.entrance-storage{font-size:14px;color:#ffd3c3;line-height:1.5;text-align:center;max-width:450px;margin:16px auto 0}
@media(max-width:850px){.entrance-invitation{gap:24px;width:37%}.entrance-title h1{font-size:clamp(43px,7vw,60px)}.entrance-welcome{font-size:18px}.entrance-title h1>span{font-size:14px;letter-spacing:5px;margin-top:17px}.entrance-actions{gap:9px}.entrance-enter{font-size:16px;padding:13px 12px}.entrance-greeting,.entrance-table{font-size:14px}}
@media(max-width:760px){
  .casino-entrance{padding:max(30px,env(safe-area-inset-top)) 14px max(20px,env(safe-area-inset-bottom));justify-content:center}
  .entrance-stage{grid-template-rows:auto auto auto;gap:0}
  .entrance-invitation{display:contents}
  .entrance-title{grid-area:1/1;width:100%;margin:0 0 23px}
  .entrance-welcome{font-size:18px;margin-bottom:10px}
  .entrance-title h1{font-size:clamp(46px,12vw,66px);line-height:1;letter-spacing:-1px}
  .entrance-title h1>span{font-size:14px;letter-spacing:7px;margin-top:14px}
  .entrance-showgirls{grid-area:2/1;border-radius:12px;box-shadow:0 12px 36px #08030e66}
  .entrance-actions{grid-area:3/1;align-self:start;width:100%;margin:24px 0 0;gap:11px}
  .entrance-enter{font-size:17px;max-width:320px;min-height:56px}
  .entrance-greeting{font-size:16px}.entrance-table{font-size:14px}
  .entrance-footer{margin-top:20px;gap:2px 16px}
}
@media(max-width:620px){.brand-pinup{width:46px;height:46px}}
@media(max-width:365px){.brand-pinup{width:41px;height:41px}}
