.d4-portal{--d4-bg:#11151a;--d4-card:#1a2027;--d4-line:#38414b;--d4-gold:#e3b96c;--d4-text:#f2eee7;--d4-muted:#b6b7b8;background:var(--d4-bg);color:var(--d4-text);padding:clamp(18px,4vw,48px);border-radius:18px;font-family:inherit;line-height:1.6;max-width:1180px;margin:2rem auto}.d4-portal *{box-sizing:border-box}.d4-portal h1,.d4-portal h2,.d4-portal p{color:inherit}.d4-hero{padding:clamp(24px,5vw,56px);background:radial-gradient(circle at 85% 5%,#4f3424,transparent 42%),linear-gradient(135deg,#24232a,#15191d);border:1px solid var(--d4-line);border-radius:14px}.d4-hero h1{font-size:clamp(28px,5vw,52px);margin:.35em 0}.d4-kicker,.d4-season{color:var(--d4-gold);font-weight:700;letter-spacing:.08em}.d4-season{display:inline-block;margin-top:1rem;border:1px solid #90693d;padding:.35rem .8rem;border-radius:99px}.d4-finder{display:grid;grid-template-columns:auto minmax(150px,1fr) auto minmax(150px,1fr) auto;gap:12px;align-items:center;background:var(--d4-card);border:1px solid var(--d4-line);padding:20px;margin:20px 0;border-radius:14px}.d4-finder label{font-weight:700}.d4-finder select,.d4-finder button{font:inherit;min-height:44px;border-radius:8px}.d4-finder select{width:100%;background:#101419;color:var(--d4-text);border:1px solid #66717d;padding:8px}.d4-finder button{background:var(--d4-gold);color:#221a10;border:0;padding:8px 20px;font-weight:700;cursor:pointer}.d4-finder button:disabled{opacity:.5;cursor:default}.d4-message{min-height:1.5em;color:var(--d4-gold)}.d4-detail{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.d4-detail-head{grid-column:1/-1;padding:20px 4px}.d4-detail-head h2{font-size:clamp(26px,4vw,42px);margin:.2em 0}.d4-card{background:var(--d4-card);border:1px solid var(--d4-line);border-radius:12px;padding:20px;min-width:0}.d4-card h2{font-size:1.25rem;color:var(--d4-gold);margin:0 0 12px}.d4-card p{margin:.4rem 0}.d4-card a{color:#ffcf87;text-decoration:underline}.d4-empty{color:var(--d4-muted)}.d4-list{list-style:none;padding:0;margin:0}.d4-list li{padding:.7rem 0;border-top:1px solid var(--d4-line)}.d4-list li:first-child{border-top:0}.d4-list strong,.d4-list span{display:block}.d4-list span{color:var(--d4-muted);font-size:.95em}.d4-future{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:30px}.d4-future>div{border:1px dashed var(--d4-line);border-radius:12px;padding:16px;color:var(--d4-muted)}.d4-future h2{font-size:1.1rem;color:var(--d4-text)}@media(max-width:780px){.d4-finder{grid-template-columns:1fr}.d4-detail,.d4-future{grid-template-columns:1fr}.d4-detail-head{grid-column:1}}
.d4-index{margin:28px 0}.d4-link-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-top:14px}.d4-link-grid a{display:block;background:var(--d4-card);border:1px solid var(--d4-line);border-radius:10px;padding:16px;color:var(--d4-text);text-decoration:none}.d4-link-grid a:hover,.d4-link-grid a:focus{border-color:var(--d4-gold);color:var(--d4-gold)}.d4-link-grid span{display:block;color:var(--d4-muted)}.d4-breadcrumb{margin-bottom:18px;color:var(--d4-muted)}.d4-breadcrumb a{color:var(--d4-gold)}.d4-content>.d4-card{margin-top:16px}.d4-content ul{padding-left:1.5em}.d4-content li{margin:.4em 0}.d4-table-wrap{overflow-x:auto}.d4-content table{width:100%;border-collapse:collapse;color:var(--d4-text)}.d4-content th,.d4-content td{border-bottom:1px solid var(--d4-line);padding:10px;text-align:left;vertical-align:top}.d4-content .d4-hero{margin-bottom:20px}

/* v0.3.1: original portal artwork and readable text inside WordPress themes. */
.d4-portal{
  --d4-bg:#100e10;
  --d4-card:rgba(29,27,30,.96);
  --d4-line:#65554a;
  --d4-gold:#f4bd70;
  --d4-text:#f7f0e8;
  --d4-muted:#d0c6bb;
  background-color:var(--d4-bg);
  background-image:linear-gradient(180deg,rgba(12,11,13,.3) 0,rgba(12,11,13,.83) 360px,#100e10 740px),url('portal-background.png');
  background-position:center top;
  background-size:cover,100% auto;
  background-repeat:no-repeat;
  color:var(--d4-text);
  box-shadow:0 24px 70px rgba(0,0,0,.25);
}
.d4-portal .d4-hero{
  background:linear-gradient(90deg,rgba(12,10,12,.95) 0%,rgba(12,10,12,.84) 52%,rgba(12,10,12,.25) 100%),url('portal-background.png') center 49%/cover no-repeat;
  border-color:#80563d;
  min-height:220px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.d4-portal .d4-card,.d4-portal .d4-finder,.d4-portal .d4-link-grid a{
  background:var(--d4-card);
  border-color:var(--d4-line);
}
.d4-portal .d4-card :is(p,li,strong,span,td,th),
.d4-portal .d4-hero :is(h1,p),
.d4-portal .d4-finder label{
  color:var(--d4-text)!important;
}
.d4-portal .d4-card h2,.d4-portal .d4-kicker,.d4-portal .d4-season{
  color:var(--d4-gold)!important;
}
.d4-portal .d4-card a,.d4-portal .d4-breadcrumb a{
  color:#ffcf91!important;
}
.d4-portal .d4-card li::marker{color:var(--d4-gold)}
.d4-portal.d4-content .d4-card table :is(th,td){
  background-color:#242124!important;
  color:var(--d4-text)!important;
  border-color:var(--d4-line)!important;
}
.d4-portal.d4-content .d4-card table thead th{
  background-color:#3b2925!important;
  color:var(--d4-gold)!important;
}
.d4-portal.d4-content .d4-card table tbody tr:nth-child(even) :is(th,td){background-color:#2b2628!important}
.d4-portal .d4-list span,.d4-portal .d4-link-grid span{color:var(--d4-muted)!important}
.d4-portal .d4-link-grid a{color:var(--d4-text)!important}
.d4-portal .d4-link-grid strong,.d4-portal .d4-index h2,.d4-portal .d4-future :is(h2,p){color:var(--d4-text)!important}
.d4-portal .d4-link-grid a:hover,.d4-portal .d4-link-grid a:focus{color:var(--d4-gold)!important;border-color:var(--d4-gold)}
.d4-portal .d4-future>div{color:var(--d4-muted)}
.d4-portal .d4-card .d4-equipment-note{color:var(--d4-muted)!important;margin:0 0 14px;font-size:.92em}
.d4-portal .d4-card table th:last-child,.d4-portal .d4-card table td:last-child{min-width:190px}
.d4-portal .d4-card table .d4-empty{color:var(--d4-muted)!important}
.d4-portal .d4-section-nav{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 18px}
.d4-portal .d4-section-nav a{display:inline-block;padding:8px 14px;border:1px solid var(--d4-line);border-radius:999px;background:var(--d4-card);color:var(--d4-text);text-decoration:none;font-weight:700}
.d4-portal .d4-section-nav a:hover,.d4-portal .d4-section-nav a:focus{border-color:var(--d4-gold);color:var(--d4-gold)}
.d4-portal.d4-content .d4-setup-list{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:10px}
.d4-portal .d4-setup-list li{margin:0;padding:14px;border:1px solid var(--d4-line);border-radius:8px;background:#242124}
.d4-portal .d4-setup-list strong,.d4-portal .d4-setup-list span{display:block}
.d4-portal .d4-setup-list .d4-setup-meta{color:var(--d4-gold)!important;font-size:.9em;margin:3px 0}
@media(max-width:780px){
  .d4-portal{background-size:cover,auto 600px}
  .d4-portal .d4-hero{min-height:190px;background-position:center,right center}
}
