/* Shared public-panel polish. Embedded PUS/event pages do not load this file. */
.public-panel { color: #e5e6d9; }
.public-panel .textwhiteSmall,
.public-panel .textSmallEvent { font: 13px/1.55 Arial, Helvetica, sans-serif; color: #e0e2d5; }
.public-panel #subTableRepetable { line-height: 1.55; }
.public-panel #subTableRepetable a { color: #e0c37c; }
.public-panel #subTableRepetable a:hover { color: #fff0bd; text-decoration: underline; }
.public-panel input[type="submit"], .public-panel input[type="button"],
.public-panel button#myKOL {
    min-height: 34px; height: auto; padding: 7px 12px;
    border: 1px solid #9d8246; border-radius: 4px;
    background: linear-gradient(#383d27, #1b2416);
    color: #f5dfa0; box-shadow: 0 2px 5px #0006;
    font: bold 12px/1.4 Arial, Helvetica, sans-serif;
    cursor: pointer;
}
.public-panel input[type="submit"]:hover, .public-panel input[type="button"]:hover,
.public-panel button#myKOL:hover { background: #384729; border-color: #e0c37c; }
.public-panel :focus-visible { outline: 2px solid #e0c37c; outline-offset: 3px; }
.panel-card {
    box-sizing: border-box; padding: 18px; margin: 0 0 16px;
    color: #e5e6d9; background: rgba(14, 24, 13, .96);
    border: 1px solid #70623e; border-radius: 6px;
    box-shadow: 0 3px 12px #0005; text-align: left;
    font: 13px/1.55 Arial, Helvetica, sans-serif;
}
.panel-card h2, .panel-card h3 {
    margin: 0 0 12px; color: #eed393; font: bold 20px/1.25 Georgia, serif;
}
.panel-card h3 { font-size: 17px; }
.panel-card .panel-muted { color: #bfc8b5; margin: 6px 0 14px; font-size: 12px; }
.panel-card a { color: #e0c37c; }
.panel-actions, .account-balances { display: flex; flex-wrap: wrap; gap: 10px; }
.panel-button, .public-panel #subTableRepetable .panel-button {
    display: inline-block; padding: 9px 12px; color: #f5dfa0;
    background: linear-gradient(#383d27, #1b2416);
    border: 1px solid #9d8246; border-radius: 4px;
    font: bold 12px/1.4 Arial, Helvetica, sans-serif; text-decoration: none;
}
.panel-button:hover { background: #384729; border-color: #e0c37c; }
.account-overview { width: 94%; margin: 0 auto; }
.account-balances > div {
    flex: 1 1 130px; padding: 14px; background: #080f08; border: 1px solid #3e4a30; border-radius: 4px;
}
.account-balances span, .account-balances strong { display: block; }
.account-balances strong { color: #f4d474; font-size: 26px; margin-top: 6px; }
.account-characters { padding: 0; margin: 0; list-style: none; }
.account-characters li { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 8px; padding: 10px 0; border-bottom: 1px solid #36402b; }
.account-characters span { color: #bdc7b2; }
.panel-table-scroll { max-width: 100%; overflow-x: auto; }
.panel-table { width: 100%; border-collapse: collapse; font-size: 12px; }
.panel-table th { color: #cfb36c; text-align: left; font-size: 11px; }
.panel-table th, .panel-table td { padding: 10px 8px; border-bottom: 1px solid #36402b; vertical-align: top; }
.panel-table tbody tr:nth-child(even) { background: #ffffff04; }
.payment-status { display: inline-block; padding: 2px 7px; border-radius: 3px; font-size: 11px; }
.payment-status--done { color: #c3e7a4; background: #25421e; }
.payment-status--pending { color: #f2d68a; background: #443b18; }
.payment-status--failed { color: #ffc4b5; background: #51271f; }
.event-schedule { width: 451px; margin: 40px 0 0 63px; color: #d5d5d5; font: 12px/1.35 serverdetails, Georgia, "Times New Roman", serif; }
.event-schedule h2 { margin: 0; padding: 0; color: #d5d5d5; text-align: center; font: normal 23px/32px serverdetails, Georgia, "Times New Roman", serif; }
.event-schedule .event-schedule-zone { margin: 58px 0 8px; padding: 0; color: #bfb8ac; text-align: center; font-size: 11px; line-height: 18px; }
.public-panel #scheduledevents { position: static; width: 100%; height: auto; table-layout: fixed; border-collapse: collapse; color: #d5d5d5; font: inherit; }
.public-panel #scheduledevents tr { text-align: left; border-bottom: 1px solid #786c5c; }
.public-panel #scheduledevents th, .public-panel #scheduledevents td { padding: 7px; vertical-align: middle; }
.public-panel #scheduledevents th { background: #2d1f17; color: #d5d5d5; font-weight: bold; font-size: 11px; }
.public-panel #scheduledevents tbody tr:nth-child(even) { background: #38271d55; }
.public-panel #scheduledevents tr:last-child { border-bottom: none; }
.public-panel #scheduledevents a { color: #c7b393; font: inherit; }
.public-panel #scheduledevents a:hover { color: #fff0d1; text-decoration: underline; }
.event-countdown { font-variant-numeric: tabular-nums; white-space: nowrap; }
/* Low-risk interim mobile support: preserve the legacy 990px artwork layout,
   allow horizontal access, and keep the new components internally flexible.
   A true one-column public shell remains a separate TODO. */
@media (max-width: 1000px) {
    .public-panel { overflow-x: auto; margin: 0; }
}
