/* Shared entrance, with equal space for each way of playing. */
.portal-view{background:radial-gradient(ellipse at 50% 0,#d5ab6a12,transparent 65%),var(--bg)}
.portal-header{max-width:1440px;margin:auto;min-height:80px;padding:24px 48px;display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid #d5ab6a25}
.portal-mark{display:flex;align-items:center;gap:12px;color:var(--gold-bright);font:12px var(--serif);letter-spacing:2px}
.portal-mark .icon{width:26px;height:26px}
.portal-header>.eyebrow{font-size:8px;color:var(--dim);letter-spacing:1.6px}
.portal-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px}
.portal-settings{display:flex;align-items:center;gap:9px;color:var(--gold-bright);border:1px solid #d5ab6a40;background:#1b242777;padding:9px 14px;font-size:11px}
.portal-settings:hover{border-color:var(--gold);background:var(--panel-light)}
.portal-settings>span{font-size:18px}
.portal-settings[data-action="sound"]>span{font-size:11px}
.portal-main{max-width:1440px;margin:auto;padding:42px 48px 100px}
.portal-intro{text-align:center;margin-bottom:36px}
.portal-intro>.eyebrow{font-size:9px;letter-spacing:3px}
.portal-intro h1{font-size:clamp(42px,4.3vw,66px);line-height:1.02;letter-spacing:1px;margin:16px 0 20px}
.portal-intro h1 em{font-style:normal;color:var(--gold-bright)}
.portal-intro p{font:17px/1.6 var(--serif);color:var(--muted)}
.portal-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.portal-option{position:relative;isolation:isolate;overflow:hidden;min-height:420px;border:1px solid #d5ab6a55;background:var(--panel)}
.portal-art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 40%;z-index:-2;transition:transform .5s ease}
.portal-option:hover .portal-art{transform:scale(1.025)}
.portal-option-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,#0d161bf7 0%,#0d161be8 35%,#0d161b75 75%,#0d161b44)}
.portal-duel{border-color:#b6b8d655}
.portal-duel .portal-option-shade{background:linear-gradient(0deg,#17141df7 0%,#17141de8 35%,#17141d75 75%,#17141d44)}
.portal-option-content{height:100%;padding:32px;display:flex;flex-direction:column;align-items:flex-start;position:relative}
/* Preserve the original layout space after removing the decorative icon. */
.portal-option-content::before{content:"";display:block;width:48px;height:48px;margin-bottom:38px}
.portal-option-content>.eyebrow{font-size:8px;letter-spacing:2px}
.portal-option h2{font-size:clamp(29px,2.8vw,42px);margin:10px 0 14px;color:var(--paper);line-height:1.15}
.portal-option p{font-size:13px;line-height:1.8;max-width:400px;color:#d0d2c9;min-height:48px}
.portal-tags{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 28px}
.portal-tags span{font-size:10px;letter-spacing:.2px;color:var(--gold-bright);border:1px solid #d5ab6a40;background:#10171b77;padding:5px 9px}
.portal-option .primary{margin-top:auto;width:100%;justify-content:space-between;min-height:50px;font-size:13px}
.portal-option .primary .icon{margin:0}
.portal-duel .primary{background:#b6b1ca;border-color:#d7d0e9;color:#211d2a}
.portal-duel .primary:hover{background:#d7d0e9}
.portal-duel .portal-tags span,.portal-duel .eyebrow{color:#d7d0e9;border-color:#b6b1ca55}
.portal-status{display:block;min-height:18px;margin-top:14px;font-size:10px;color:#b2b8af;line-height:1.7}
.portal-footer{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-top:24px;padding-top:18px;border-top:1px solid var(--line);font-size:10px;color:var(--dim)}
.portal-footer>span:last-child{display:flex;align-items:center;gap:7px}
.portal-footer .icon{width:14px;height:14px}
.portal-view .toast{left:50%}
.hs-header-tools{display:flex;align-items:center;gap:20px}
@media(max-width:900px){
  .portal-header{padding:20px 28px;min-height:70px}
  .portal-main{padding:32px 28px 100px}
  .portal-option-content{padding:26px}
  .sidebar:not([role=dialog]){flex-wrap:wrap}
  .sidebar:not([role=dialog]) nav{flex-wrap:wrap}
}
@media(max-width:600px){
  .portal-header{padding:20px;min-height:65px;flex-wrap:wrap;gap:16px}
  .portal-header>.eyebrow{display:none}
  .portal-mark{font-size:10px;letter-spacing:1.5px}
  .portal-main{padding:30px 18px 100px}
  .portal-intro{margin-bottom:26px}
  .portal-intro h1{font-size:43px}
  .portal-intro p{font-size:15px;max-width:300px;margin:auto}
  .portal-options{grid-template-columns:1fr;gap:18px}
  .portal-option{min-height:380px}
  .portal-option-content{padding:24px}
  .portal-option-content::before{margin-bottom:28px}
  .portal-option h2{font-size:32px}
  .portal-option p{font-size:12px}
  .portal-footer{align-items:flex-start;flex-direction:column}
  .hs-header-tools{gap:10px}
}
@media(prefers-reduced-motion:reduce){.portal-art{transition:none}}
.portal-version{display:flex;align-items:center;gap:14px;margin-left:auto;border:1px solid #d5ab6a40;border-radius:5px;background:#d5ab6a0a;color:var(--gold-bright);padding:10px 14px;font-size:11px;cursor:pointer}
.portal-version>span:last-child{display:flex;align-items:center;gap:7px;color:var(--dim)}
.portal-version:hover{border-color:var(--gold);background:var(--panel-light)}
.portal-version:focus-visible,.release-entry>summary:focus-visible{outline:2px solid var(--gold-bright);outline-offset:4px}
.release-modal{width:min(820px,100%);color:var(--text)}
.release-modal h2{margin-bottom:12px}
.release-intro{color:var(--dim);font-size:13px;line-height:1.7;margin-bottom:24px}
.release-intro b{color:var(--gold-bright)}
.release-history{display:grid;gap:14px}
.release-entry{border:1px solid var(--line);border-radius:6px;background:#d5ab6a05;overflow:hidden}
.release-entry>summary{display:grid;grid-template-columns:1fr auto 16px;align-items:center;gap:16px;padding:18px 20px;list-style:none;cursor:pointer;color:var(--gold-bright)}
.release-entry>summary::-webkit-details-marker{display:none}
.release-entry>summary::after{content:'+';font-size:21px;text-align:center}
.release-entry[open]>summary::after{content:'−'}
.release-entry>summary>span{display:flex;align-items:center;flex-wrap:wrap;gap:12px}
.release-entry>summary b{font:20px var(--serif)}
.release-entry>summary small{border:1px solid #d5ab6a55;border-radius:20px;padding:3px 8px;font-size:10px}
.release-entry time{font-size:11px;color:var(--dim);white-space:nowrap}
.release-content{padding:4px 20px 20px;border-top:1px solid var(--line)}
.release-content h3{font:15px var(--serif);color:var(--gold-bright);margin:20px 0 10px}
.release-content ul{padding-left:20px;margin:0;list-style:disc}
.release-content li{font-size:13px;line-height:1.65;color:var(--dim);margin:7px 0}
@media(max-width:680px){.portal-version{margin-left:0}.release-entry>summary{gap:10px;padding:15px 12px}.release-entry>summary b{font-size:17px}.release-content{padding:2px 14px 16px}.release-content li{font-size:12px}}
