.gec-page{color:#25201e;width:100%;font-family:Arial,sans-serif}.gec-title{background:linear-gradient(90deg,#dfad20,#966300);border-radius:10px;padding:12px 16px;color:#fff;font-family:'Bebas Neue Bold',Arial,sans-serif;font-size:23px;letter-spacing:.6px;box-shadow:0 3px 9px #0002}.gec-intro{padding:18px 4px 8px;line-height:1.6}.gec-intro strong{display:block;font-size:19px}.gec-nav{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:12px 0}.gec-nav h2{font-size:24px;margin:0;color:#805800}.gec-nav a,.gec-open{color:#966300!important;font-weight:bold;text-decoration:none}.gec-nav a{padding:8px;border:1px solid #b8988b;border-radius:6px;background:#fff9}.gec-note{font-size:12px;line-height:1.6;color:#65564d;margin:12px 0}.gec-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.gec-weekday{background:#49391c;color:#fff;text-align:center;padding:8px 2px;border-radius:5px;font-size:12px;font-weight:bold}.gec-day{min-height:134px;background:#fff9;border:1px solid #d7c7ba;border-radius:7px;padding:7px;scroll-margin-top:80px}.gec-eventday{background:#fff5e8;border-top:3px solid #bd8912;padding-top:5px}.gec-current{outline:2px solid #bd8912;outline-offset:1px}.gec-dayhead{display:flex;justify-content:space-between;align-items:center;margin-bottom:9px;gap:2px}.gec-day time{font-size:19px;font-weight:bold}.gec-day time small{display:none}.gec-today{font-size:9px;color:#966300;font-weight:bold}.gec-chip{display:block;border-radius:4px;background:#efe2d0;color:#463322;padding:5px;margin:4px 0;font-size:11px;line-height:1.35;overflow-wrap:anywhere;font-weight:bold}.gec-rest{font-size:11px;color:#877a6f}.gec-subtitle{font-size:19px;margin-top:22px}.gec-legend{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}.gec-legend>div{background:#fff9;border:1px solid #dac8b8;border-radius:7px;padding:12px}.gec-legend strong{color:#765100;font-size:13px}.gec-legend p{font-size:12px;line-height:1.5;margin:7px 0 0}.gec-empty{padding:40px 20px;text-align:center;background:#fff9;border:1px solid #dbcbbd;border-radius:8px}.gec-widget .head a{color:inherit!important;text-decoration:none}.gec-widget .box-content{padding:10px!important}.gec-mini-title{text-align:center;font-weight:bold;margin:1px 0 10px;color:#805800}.gec-mini-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;text-align:center}.gec-mini-grid a{position:relative;color:#5b4434!important;text-decoration:none;padding:4px 0 8px;font-size:11px;border-radius:4px}.gec-mini-label{font-size:10px;font-weight:bold;color:#7a6555;padding-bottom:4px}.gec-mini-grid .gec-dot{background:#f0dbcc;font-weight:bold}.gec-dot:after{content:'';position:absolute;bottom:2px;left:calc(50% - 2px);width:4px;height:4px;border-radius:50%;background:#bd8912}.gec-mini-today{outline:1px solid #bd8912}.gec-upcoming-title{margin-top:15px;padding-top:10px;border-top:1px solid #cbb7a5;color:#805800;font-weight:bold;font-size:12px}.gec-upcoming{margin:10px 0}.gec-upcoming>strong{font-size:11px;color:#59402f}.gec-widget .gec-chip{font-size:10px;padding:4px}.gec-open{display:block;text-align:center;border-top:1px solid #cbb7a5;padding-top:10px;font-size:12px}.gec-widget-time{display:block;text-align:center;margin-top:8px;color:#806d5c;font-size:9px}@media(max-width:800px){.gec-grid{gap:3px}.gec-day{padding:4px;min-height:115px}.gec-chip{font-size:10px;padding:3px}.gec-today{display:none}}@media(max-width:560px){.gec-grid{grid-template-columns:1fr}.gec-weekday,.gec-blank{display:none}.gec-day{min-height:0;padding:10px}.gec-day time small{display:inline;margin-left:8px;font-size:13px}.gec-chip{font-size:12px}.gec-dayhead{margin-bottom:5px}.gec-legend{grid-template-columns:1fr}.gec-nav h2{font-size:20px}.gec-nav a{font-size:11px;padding:6px}}

.gec-past{background:#ececec;border-color:#d2d2d2;color:#727272}.gec-past.gec-eventday{border-top-color:#929292}.gec-past .gec-chip{background:#ddd;color:#626262;filter:grayscale(1)}.gec-ended{font-size:9px;color:#666;font-weight:bold}.gec-mini-grid .gec-mini-past{color:#888!important}.gec-mini-grid .gec-mini-past.gec-dot{background:#ddd}.gec-mini-past.gec-dot:after{background:#888}

.gec-chip-lead{white-space:nowrap;overflow-wrap:normal}

.gec-outside{background:#e7e8e8;border-color:#cbd0d0}.gec-outside.gec-eventday{border-top-color:#a99a88}.gec-outside .gec-chip{background:#e0ddd6;color:#655b50}.gec-outside time{color:#7a7c7d}.gec-month-label{display:inline-block;margin-left:4px;font-size:10px;font-weight:normal;color:#797a7b}.gec-outside.gec-past .gec-chip{background:#ddd;color:#626262}

.gec-token-icon{display:inline-block;width:18px;height:18px;object-fit:contain;vertical-align:-5px;image-rendering:auto}.gec-legend .gec-token-icon{width:22px;height:22px;vertical-align:-6px}

.gec-widget .box-content{background:linear-gradient(#f9fbfc,#edf1f3);border-radius:0 0 7px 7px}.gec-mini-events{position:relative;gap:4px}.gec-mini-cell{min-width:0;min-height:54px;border:1px solid transparent;border-radius:6px;text-align:center}.gec-mini-cell summary{display:block;list-style:none;cursor:pointer;padding:5px 1px;min-height:52px;box-sizing:border-box}.gec-mini-cell summary::-webkit-details-marker{display:none}.gec-day-number{display:block;font-size:11px;line-height:16px;color:#655c55}.gec-no-events{padding-top:5px;box-sizing:border-box}.gec-has-events{background:#fff4e5;border-color:#e6d8c4;transition:background .15s}.gec-has-events:hover,.gec-has-events[open]{background:#fce7c9;border-color:#c49a58}.gec-mini-cell.gec-mini-today{outline:1px solid #bd8912;outline-offset:1px}.gec-day-icons{display:flex;align-items:center;justify-content:center;gap:1px;font-size:17px;height:24px}.gec-day-icons .gec-token-icon{width:20px;height:20px;vertical-align:initial}.gec-day-icons b{font:700 8px Arial;color:#916c38}.gec-mini-cell.gec-mini-past{background:#e6e8ea;border-color:#d9dcdf}.gec-mini-past .gec-day-icons{filter:grayscale(1);opacity:.65}.gec-day-popover{display:none;position:absolute;z-index:100;left:0;right:0;top:100%;margin-top:6px;padding:13px;text-align:left;color:#352c26;background:#fffdf9;border:1px solid #d5c2aa;border-radius:8px;box-shadow:0 6px 22px #0003}.gec-mini-cell:hover .gec-day-popover,.gec-mini-cell[open] .gec-day-popover,.gec-mini-cell:focus-within .gec-day-popover{display:block}.gec-day-popover>strong{display:block;font-size:12px;border-bottom:1px solid #e5ded5;padding-bottom:8px;margin-bottom:8px;color:#765100}.gec-pop-event{display:flex;align-items:flex-start;gap:8px;margin:9px 0}.gec-pop-event>span{flex:0 0 22px;font-size:20px}.gec-pop-event .gec-token-icon{width:22px;height:22px}.gec-pop-event b{font-size:11px}.gec-pop-event small{display:block;font-size:10px;line-height:1.45;color:#766a60;margin-top:3px}.gec-mini-hint{text-align:center;font-size:10px!important;color:#8b8076;margin:12px 0!important}.gec-mini-cell summary:focus-visible{outline:2px solid #a3740c;border-radius:5px}

.gec-widget{position:relative;z-index:25;overflow:visible!important}.gec-widget .box-content{overflow:visible!important}

/* A shared viewport-positioned card for the main and sidebar calendars. */
.gec-popovers-ready .gec-mini-cell .gec-day-popover{display:none!important}
.gec-floating-card.gec-day-popover{display:block;position:fixed;z-index:10000;right:auto;bottom:auto;top:0;left:0;margin:0;width:308px;max-width:calc(100vw - 24px);box-sizing:border-box;max-height:calc(100vh - 24px);overflow:auto;font-family:Arial,sans-serif;line-height:1.45;filter:none;opacity:1;box-shadow:0 8px 28px #25150b30}
.gec-floating-card[hidden]{display:none!important}
.gec-chip[data-gec-name]{cursor:help}
.gec-chip[data-gec-name]:focus-visible{outline:2px solid #a3740c;outline-offset:2px}

/* Upcoming cross-month weekend events use the same palette as this month. */
.gec-outside.gec-eventday:not(.gec-past){background:#fff5e8;border-top-color:#bd8912;color:#25201e}
.gec-outside.gec-eventday:not(.gec-past) .gec-chip{background:#efe2d0;color:#463322}
.gec-outside.gec-eventday:not(.gec-past) time{color:#25201e}

/* Keep long event names within narrow seven-column day cards. */
.gec-grid{gap:2px}
.gec-day{min-width:0;padding-left:5px;padding-right:5px}
.gec-chip{min-width:0;box-sizing:border-box;max-width:100%}
.gec-chip-lead{white-space:normal;overflow-wrap:anywhere}
@media(max-width:800px){.gec-grid{gap:2px}.gec-day{padding-left:4px;padding-right:4px}}

/* Blue marks today; gold top borders continue to mark event days. */
.gec-current{outline-color:#387eac;background:#edf6fc}
.gec-current .gec-today{color:#24638d}
.gec-mini-cell.gec-mini-today{outline-color:#387eac;background:#edf6fc}

/* A soft gold sweep on current/upcoming event days, without intercepting input. */
.gec-eventday:not(.gec-past),.gec-mini-cell.gec-has-events:not(.gec-mini-past){position:relative;isolation:isolate}
.gec-eventday:not(.gec-past)::after,.gec-mini-cell.gec-has-events:not(.gec-mini-past)::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;z-index:1;background:linear-gradient(115deg,transparent 35%,rgba(242,192,82,.08) 43%,rgba(255,222,151,.36) 50%,rgba(255,245,215,.2) 55%,transparent 65%);background-size:300% 100%;background-repeat:no-repeat;animation:gec-event-shimmer 2.4s ease-in-out infinite}
@keyframes gec-event-shimmer{0%,15%{background-position:150% 0;opacity:0}25%{opacity:1}75%{opacity:1}90%,100%{background-position:-50% 0;opacity:0}}
@media(prefers-reduced-motion:reduce){.gec-eventday:not(.gec-past)::after,.gec-mini-cell.gec-has-events:not(.gec-mini-past)::after{animation:none;background:none}}

/* Contain the animated sheen strictly inside each day, never the page. */
.gec-eventday:not(.gec-past),.gec-mini-cell.gec-has-events:not(.gec-mini-past){overflow:hidden}
.gec-eventday:not(.gec-past)::after,.gec-mini-cell.gec-has-events:not(.gec-mini-past)::after{clip-path:inset(0 round 6px);width:auto;height:auto;transform:none}
.gec-legend p,.gec-pop-event small{white-space:pre-line}

/* Scoped page styling matching Server Information. */
.gec-professional{color:#252a2d;font:13px/1.6 Arial,sans-serif}
.gec-professional *{box-sizing:border-box}
.gec-professional .gec-title{background:linear-gradient(90deg,#e4ad1f 0%,#c88d10 58%,#a66d05 100%);padding:10px 14px;font-size:19px;letter-spacing:.5px;box-shadow:none;margin:0 0 12px;border-radius:10px;line-height:1.4}
.gec-professional .gec-panel{background:rgba(255,255,255,.75);border:1px solid rgba(255,255,255,.9);border-radius:12px;padding:14px;margin-bottom:14px;box-shadow:0 1px 0 rgba(0,0,0,.04)}
.gec-professional .gec-section-heading{display:flex;align-items:center;gap:10px;margin:2px 0 10px}
.gec-professional .gec-section-heading h2{font-family:'Bebas Neue Bold',Arial,sans-serif;font-size:16px;letter-spacing:.4px;text-transform:uppercase;color:#28251d;margin:0;line-height:1.4}
.gec-professional .gec-section-icon{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:10px;background:rgba(228,173,31,.18);border:1px solid #00000018;font-size:16px;flex-shrink:0}
.gec-professional .gec-overview>p,.gec-professional .gec-section-description{font:13px/1.6 Arial,sans-serif;margin:0 0 12px;color:#61676a}
.gec-professional .gec-rules{display:grid;grid-template-columns:1fr 1.7fr;gap:0;background:#fbf4e1;border:1px solid #eee3c5;border-radius:9px;padding:12px 14px}
.gec-professional .gec-rules>div+div{border-left:1px solid #e5d9b8;margin-left:16px;padding-left:16px}
.gec-professional .gec-rules strong{display:block;font-size:12px;color:#715113;margin-bottom:3px}
.gec-professional .gec-rules span{display:block;font-size:12px;line-height:1.65;color:#655f50}
.gec-professional .gec-calendar-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin:2px 0 15px}
.gec-professional .gec-calendar-heading h2{font:600 22px/1.3 Arial,sans-serif;color:#77550d;margin:0}
.gec-professional .gec-status-key{display:flex;gap:12px;flex-wrap:wrap;font:11px/1.4 Arial,sans-serif;color:#686d70}
.gec-professional .gec-status-key span{display:inline-flex;align-items:center;gap:5px}
.gec-professional .gec-status-key i{width:8px;height:8px;border-radius:3px;display:inline-block}
.gec-professional .gec-key-today{background:#387eac}.gec-professional .gec-key-event{background:#c28f19}.gec-professional .gec-key-ended{background:#adb3b5}
.gec-professional .gec-grid{gap:4px}
.gec-professional .gec-weekday{background:#f8efd8;color:#5c4820;border-radius:6px;font-size:11px;padding:9px 2px}
.gec-professional .gec-day{border-color:#e0e3e4;background:#fff;min-height:126px;border-radius:8px;padding:7px 5px}
.gec-professional .gec-eventday,.gec-professional .gec-outside.gec-eventday:not(.gec-past){background:#fffaf0;border-top:3px solid #c99a29;padding-top:5px}
.gec-professional .gec-day time{font:600 17px/1.3 Arial,sans-serif}
.gec-professional .gec-dayhead{margin-bottom:10px}
.gec-professional .gec-chip,.gec-professional .gec-outside.gec-eventday:not(.gec-past) .gec-chip{background:#f2e7ce;color:#55441e;font:600 10px/1.5 Arial,sans-serif;padding:5px 4px;border-radius:5px}
.gec-professional .gec-rest{font:10px/1.5 Arial,sans-serif;color:#909596}
.gec-professional .gec-past{background:#f0f2f3;color:#878e91;border-color:#e2e5e6}
.gec-professional .gec-past.gec-eventday{border-top-color:#b6bbbe}
.gec-professional .gec-past .gec-chip{background:#e4e7e8;color:#737a7d}
.gec-professional .gec-current{background:#edf6fc;outline-color:#387eac}
.gec-professional .gec-bonus-table{width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed;background:#fff;border:1px solid #eceef0;border-radius:12px;overflow:hidden;font:13px/1.7 Arial,sans-serif}
.gec-professional .gec-bonus-table thead th{background:#faf0d8;font-family:'Bebas Neue Bold',Arial,sans-serif;font-size:13px;letter-spacing:.6px;text-transform:uppercase;text-align:left;color:#59431a;padding:10px 12px}
.gec-professional .gec-bonus-table thead th:first-child{width:36%}
.gec-professional .gec-bonus-table tbody th,.gec-professional .gec-bonus-table td{padding:13px 12px;text-align:left;vertical-align:top;border-top:1px solid #eceef0;font:12px/1.75 Arial,sans-serif;color:#343b3f;overflow-wrap:anywhere}
.gec-professional .gec-bonus-table td{border-left:1px solid #eceef0}
.gec-professional .gec-bonus-table tbody tr:hover{background:#fffcf4}
.gec-professional .gec-bonus-name{display:flex;align-items:center;gap:9px}
.gec-professional .gec-bonus-name strong{font-size:12px;color:#292e30}
.gec-professional .gec-bonus-icon{width:30px;height:30px;flex:0 0 30px;display:inline-flex;align-items:center;justify-content:center;border:1px solid #e4e2db;background:#f8f7f3;border-radius:9px;font-size:17px}
.gec-professional .gec-bonus-icon img{width:23px;height:23px;object-fit:contain}
.gec-professional .gec-bonus-stars{display:block;color:#aa7912;font-size:10px;letter-spacing:2px;line-height:1.3;margin-top:3px}
@media(max-width:560px){.gec-professional .gec-panel{padding:11px}.gec-professional .gec-rules{grid-template-columns:1fr}.gec-professional .gec-rules>div+div{border-left:0;border-top:1px solid #e5d9b8;margin:10px 0 0;padding:10px 0 0}.gec-professional .gec-day{min-height:0;padding:10px}.gec-professional .gec-chip{font-size:12px}.gec-professional .gec-bonus-table thead th:first-child{width:43%}.gec-professional .gec-bonus-table tbody th,.gec-professional .gec-bonus-table td{padding:10px 8px}.gec-professional .gec-bonus-name{align-items:flex-start;gap:6px}.gec-professional .gec-bonus-icon{width:25px;height:25px;flex-basis:25px}}

/* Today: restrained gold inset edge, no blue outer frame. */
.gec-professional .gec-current{outline:none;background:#fffdf5;border:1px solid #caa54d;box-shadow:inset 0 0 0 1px #ead9a7}
.gec-professional .gec-current .gec-dayhead{border-bottom:1px solid #ecdfbc;padding-bottom:7px;margin-bottom:8px}
.gec-professional .gec-current time{color:#795613}
.gec-professional .gec-current .gec-today{display:inline-block;background:#f0e3bc;color:#775515;border:0;border-radius:4px;padding:2px 4px;font:600 9px/1.4 Arial,sans-serif}
.gec-professional .gec-key-today{background:#8c681e}
/* Sidebar matches the white panels and pale gold tables of Server Info. */
.gec-widget-refined .box-content{padding:14px!important;background:#f8fafb;border:1px solid #fff;border-top:0;border-radius:0 0 12px 12px;font-family:Arial,sans-serif}
.gec-widget-refined .gec-mini-heading{text-align:center;padding:1px 0 12px;margin-bottom:8px;border-bottom:1px solid #e7e9e9}
.gec-widget-refined .gec-mini-eyebrow{display:block;font:600 9px/1.5 Arial,sans-serif;letter-spacing:1.3px;text-transform:uppercase;color:#929185;margin-bottom:3px}
.gec-widget-refined .gec-mini-title{font:600 17px/1.5 Arial,sans-serif;color:#73561b;margin:0}
.gec-widget-refined .gec-mini-grid{gap:5px}
.gec-widget-refined .gec-mini-label{background:#f5eedc;border-radius:4px;color:#827045;padding:5px 0;font:600 10px/1.4 Arial,sans-serif}
.gec-widget-refined .gec-mini-cell{min-height:55px;border:1px solid #e2e6e7;background:#fff;border-radius:7px;position:relative;box-shadow:0 1px 1px #26303804}
.gec-widget-refined .gec-mini-cell summary{padding:5px 1px 4px;min-height:53px}
.gec-widget-refined .gec-no-events{padding-top:5px}
.gec-widget-refined .gec-day-number{font:600 11px/17px Arial,sans-serif;color:#586165}
.gec-widget-refined .gec-day-number small{font-size:8px;font-weight:400}
.gec-widget-refined .gec-has-events{background:#fcf5e4;border-color:#e5d4a4;box-shadow:inset 0 2px 0 #d5ad4e}
.gec-widget-refined .gec-has-events .gec-day-number{color:#75571d}
.gec-widget-refined .gec-has-events:hover,.gec-widget-refined .gec-has-events[open]{background:#f7ebcc;border-color:#be963c}
.gec-widget-refined .gec-day-icons{gap:2px;height:25px;font-size:19px}
.gec-widget-refined .gec-day-icons b{font:600 8px/13px Arial,sans-serif;background:#eaddb8;border-radius:4px;padding:0 2px;color:#7c6028}
.gec-widget-refined .gec-mini-past{background:#f0f2f3;border-color:#e5e8e9;box-shadow:none}
.gec-widget-refined .gec-mini-past .gec-day-number{color:#939b9f}
.gec-widget-refined .gec-mini-past .gec-day-icons{opacity:.45}
.gec-widget-refined .gec-mini-today{outline:none;border-color:#ac8735;background:#fffdf6;box-shadow:inset 0 0 0 1px #eadbb3}
.gec-widget-refined .gec-mini-today .gec-day-number{background:#967126;color:#fff;width:max-content;min-width:20px;margin:0 auto;border-radius:4px;padding:0 3px}
.gec-widget-refined .gec-mini-hint{font:10px/1.5 Arial,sans-serif!important;color:#8a908f;margin:12px 0!important}
.gec-widget-refined .gec-open{background:#f5ecd5;border:1px solid #e7d9b3;border-radius:7px;padding:9px 8px;color:#78591c!important;font:600 11px/1.5 Arial,sans-serif;transition:background .15s}
.gec-widget-refined .gec-open:hover{background:#efe0b9}
.gec-widget-refined .gec-open:focus-visible{outline:2px solid #967126;outline-offset:2px}
.gec-widget-refined .gec-has-events::after{display:none}

/* The theme's .box:hover sweep belongs to the entire panel: disable it here. */
body .content .container .right-panel.premium-sidebar .box.gec-widget .box-content::before,
body .content .container .right-panel.premium-sidebar .box.gec-widget:hover .box-content::before,
.gec-widget.gec-widget-refined > .box-content::before {
 content:none!important;display:none!important;animation:none!important;transition:none!important;
}
/* Summary is the clipping boundary; the floating event popover remains outside it. */
.gec-widget-refined .gec-mini-cell > summary {
 position:relative;isolation:isolate;overflow:hidden;border-radius:6px;
}
.gec-widget-refined .gec-mini-cell > summary::after {
 content:"";position:absolute;inset:0;pointer-events:none;z-index:1;
 border-radius:inherit;clip-path:inset(0 round 6px);
 background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.55) 50%,transparent 70%);
 background-size:300% 100%;background-position:150% 0;opacity:0;
}
.gec-widget-refined .gec-mini-cell > summary:hover::after,
.gec-widget-refined .gec-mini-cell > summary:focus-visible::after {
 animation:gec-tile-hover-sweep .7s ease-out 1;
}
@keyframes gec-tile-hover-sweep {
 0%{background-position:150% 0;opacity:0}
 20%{opacity:1}
 80%{opacity:1}
 100%{background-position:-50% 0;opacity:0}
}
@media(prefers-reduced-motion:reduce){
 .gec-widget-refined .gec-mini-cell > summary::after{display:none;animation:none!important}
}
