.live-dashboard { width:min(1260px,calc(100% - 48px)); margin:0 auto; padding:17px 0 38px; }
.dashboard-hero { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr); gap:17px; align-items:stretch; }
.dashboard-copy { position:relative; display:flex; min-height:290px; flex-direction:column; justify-content:center; overflow:hidden; padding:clamp(25px,4vw,45px); border:4px solid #fffef1; border-radius:23px; background:linear-gradient(100deg,#153e35e8,#174631a8 65%,#13382f5c),url('../images/kwaakdam-havenplein-summer-evening.webp') center/cover; box-shadow:0 0 0 2px #a9cf84,0 6px 0 #dfe8c8; color:white; }
.dashboard-copy .eyebrow { color:#e9f2b6; }
.dashboard-copy h1 { max-width:650px; margin:10px 0 8px; color:#fffdf0; font-size:clamp(34px,4.4vw,48px); line-height:1.02; letter-spacing:-.045em; }
.dashboard-copy > p { max-width:580px; margin:0; color:#edf3dc; font-size:13px; line-height:1.6; }
.dashboard-hero-meta { display:flex; align-items:center; gap:10px; margin-top:24px; }
.hero-avatar { width:44px; height:44px; border:1px solid #ffffff75; border-radius:14px; background:url('../images/skin-club-royal-regent-atlas-v1-yellow.png') 50% 50%/500% 300% no-repeat,#fff6d5; }
.dashboard-hero-meta strong,.dashboard-hero-meta small { display:block; }
.dashboard-hero-meta strong { font-size:13px; }.dashboard-hero-meta small { margin-top:3px; color:#dcebd0; font-size:10px; }
.checkin-card { display:flex; min-width:0; flex-direction:column; padding:23px; border:2px solid #d0dfa9; border-radius:20px; background:linear-gradient(180deg,#f0f7dc,#fffdf2); box-shadow:0 5px 0 #e0e8c8; }
.checkin-card-top { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:auto; }
.checkin-icon { display:grid; width:43px; height:43px; place-items:center; border-radius:13px; background:#e5f1d2; font-size:22px; }
.game-status-pill { display:inline-flex; align-items:center; gap:7px; padding:8px 10px; border:1px solid #c9dfad; border-radius:999px; background:#f8fbed; color:#507644; font-size:10px; font-weight:900; }
.game-status-pill i { width:8px; height:8px; border-radius:50%; background:#6fb74b; box-shadow:0 0 0 3px #e2f0d3; }
.checkin-card .path-label { margin:20px 0 0; }
.checkin-card h2 { margin:6px 0 7px; color:#174e37; font-size:25px; line-height:1.1; }
.checkin-card > p:not(.checkin-hint) { margin:0; color:#667d6b; font-size:12px; line-height:1.55; }
.checkin-card .dashboard-checkin { display:flex; width:100%; min-height:83px; align-items:center; justify-content:flex-start; gap:14px; margin-top:16px; padding:12px 18px; border:1px solid #206d2a; border-radius:16px; background:linear-gradient(#4caf35,#2d842f); box-shadow:0 4px 0 #216b27,0 8px 14px #316c3024; color:#fff; text-align:left; }
.checkin-card .dashboard-checkin:hover:not(:disabled) { box-shadow:0 5px 0 #216b27,0 10px 17px #316c302b; }
.checkin-card .dashboard-checkin > span:nth-child(2) { display:grid; min-width:0; gap:4px; }
.checkin-card .dashboard-checkin strong { font:900 15px 'Trebuchet MS',sans-serif; }
.checkin-card .dashboard-checkin small { color:#e4f2cf; font-size:10px; font-weight:600; line-height:1.4; }
.checkin-card .dashboard-checkin .checkin-stamp { display:grid; width:43px; height:43px; flex:0 0 auto; place-items:center; border:2px solid #ffed9a; border-radius:50%; color:#78570d; background:linear-gradient(#ffe975,#ffca42); box-shadow:0 3px 0 #b97520; font:900 25px 'Trebuchet MS',sans-serif; }
.checkin-card .dashboard-checkin .checkin-arrow { margin-left:auto; font-size:24px; }
.checkin-hint { min-height:16px; margin:11px 0 0; color:#76856e; font-size:10px; line-height:1.5; }
.dashboard-checkin:disabled { border-color:#b7c1ae; color:#778074; background:linear-gradient(#d9dfd3,#cbd3c3); box-shadow:0 3px 0 #aab3a4; cursor:not-allowed; transform:none; }
.checkin-card .dashboard-checkin:disabled { border-color:#b7c1ae; color:#778074; background:linear-gradient(#d9dfd3,#cbd3c3); box-shadow:0 3px 0 #aab3a4; cursor:not-allowed; transform:none; }
.checkin-card .dashboard-checkin:disabled small { color:#747d70; }
.checkin-card .dashboard-checkin:disabled .checkin-stamp { border-color:#d6dccf; color:#70786e; background:linear-gradient(#e5e9e1,#cbd2c7); box-shadow:0 3px 0 #aab3a4; }
.checkin-card.is-maintenance { border-color:#c4ccba; background:linear-gradient(#eef0e8,#faf9f1); }
.checkin-card.is-maintenance .game-status-pill { border-color:#d0d5ca; color:#71796f; background:#f3f4ee; }
.checkin-card.is-maintenance .game-status-pill i { background:#a8b0a2; box-shadow:0 0 0 3px #e7eae3; }
.dashboard-lower { display:grid; grid-template-columns:minmax(0,1fr) minmax(270px,.72fr); gap:15px; margin-top:17px; }
.dashboard-balance-card,.dashboard-news-card { min-width:0; padding:20px; border:2px solid #d3e2b3; border-radius:17px; background:#fffdf3; box-shadow:0 4px 0 #e2eacb; }
.dashboard-balance-card .section-heading { margin-bottom:10px; }
.dashboard-balance-card .section-heading h2 { margin:4px 0 0; color:#174e37; font-size:21px; }
.dashboard-balance-copy { margin:0; padding:12px; border-radius:11px; background:#f4f8e6; color:#45674d; font-size:13px; font-weight:800; }
.dashboard-links { display:flex; flex-wrap:wrap; gap:8px; margin-top:13px; }
.dashboard-links a { padding:9px 11px; border:1px solid #d6e3bd; border-radius:10px; background:#f8faec; color:#3c7542; font-size:10px; font-weight:900; }
.dashboard-news-card { display:flex; flex-direction:column; align-items:flex-start; }
.news-card-icon { display:grid; width:36px; height:36px; place-items:center; margin-bottom:12px; border-radius:11px; background:#eaf3d8; font-size:17px; }
.dashboard-news-card h2 { margin:5px 0; color:#174e37; font-size:19px; }
.dashboard-news-card p { margin:0 0 12px; color:#697f6f; font-size:12px; line-height:1.55; }
.news-card-link { margin-top:auto; color:#2d8239; font-size:11px; font-weight:900; }
.dashboard-login { max-width:850px; margin:20px auto; }
.dashboard-login .portal-home-card { width:100%; }
.inline-auth-switch { margin:14px 0 0; color:#718271; font-size:11px; text-align:center; }
.inline-auth-switch a { color:#32813c; font-weight:900; }
.news-page-intro { width:min(1260px,calc(100% - 48px)); margin:30px auto 22px; }
.news-page-intro h1 { margin:8px 0; color:#174e37; font-size:clamp(32px,4.5vw,46px); letter-spacing:-.04em; }
.news-page-intro p { margin:0; color:#627c72; font-size:14px; line-height:1.6; }
.news-page .news-section { padding:32px 0 48px; border:0; background:transparent; }
.news-return { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-top:22px; padding:18px 20px; border:1px solid #d8e5b6; border-radius:15px; background:#f3f8e2; color:#516e54; font-size:12px; font-weight:800; }
@media(max-width:760px) { .live-dashboard,.news-page-intro { width:calc(100% - 28px); }.dashboard-hero,.dashboard-lower { grid-template-columns:1fr; }.dashboard-copy { min-height:235px; }.checkin-card { min-height:260px; }.news-return { align-items:flex-start; flex-direction:column; }.news-return .button { width:100%; } }
