/* Exklusive Live-Tafel: das Ernte-Duell soll sich nicht wie eine normale Eventkarte anfühlen. */
.portal-harvest-duel {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    margin: 14px 0 20px;
    border: 1px solid rgba(225, 185, 93, .58);
    border-radius: 25px;
    background: #243d31;
    box-shadow: 0 18px 35px rgba(46, 69, 42, .18);
    color: #fff7dc;
}

.portal-harvest-duel-art {
    position: absolute;
    z-index: -2;
    inset: 0;
    background-position: center 48%;
    background-size: cover;
    filter: saturate(.88) contrast(1.03);
}

.portal-harvest-duel:after {
    position: absolute;
    z-index: -1;
    inset: 0;
    background: linear-gradient(94deg, rgba(23, 49, 38, .97) 0%, rgba(29, 59, 42, .90) 43%, rgba(52, 43, 28, .84) 100%);
    content: "";
}

.portal-harvest-duel-content { padding: 18px 23px 15px; }
.portal-harvest-duel header,
.portal-harvest-duel footer { display: flex; align-items: center; gap: 12px; }

.portal-harvest-duel header {
    padding-bottom: 12px;
    border-bottom: 1px solid rgba(255, 240, 188, .20);
    color: #f9e7ae;
    font-size: 10px;
    font-weight: 800;
}

.portal-harvest-live { display: inline-flex; align-items: center; gap: 6px; color: #fff0ca; letter-spacing: .11em; }
.portal-harvest-live i { width: 8px; height: 8px; border-radius: 50%; background: #ff766a; box-shadow: 0 0 0 4px rgba(255, 118, 106, .18); animation: portal-harvest-pulse 1.5s infinite; }
.portal-harvest-day { padding: 4px 8px; border-radius: 8px; background: rgba(245, 208, 113, .14); }
.portal-harvest-my-team { margin-left: auto; padding: 4px 8px; border-radius: 8px; font-size: 10px; font-weight: 800; white-space: nowrap; }
.portal-harvest-my-team.alpha { background: rgba(91, 179, 101, .26); color: #dcffcf; }
.portal-harvest-my-team.bravo { background: rgba(227, 167, 68, .27); color: #fff0bd; }
.portal-harvest-clock { margin-left: auto; color: #f9edcc; }
.portal-harvest-clock b { color: #ffe08b; }

.portal-harvest-duel-main { display: grid; grid-template-columns: 1fr minmax(240px, 1.15fr) 1fr; gap: 16px; align-items: center; padding: 14px 0; }
.portal-harvest-team { display: grid; gap: 2px; }
.portal-harvest-team.bravo { text-align: right; }
.portal-harvest-team small { color: #d9e6c2; font-size: 8px; font-weight: 900; letter-spacing: .11em; }
.portal-harvest-team b { font-size: 17px; line-height: 1.1; }
.portal-harvest-team strong { color: #fff1ae; font-family: Georgia, serif; font-size: clamp(31px, 4vw, 52px); line-height: .95; text-shadow: 0 4px 10px rgba(8, 26, 16, .33); }
.portal-harvest-team em { color: #d1dfbb; font-size: 9px; font-style: normal; }
.portal-harvest-team.bravo strong { color: #ffc982; }

.portal-harvest-center { display: grid; justify-items: center; gap: 3px; padding: 4px 16px; text-align: center; }
.portal-harvest-crop-image { display: grid; width: 50px; height: 50px; place-items: center; overflow: hidden; border: 2px solid rgba(255, 232, 149, .76); border-radius: 16px; background: rgba(255, 243, 199, .12); box-shadow: 0 6px 14px rgba(10, 30, 18, .26); font-size: 27px; }
.portal-harvest-crop-image img { width: 46px; height: 46px; object-fit: contain; }
.portal-harvest-center small { color: #d9e6c2; font-size: 8px; font-weight: 900; letter-spacing: .12em; }
.portal-harvest-center>b { max-width: 100%; overflow: hidden; color: #fff5d8; font-size: 15px; text-overflow: ellipsis; white-space: nowrap; }
.portal-harvest-score-track { width: 100%; height: 10px; overflow: hidden; border: 1px solid rgba(255, 238, 180, .44); border-radius: 100px; background: rgba(16, 34, 24, .58); box-shadow: inset 0 2px 4px rgba(8, 22, 15, .3); }
.portal-harvest-score-track i { display: block; min-width: 2%; height: 100%; border-radius: inherit; background: linear-gradient(90deg, #8ed35c, #edf07d); box-shadow: 0 0 10px rgba(223, 244, 121, .6); transition: width .55s cubic-bezier(.2,.8,.2,1); }
.portal-harvest-center>strong { color: #ffe3a0; font-size: 10px; }

.portal-harvest-duel footer { flex-wrap: wrap; padding-top: 11px; border-top: 1px solid rgba(255, 240, 188, .20); color: #dce7c9; font-size: 9px; }
.portal-harvest-duel footer b { color: #fff1b9; }
.portal-harvest-duel footer a { margin-left: auto; padding: 6px 9px; border: 1px solid rgba(255, 232, 157, .45); border-radius: 9px; background: rgba(255, 239, 177, .12); color: #fff0bc; font-size: 9px; font-weight: 900; text-decoration: none; transition: background .2s, transform .2s; }
.portal-harvest-duel footer a:hover { background: rgba(255, 239, 177, .25); transform: translateY(-1px); }

@keyframes portal-harvest-pulse { 50% { transform: scale(.72); opacity: .55; } }

/* Kompaktes Live-Widget in derselben Kopfzeile wie Wetter, Markt und Events. */
.portal-utility-row .portal-harvest-duel.is-header-widget { flex:1 1 285px; min-width:250px; max-width:335px; margin:0; border-radius:17px; box-shadow:0 9px 20px rgba(46,69,42,.15); }
.portal-utility-row .portal-harvest-duel.is-header-widget .portal-harvest-duel-art { background-position:center; filter:saturate(.78) brightness(.78); }
.portal-utility-row .portal-harvest-duel.is-header-widget:after { background:linear-gradient(105deg,rgba(24,55,40,.96),rgba(32,71,46,.89)); }
.portal-utility-row .portal-harvest-duel.is-header-widget .portal-harvest-duel-content { padding:7px 10px 8px; }
.portal-utility-row .portal-harvest-duel.is-header-widget header { gap:7px; padding-bottom:5px; font-size:7px; }
.portal-utility-row .portal-harvest-duel.is-header-widget .portal-harvest-live { font-size:7px; letter-spacing:.08em; }
.portal-utility-row .portal-harvest-duel.is-header-widget .portal-harvest-live i { width:6px; height:6px; box-shadow:0 0 0 3px rgba(255,118,106,.14); }
.portal-utility-row .portal-harvest-duel.is-header-widget .portal-harvest-day { padding:3px 5px; font-size:7px; }
.portal-utility-row .portal-harvest-duel.is-header-widget .portal-harvest-my-team { max-width:98px; overflow:hidden; padding:3px 5px; font-size:7px; text-overflow:ellipsis; }
.portal-utility-row .portal-harvest-duel.is-header-widget .portal-harvest-clock { display:none; }
.portal-utility-row .portal-harvest-duel.is-header-widget .portal-harvest-duel-main { grid-template-columns:1fr 1.15fr 1fr; gap:5px; padding:5px 0 0; }
.portal-utility-row .portal-harvest-duel.is-header-widget .portal-harvest-team small { font-size:6px; }
.portal-utility-row .portal-harvest-duel.is-header-widget .portal-harvest-team b { max-width:75px; overflow:hidden; font-size:10px; text-overflow:ellipsis; white-space:nowrap; }
.portal-utility-row .portal-harvest-duel.is-header-widget .portal-harvest-team.bravo b { margin-left:auto; }
.portal-utility-row .portal-harvest-duel.is-header-widget .portal-harvest-team strong { font-size:25px; }
.portal-utility-row .portal-harvest-duel.is-header-widget .portal-harvest-team em { display:none; }
.portal-utility-row .portal-harvest-duel.is-header-widget .portal-harvest-center { gap:1px; padding:0 3px; }
.portal-utility-row .portal-harvest-duel.is-header-widget .portal-harvest-crop-image { width:26px; height:26px; border-radius:9px; border-width:1px; font-size:15px; }
.portal-utility-row .portal-harvest-duel.is-header-widget .portal-harvest-crop-image img { width:24px; height:24px; }
.portal-utility-row .portal-harvest-duel.is-header-widget .portal-harvest-center small { display:none; }
.portal-utility-row .portal-harvest-duel.is-header-widget .portal-harvest-center>b { font-size:9px; }
.portal-utility-row .portal-harvest-duel.is-header-widget .portal-harvest-score-track { height:5px; }
.portal-utility-row .portal-harvest-duel.is-header-widget .portal-harvest-center>strong { font-size:7px; }
.portal-utility-row .portal-harvest-duel.is-header-widget footer { display:none; }

@media (max-width: 700px) {
    .portal-utility-row .portal-harvest-duel.is-header-widget { width:100%; max-width:none; }
    .portal-harvest-duel { margin-top: 11px; border-radius: 20px; }
    .portal-harvest-duel-content { padding: 14px; }
    .portal-harvest-duel header { flex-wrap: wrap; gap: 7px; }
    .portal-harvest-clock { width: 100%; margin-left: 0; }
    .portal-harvest-duel-main { grid-template-columns: 1fr 1fr; gap: 8px; }
    .portal-harvest-center { grid-column: 1 / -1; grid-row: 1; padding: 0 8px 7px; }
    .portal-harvest-team { grid-row: 2; }
    .portal-harvest-team b { font-size: 14px; }
    .portal-harvest-team strong { font-size: 35px; }
    .portal-harvest-duel footer { gap: 7px 10px; }
    .portal-harvest-duel footer a { width: 100%; margin-left: 0; text-align: center; }
}
