#ilwjm-root{--navy:#0b2d59;--blue:#1e63bd;--bg:#edf2f7;--line:#d7dfe9;--green:#167c45;--gold:#8a6500;--red:#aa2132;--muted:#667085;color:#1f2937;font:14px Arial,sans-serif}
#ilwjm-root *{box-sizing:border-box}.ilwjm-app{display:grid;grid-template-columns:240px 1fr;min-height:850px;background:var(--bg);border-radius:12px;overflow:hidden}.ilwjm-side{background:linear-gradient(#0b2d59,#123f78);color:#fff;padding:18px 14px}.ilwjm-brand{font-size:19px;font-weight:700;line-height:1.25;margin:3px 8px 20px}.ilwjm-brand small{display:block;font-size:12px;font-weight:400;opacity:.72;margin-top:6px}.ilwjm-nav-label{font-size:10px;letter-spacing:.1em;text-transform:uppercase;opacity:.62;margin:18px 10px 5px}.ilwjm-nav{display:block;width:100%;border:0;border-radius:8px;padding:10px 11px;background:transparent;color:#fff;text-align:left;font-weight:700;cursor:pointer}.ilwjm-nav:hover,.ilwjm-nav.is-active{background:#ffffff29}.ilwjm-main{padding:20px;min-width:0}.ilwjm-top{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:16px}.ilwjm-top h1{margin:0;color:var(--navy);font-size:26px}.ilwjm-pill{font-size:12px;font-weight:700;border-radius:999px;padding:7px 10px;background:#fff1c9;color:#6c4b00;border:1px solid #e4c86d}.ilwjm-page{display:none}.ilwjm-page.is-active{display:block}.ilwjm-panel,.ilwjm-stat{background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 8px 24px #12305a12}.ilwjm-panel{padding:16px;margin-bottom:16px}.ilwjm-panel h2,.ilwjm-panel h3{color:var(--navy);margin-top:0}.ilwjm-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px}.ilwjm-stat{padding:14px}.ilwjm-stat b{display:block;font-size:28px;color:var(--navy)}.ilwjm-stat span,.ilwjm-muted{font-size:13px;color:var(--muted)}.ilwjm-grid2{display:grid;grid-template-columns:1fr 1fr;gap:16px}.ilwjm-grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.ilwjm-toolbar{display:flex;gap:9px;align-items:end;flex-wrap:wrap;margin:10px 0 14px}.ilwjm-field{display:flex;flex-direction:column;gap:5px}.ilwjm-field label{font-size:12px;font-weight:700;color:#334155}#ilwjm-root input,#ilwjm-root select,#ilwjm-root textarea{border:1px solid #cbd5e1;border-radius:8px;padding:9px 10px;background:#fff;font:inherit}#ilwjm-root input[type=search]{min-width:230px}#ilwjm-root textarea{min-width:180px;min-height:58px}.ilwjm-btn{border:0;border-radius:8px;padding:9px 12px;font-weight:700;cursor:pointer}.ilwjm-primary{background:var(--blue);color:#fff}.ilwjm-secondary{background:#e8edf3;color:#24364c}.ilwjm-outline{background:#fff;border:1px solid #b7c5d8;color:var(--navy)}.ilwjm-tabs{display:flex;gap:7px;flex-wrap:wrap;margin:10px 0 14px}.ilwjm-tab{border:0;border-radius:8px;padding:9px 12px;background:#e8edf3;font-weight:700;cursor:pointer}.ilwjm-tab.is-active{background:var(--blue);color:#fff}.ilwjm-note{padding:12px 14px;border-radius:9px;border:1px solid #bcd1ee;background:#edf5ff;color:#174c84;margin:12px 0}.ilwjm-warn{background:#fff6d8;border-color:#dfc76d;color:#684900}.ilwjm-good{background:#eaf6ee;border-color:#acd2ba;color:#155f37}.ilwjm-table{overflow:auto;border:1px solid var(--line);border-radius:10px}.ilwjm-table table{width:100%;border-collapse:collapse;font-size:13px}.ilwjm-table th,.ilwjm-table td{padding:9px 8px;border-bottom:1px solid #e5ebf1;text-align:left;vertical-align:middle}.ilwjm-table th{background:#f3f6fa;color:#2f4867;white-space:nowrap}.ilwjm-center{text-align:center!important}.ilwjm-status{display:inline-flex;border-radius:999px;padding:4px 7px;font-size:11px;font-weight:700}.ilwjm-green{background:#e8f5ed;color:var(--green)}.ilwjm-gold{background:#fff3ce;color:var(--gold)}.ilwjm-red{background:#fdecee;color:var(--red)}.ilwjm-blue{background:#eaf2ff;color:#18579f}.ilwjm-eval{border:1px solid var(--line);border-radius:10px;padding:14px}.ilwjm-rankgrid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.ilwjm-available{display:grid;grid-template-columns:1fr 1fr;gap:8px;max-height:560px;overflow:auto;padding-right:3px}.ilwjm-judgebtn{border:1px solid #cfd9e5;border-radius:8px;padding:10px;background:#fff;text-align:left;font-weight:700;cursor:pointer}.ilwjm-judgebtn:hover{border-color:var(--blue);background:#f3f8ff}.ilwjm-ranked{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:7px;min-height:160px}.ilwjm-rankitem{display:grid;grid-template-columns:28px 22px 1fr auto;gap:8px;align-items:center;border:1px solid #ccd7e4;border-radius:9px;padding:8px;background:#fff;cursor:grab}.ilwjm-rankitem.is-dragging{opacity:.45;border:2px dashed var(--blue)}.ilwjm-rankitem.is-over{border-top:4px solid var(--blue)}.ilwjm-handle{font-size:18px;color:#64748b;cursor:grab}.ilwjm-num{width:28px;height:28px;border-radius:50%;background:var(--navy);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700}.ilwjm-move{border:0;border-radius:6px;padding:5px 7px;background:#e8edf3;font-weight:700;cursor:pointer}.ilwjm-progress{height:10px;border-radius:999px;background:#e5eaf0;overflow:hidden;margin:8px 0}.ilwjm-progress i{display:block;height:100%;background:var(--blue);width:0}.ilwjm-selection-layout{display:grid;grid-template-columns:minmax(520px,1.35fr) minmax(320px,.65fr);gap:16px}.ilwjm-selected-box{border:1px solid var(--line);border-radius:10px;padding:12px;background:#f9fbfd}.ilwjm-selected-list{display:flex;flex-direction:column;gap:7px}.ilwjm-selected-row{display:grid;grid-template-columns:28px 1fr auto;gap:8px;align-items:center;padding:8px;border:1px solid #cdd7e3;border-radius:8px;background:#fff}.ilwjm-set-card{border:1px solid var(--line);border-radius:12px;background:#fff;margin-bottom:16px;overflow:hidden}.ilwjm-set-head{padding:14px 16px;background:#f3f6fa;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:12px;align-items:center}.ilwjm-set-body{padding:16px}.ilwjm-eventgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:14px}.ilwjm-event{border:1px solid var(--line);border-radius:9px;padding:11px;background:#f9fbfd}.ilwjm-event h4{margin:0 0 9px;color:var(--navy)}.ilwjm-lock{max-width:540px;margin:40px auto}.ilwjm-hidden{display:none!important}.ilwjm-multi{display:grid;grid-template-columns:repeat(2,minmax(145px,1fr));gap:4px;min-width:310px}.ilwjm-levels{display:grid;grid-template-columns:repeat(4,minmax(62px,1fr));gap:5px;min-width:300px}.ilwjm-levels label{border:1px solid #d7dfe9;border-radius:6px;padding:5px;background:#f9fbfd;white-space:nowrap}.ilwjm-checkrow td{background:#eff8f2}.ilwjm-blocked td{background:#fff2f2;color:#7c2d2d}.ilwjm-sticky-actions{position:sticky;bottom:0;padding:10px 0;background:#edf2f7e8;backdrop-filter:blur(6px)}.ilwjm-count-ok{color:var(--green)}.ilwjm-count-bad{color:var(--red)}.ilwjm-message{padding:12px 14px;border-radius:9px;margin-bottom:14px;background:#eaf6ee;border:1px solid #acd2ba;color:#155f37}.ilwjm-message.is-error{background:#fdecee;border-color:#e5aab2;color:#8b1d2c}.ilwjm-loading{padding:35px;text-align:center;color:var(--muted)}@media(max-width:1100px){.ilwjm-cards{grid-template-columns:1fr 1fr}.ilwjm-eventgrid{grid-template-columns:1fr 1fr}.ilwjm-selection-layout{grid-template-columns:1fr}}@media(max-width:820px){.ilwjm-app{grid-template-columns:1fr}.ilwjm-grid2,.ilwjm-grid3,.ilwjm-rankgrid{grid-template-columns:1fr}.ilwjm-available{grid-template-columns:1fr}}@media(max-width:520px){.ilwjm-main{padding:12px}.ilwjm-cards,.ilwjm-eventgrid{grid-template-columns:1fr}.ilwjm-top{align-items:flex-start;flex-direction:column}}

/* Version 1.0.1: full-width portal page. These rules apply only to the
   committee system page and do not affect the separate coach-voting plugin. */
body.ilwjm-portal-page #content,
body.ilwjm-portal-page .site-content,
body.ilwjm-portal-page .content-area,
body.ilwjm-portal-page .site-main,
body.ilwjm-portal-page .entry-content,
body.ilwjm-portal-page .wp-site-blocks,
body.ilwjm-portal-page main {
    width: 100% !important;
    max-width: none !important;
}
body.ilwjm-portal-page .widget-area,
body.ilwjm-portal-page #secondary,
body.ilwjm-portal-page aside.sidebar,
body.ilwjm-portal-page .sidebar-primary,
body.ilwjm-portal-page .site-sidebar {
    display: none !important;
}
body.ilwjm-portal-page .ilwjm-portal-content-area {
    width: 100% !important;
    max-width: none !important;
    float: none !important;
    margin: 0 !important;
    padding: 18px clamp(12px, 2vw, 32px) 32px !important;
}
body.ilwjm-portal-page .ilwjm-portal-site-main,
body.ilwjm-portal-page .ilwjm-portal-article,
body.ilwjm-portal-page .ilwjm-portal-entry-content {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}
body.ilwjm-portal-page .ilwjm-portal-article > .entry-header,
body.ilwjm-portal-page .ilwjm-portal-article > header.entry-header {
    display: none !important;
}
body.ilwjm-portal-page #ilwjm-root {
    width: 100% !important;
    max-width: none !important;
    margin: 0 auto !important;
}
body.ilwjm-portal-page .ilwjm-app {
    width: 100% !important;
    max-width: none !important;
}
#ilwjm-root .ilwjm-table {
    width: 100%;
    max-width: 100%;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
}
#ilwjm-root .ilwjm-table table {
    min-width: 880px;
}
#ilwjm-root #ilwjm-regional .ilwjm-table table,
#ilwjm-root #ilwjm-state .ilwjm-table table,
#ilwjm-root #ilwjm-results .ilwjm-table table {
    min-width: 1050px;
}
#ilwjm-root #ilwjm-judges .ilwjm-table table {
    min-width: 1650px;
}
@media (min-width: 1400px) {
    body.ilwjm-portal-page .ilwjm-portal-content-area {
        padding-left: 28px !important;
        padding-right: 28px !important;
    }
    #ilwjm-root .ilwjm-main {
        padding: 24px;
    }
}


/* Version 1.0.2: Heather-controlled release of ranking numbers. */
#ilwjm-root .ilwjm-visibility-settings {
    display: grid;
    grid-template-columns: repeat(2, minmax(280px, 1fr));
    gap: 12px;
    margin: 12px 0 18px;
}
#ilwjm-root .ilwjm-visibility-option {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    border: 1px solid var(--line);
    border-radius: 10px;
    padding: 13px;
    background: #f9fbfd;
    cursor: pointer;
}
#ilwjm-root .ilwjm-visibility-option input {
    margin-top: 3px;
}
#ilwjm-root .ilwjm-visibility-option span {
    display: flex;
    flex-direction: column;
    gap: 4px;
}
#ilwjm-root .ilwjm-visibility-option small {
    color: var(--muted);
    line-height: 1.35;
}
@media (max-width: 760px) {
    #ilwjm-root .ilwjm-visibility-settings {
        grid-template-columns: 1fr;
    }
}


/* Version 1.0.3: compact selected-judge rows so more names fit onscreen. */
#ilwjm-root .ilwjm-ranked {
    gap: 4px;
}
#ilwjm-root .ilwjm-rankitem {
    grid-template-columns: 23px 17px minmax(0, 1fr) auto;
    gap: 5px;
    min-height: 34px;
    padding: 4px 6px;
    border-radius: 7px;
    font-size: 12.5px;
    line-height: 1.15;
}
#ilwjm-root .ilwjm-rankitem .ilwjm-num,
#ilwjm-root .ilwjm-selected-row .ilwjm-num {
    width: 22px;
    height: 22px;
    font-size: 11px;
}
#ilwjm-root .ilwjm-rankitem .ilwjm-handle {
    font-size: 15px;
    line-height: 1;
}
#ilwjm-root .ilwjm-rankitem .ilwjm-move,
#ilwjm-root .ilwjm-selected-row .ilwjm-move {
    padding: 2px 5px;
    border-radius: 5px;
    font-size: 12px;
    line-height: 1.2;
}
#ilwjm-root .ilwjm-selected-box {
    padding: 10px;
}
#ilwjm-root .ilwjm-selected-box h3 {
    margin-bottom: 6px;
}
#ilwjm-root .ilwjm-selected-list {
    gap: 4px;
}
#ilwjm-root .ilwjm-selected-row {
    grid-template-columns: 23px minmax(0, 1fr) auto;
    gap: 5px;
    min-height: 32px;
    padding: 4px 6px;
    border-radius: 7px;
    font-size: 12.5px;
    line-height: 1.15;
}
#ilwjm-root .ilwjm-rankitem b,
#ilwjm-root .ilwjm-selected-row b {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}


/* Version 1.0.4: prevent WordPress theme list/button rules from enlarging voting rows. */
#ilwjm-root #ilwjm-ranked.ilwjm-ranked {
    display: flex !important;
    flex-direction: column !important;
    gap: 4px !important;
    min-height: 80px !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}
#ilwjm-root #ilwjm-ranked .ilwjm-rankitem {
    display: grid !important;
    grid-template-columns: 22px 17px minmax(0, 1fr) auto !important;
    grid-template-rows: 1fr !important;
    align-items: center !important;
    column-gap: 6px !important;
    row-gap: 0 !important;
    width: 100% !important;
    min-height: 34px !important;
    height: auto !important;
    margin: 0 !important;
    padding: 5px 7px !important;
    border: 1px solid #ccd7e4 !important;
    border-radius: 7px !important;
    background: #fff !important;
    font-size: 13px !important;
    line-height: 1.15 !important;
}
#ilwjm-root #ilwjm-ranked .ilwjm-rankitem::before,
#ilwjm-root #ilwjm-ranked .ilwjm-rankitem::after {
    display: none !important;
    content: none !important;
}
#ilwjm-root #ilwjm-ranked .ilwjm-num {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 22px !important;
    min-width: 22px !important;
    height: 22px !important;
    min-height: 22px !important;
    margin: 0 !important;
    padding: 0 !important;
    border-radius: 50% !important;
    font-size: 11px !important;
    line-height: 1 !important;
}
#ilwjm-root #ilwjm-ranked .ilwjm-handle {
    display: inline-block !important;
    width: 17px !important;
    margin: 0 !important;
    padding: 0 !important;
    font-size: 15px !important;
    line-height: 1 !important;
}
#ilwjm-root #ilwjm-ranked .ilwjm-rank-name {
    display: block !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    font-size: 13px !important;
    line-height: 1.15 !important;
}
#ilwjm-root #ilwjm-ranked .ilwjm-rank-actions {
    display: inline-flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 3px !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
}
#ilwjm-root #ilwjm-ranked .ilwjm-rank-actions .ilwjm-move {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 27px !important;
    min-width: 27px !important;
    max-width: 27px !important;
    height: 27px !important;
    min-height: 27px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 5px !important;
    font-size: 14px !important;
    line-height: 1 !important;
}
@media (max-width: 540px) {
    #ilwjm-root #ilwjm-ranked .ilwjm-rankitem {
        grid-template-columns: 22px 16px minmax(0, 1fr) auto !important;
        column-gap: 4px !important;
        padding: 4px 5px !important;
    }
    #ilwjm-root #ilwjm-ranked .ilwjm-rank-actions .ilwjm-move {
        width: 25px !important;
        min-width: 25px !important;
        max-width: 25px !important;
        height: 25px !important;
        min-height: 25px !important;
    }
}


/* Version 1.0.5: use a top navigation bar and fit Regional/State data on one screen. */
#ilwjm-root.ilwjm-app {
    display: block !important;
    width: 100% !important;
}
#ilwjm-root .ilwjm-side {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 6px !important;
    width: 100% !important;
    padding: 10px 12px !important;
    border-radius: 12px 12px 0 0 !important;
}
#ilwjm-root .ilwjm-brand {
    flex: 1 1 100% !important;
    margin: 0 0 5px !important;
    padding: 0 4px !important;
    font-size: 18px !important;
}
#ilwjm-root .ilwjm-brand small {
    display: inline !important;
    margin-left: 8px !important;
}
#ilwjm-root .ilwjm-nav-label {
    display: none !important;
}
#ilwjm-root .ilwjm-nav {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 8px 10px !important;
    font-size: 13px !important;
    white-space: nowrap !important;
}
#ilwjm-root .ilwjm-main {
    width: 100% !important;
    padding: 14px 16px 20px !important;
}
#ilwjm-root .ilwjm-selection-layout {
    display: block !important;
}
#ilwjm-root .ilwjm-selected-top {
    margin: 8px 0 14px !important;
    padding: 10px !important;
}
#ilwjm-root .ilwjm-selected-heading {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    gap: 10px !important;
    margin-bottom: 7px !important;
}
#ilwjm-root .ilwjm-selected-heading h3,
#ilwjm-root .ilwjm-selected-heading p {
    margin: 0 !important;
}
#ilwjm-root .ilwjm-selected-top .ilwjm-selected-list {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 5px !important;
}
#ilwjm-root .ilwjm-selected-top .ilwjm-selected-row {
    min-width: 0 !important;
    min-height: 31px !important;
    padding: 4px 6px !important;
}
#ilwjm-root .ilwjm-table-toolbar {
    margin-bottom: 8px !important;
}
#ilwjm-root .ilwjm-fit-table {
    overflow: visible !important;
}
#ilwjm-root .ilwjm-fit-table table {
    width: 100% !important;
    min-width: 0 !important;
    table-layout: fixed !important;
    font-size: 12.5px !important;
}
#ilwjm-root .ilwjm-fit-table th,
#ilwjm-root .ilwjm-fit-table td {
    padding: 7px 6px !important;
    overflow-wrap: anywhere !important;
}
#ilwjm-root .ilwjm-fit-table th {
    white-space: normal !important;
    line-height: 1.15 !important;
}
#ilwjm-root .ilwjm-regional-table th:nth-child(1),
#ilwjm-root .ilwjm-regional-table td:nth-child(1),
#ilwjm-root .ilwjm-state-table th:nth-child(1),
#ilwjm-root .ilwjm-state-table td:nth-child(1) {
    width: 58px !important;
}
#ilwjm-root .ilwjm-regional-table th:nth-child(2),
#ilwjm-root .ilwjm-regional-table td:nth-child(2) {
    width: 28% !important;
}
#ilwjm-root .ilwjm-regional-table th:nth-child(3),
#ilwjm-root .ilwjm-regional-table td:nth-child(3) {
    width: 24% !important;
}
#ilwjm-root .ilwjm-regional-table th:nth-child(4),
#ilwjm-root .ilwjm-regional-table td:nth-child(4) {
    width: 15% !important;
}
#ilwjm-root .ilwjm-regional-table th:nth-child(5),
#ilwjm-root .ilwjm-regional-table td:nth-child(5) {
    width: 9% !important;
}
#ilwjm-root .ilwjm-regional-table th:nth-child(6),
#ilwjm-root .ilwjm-regional-table td:nth-child(6) {
    width: 12% !important;
}
#ilwjm-root .ilwjm-state-table th:nth-child(2),
#ilwjm-root .ilwjm-state-table td:nth-child(2) {
    width: 28% !important;
}
#ilwjm-root .ilwjm-state-table th:nth-child(3),
#ilwjm-root .ilwjm-state-table td:nth-child(3) {
    width: 27% !important;
}
#ilwjm-root .ilwjm-state-table th:nth-child(4),
#ilwjm-root .ilwjm-state-table td:nth-child(4) {
    width: 14% !important;
}
#ilwjm-root .ilwjm-state-table th:nth-child(5),
#ilwjm-root .ilwjm-state-table td:nth-child(5) {
    width: 12% !important;
}
#ilwjm-root .ilwjm-state-table th:nth-child(6),
#ilwjm-root .ilwjm-state-table td:nth-child(6) {
    width: 145px !important;
}
#ilwjm-root .ilwjm-state-table select {
    width: 100% !important;
    min-width: 0 !important;
    padding: 6px 7px !important;
}
#ilwjm-root .ilwjm-ranking-cell {
    display: flex !important;
    flex-direction: column !important;
    gap: 2px !important;
    line-height: 1.2 !important;
}
#ilwjm-root .ilwjm-ranking-cell span {
    display: block !important;
}
#ilwjm-root .ilwjm-state-ranking {
    font-size: 12px !important;
}
#ilwjm-root #ilwjm-regional .ilwjm-table table,
#ilwjm-root #ilwjm-state .ilwjm-table table {
    min-width: 0 !important;
}
@media (max-width: 1050px) {
    #ilwjm-root .ilwjm-selected-top .ilwjm-selected-list {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }
}
@media (max-width: 850px) {
    #ilwjm-root .ilwjm-selected-top .ilwjm-selected-list {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
    #ilwjm-root .ilwjm-fit-table {
        overflow-x: auto !important;
    }
    #ilwjm-root .ilwjm-fit-table table {
        min-width: 760px !important;
    }
}
@media (max-width: 560px) {
    #ilwjm-root .ilwjm-side {
        align-items: stretch !important;
    }
    #ilwjm-root .ilwjm-nav {
        flex: 1 1 calc(50% - 6px) !important;
    }
    #ilwjm-root .ilwjm-selected-top .ilwjm-selected-list {
        grid-template-columns: 1fr !important;
    }
}


/* Version 1.0.6: Heather's Judges page uses readable vertical cards, not a wide table. */
#ilwjm-root .ilwjm-judges-panel {
    overflow: visible !important;
}
#ilwjm-root .ilwjm-judge-toolbar {
    position: sticky !important;
    top: 0 !important;
    z-index: 15 !important;
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 10px !important;
    margin: 12px 0 14px !important;
    padding: 10px !important;
    border: 1px solid #d7dfe9 !important;
    border-radius: 9px !important;
    background: rgba(255,255,255,.96) !important;
    box-shadow: 0 5px 16px rgba(18,48,90,.08) !important;
    backdrop-filter: blur(6px) !important;
}
#ilwjm-root .ilwjm-judge-toolbar input[type="search"] {
    flex: 1 1 300px !important;
    min-width: 230px !important;
}
#ilwjm-root .ilwjm-judge-toolbar .ilwjm-muted {
    margin-right: auto !important;
    white-space: nowrap !important;
}
#ilwjm-root .ilwjm-judge-card-list {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
}
#ilwjm-root .ilwjm-judge-card {
    margin: 0 !important;
    padding: 0 !important;
    border: 1px solid #cbd7e5 !important;
    border-radius: 11px !important;
    background: #fff !important;
    box-shadow: 0 4px 14px rgba(18,48,90,.06) !important;
    overflow: hidden !important;
}
#ilwjm-root .ilwjm-judge-card-header {
    display: grid !important;
    grid-template-columns: minmax(260px, 1fr) minmax(180px, 260px) !important;
    gap: 12px !important;
    align-items: end !important;
    padding: 12px 14px !important;
    border-bottom: 1px solid #d7dfe9 !important;
    background: #f3f7fc !important;
}
#ilwjm-root .ilwjm-judge-card-header input,
#ilwjm-root .ilwjm-judge-card-header select {
    width: 100% !important;
    min-width: 0 !important;
    font-weight: 700 !important;
}
#ilwjm-root .ilwjm-judge-card-grid {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 10px !important;
    padding: 12px !important;
}
#ilwjm-root .ilwjm-judge-card-section {
    min-width: 0 !important;
    padding: 11px !important;
    border: 1px solid #dbe3ec !important;
    border-radius: 9px !important;
    background: #fbfcfe !important;
}
#ilwjm-root .ilwjm-judge-card-section h3 {
    margin: 0 0 3px !important;
    font-size: 15px !important;
    line-height: 1.2 !important;
}
#ilwjm-root .ilwjm-card-help {
    margin: 0 0 9px !important;
    color: #667085 !important;
    font-size: 12px !important;
    line-height: 1.25 !important;
}
#ilwjm-root .ilwjm-level-section {
    grid-column: span 2 !important;
}
#ilwjm-root .ilwjm-affiliation-section {
    grid-column: span 2 !important;
}
#ilwjm-root .ilwjm-head-section {
    grid-column: span 1 !important;
}
#ilwjm-root .ilwjm-level-card-grid {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(85px,1fr)) !important;
    gap: 6px !important;
}
#ilwjm-root .ilwjm-level-card-grid label,
#ilwjm-root .ilwjm-affiliation-type-grid label,
#ilwjm-root .ilwjm-card-check {
    display: flex !important;
    align-items: center !important;
    gap: 7px !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 7px 8px !important;
    border: 1px solid #d7dfe9 !important;
    border-radius: 7px !important;
    background: #fff !important;
    line-height: 1.15 !important;
    cursor: pointer !important;
}
#ilwjm-root .ilwjm-level-card-grid input,
#ilwjm-root .ilwjm-affiliation-type-grid input,
#ilwjm-root .ilwjm-card-check input {
    flex: 0 0 auto !important;
    margin: 0 !important;
}
#ilwjm-root .ilwjm-level-card-grid span,
#ilwjm-root .ilwjm-affiliation-type-grid span,
#ilwjm-root .ilwjm-card-check span {
    min-width: 0 !important;
    font-size: 12.5px !important;
}
#ilwjm-root .ilwjm-card-check-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 6px !important;
}
#ilwjm-root .ilwjm-section-title-row {
    display: flex !important;
    justify-content: space-between !important;
    align-items: flex-start !important;
    gap: 10px !important;
    margin-bottom: 9px !important;
}
#ilwjm-root .ilwjm-section-title-row .ilwjm-card-check {
    flex: 0 0 auto !important;
    padding: 6px 8px !important;
}
#ilwjm-root .ilwjm-card-subsection {
    margin-bottom: 10px !important;
}
#ilwjm-root .ilwjm-card-subsection > b {
    display: block !important;
    margin-bottom: 6px !important;
    font-size: 12px !important;
}
#ilwjm-root .ilwjm-affiliation-type-grid {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(120px,1fr)) !important;
    gap: 5px !important;
}
#ilwjm-root .ilwjm-judge-card textarea {
    width: 100% !important;
    min-width: 0 !important;
    min-height: 68px !important;
    resize: vertical !important;
}
#ilwjm-root .ilwjm-judge-save-bottom {
    display: flex !important;
    justify-content: flex-end !important;
    margin-top: 14px !important;
    padding: 12px !important;
    border-top: 1px solid #d7dfe9 !important;
}
@media (max-width: 1050px) {
    #ilwjm-root .ilwjm-judge-card-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
    #ilwjm-root .ilwjm-level-section,
    #ilwjm-root .ilwjm-affiliation-section,
    #ilwjm-root .ilwjm-head-section {
        grid-column: span 2 !important;
    }
}
@media (max-width: 720px) {
    #ilwjm-root .ilwjm-judge-card-header,
    #ilwjm-root .ilwjm-judge-card-grid {
        grid-template-columns: 1fr !important;
    }
    #ilwjm-root .ilwjm-level-section,
    #ilwjm-root .ilwjm-affiliation-section,
    #ilwjm-root .ilwjm-head-section {
        grid-column: span 1 !important;
    }
    #ilwjm-root .ilwjm-level-card-grid {
        grid-template-columns: repeat(2, minmax(100px,1fr)) !important;
    }
    #ilwjm-root .ilwjm-affiliation-type-grid {
        grid-template-columns: repeat(2, minmax(120px,1fr)) !important;
    }
    #ilwjm-root .ilwjm-section-title-row {
        flex-direction: column !important;
    }
}
@media (max-width: 450px) {
    #ilwjm-root .ilwjm-level-card-grid,
    #ilwjm-root .ilwjm-affiliation-type-grid {
        grid-template-columns: 1fr !important;
    }
}


/* Version 1.0.7: protected report builder and print-ready output. */
#ilwjm-root .ilwjm-report-presets {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 7px !important;
    margin: 12px 0 16px !important;
}
#ilwjm-root .ilwjm-report-presets .ilwjm-btn {
    padding: 8px 10px !important;
    font-size: 12.5px !important;
}
#ilwjm-root .ilwjm-report-controls {
    padding: 13px !important;
    border: 1px solid #d7dfe9 !important;
    border-radius: 10px !important;
    background: #f8fafc !important;
}
#ilwjm-root .ilwjm-report-title-field {
    max-width: 650px !important;
    margin-bottom: 12px !important;
}
#ilwjm-root .ilwjm-report-filter-grid {
    display: grid !important;
    grid-template-columns: repeat(5, minmax(150px,1fr)) !important;
    gap: 10px !important;
    margin-bottom: 14px !important;
}
#ilwjm-root .ilwjm-report-filter-grid select,
#ilwjm-root .ilwjm-report-filter-grid input {
    width: 100% !important;
    min-width: 0 !important;
}
#ilwjm-root .ilwjm-report-column-grid {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(170px,1fr)) !important;
    gap: 6px !important;
}
#ilwjm-root .ilwjm-report-column {
    display: flex !important;
    align-items: center !important;
    gap: 7px !important;
    margin: 0 !important;
    padding: 7px 8px !important;
    border: 1px solid #d7dfe9 !important;
    border-radius: 7px !important;
    background: #fff !important;
    cursor: pointer !important;
}
#ilwjm-root .ilwjm-report-column input {
    margin: 0 !important;
}
#ilwjm-root .ilwjm-report-actions {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: flex-end !important;
    gap: 8px !important;
    margin-top: 14px !important;
}
#ilwjm-root .ilwjm-report-preview {
    overflow: auto !important;
}
#ilwjm-root .ilwjm-report-document {
    min-width: 850px !important;
    background: #fff !important;
    color: #172033 !important;
}
#ilwjm-root .ilwjm-report-header {
    display: flex !important;
    justify-content: space-between !important;
    align-items: end !important;
    gap: 15px !important;
    padding-bottom: 9px !important;
    border-bottom: 2px solid #0b2d59 !important;
}
#ilwjm-root .ilwjm-report-header h2,
#ilwjm-root .ilwjm-report-header p {
    margin: 0 !important;
}
#ilwjm-root .ilwjm-report-summary {
    display: grid !important;
    grid-template-columns: repeat(6, minmax(100px,1fr)) !important;
    gap: 7px !important;
    margin: 12px 0 !important;
}
#ilwjm-root .ilwjm-report-summary > div {
    padding: 9px !important;
    border: 1px solid #d7dfe9 !important;
    border-radius: 8px !important;
    background: #f7f9fc !important;
    text-align: center !important;
}
#ilwjm-root .ilwjm-report-summary b {
    display: block !important;
    color: #0b2d59 !important;
    font-size: 20px !important;
}
#ilwjm-root .ilwjm-report-summary span {
    font-size: 11px !important;
    color: #667085 !important;
}
#ilwjm-root .ilwjm-report-table {
    width: 100% !important;
    border-collapse: collapse !important;
    table-layout: auto !important;
    font-size: 11.5px !important;
}
#ilwjm-root .ilwjm-report-table th,
#ilwjm-root .ilwjm-report-table td {
    padding: 6px !important;
    border: 1px solid #cbd5e1 !important;
    vertical-align: top !important;
    overflow-wrap: anywhere !important;
}
#ilwjm-root .ilwjm-report-table th {
    background: #eaf0f7 !important;
    color: #193b65 !important;
    white-space: normal !important;
}
#ilwjm-root .ilwjm-report-pre {
    white-space: pre-line !important;
    min-width: 300px !important;
}
@media (max-width: 1100px) {
    #ilwjm-root .ilwjm-report-filter-grid {
        grid-template-columns: repeat(3, minmax(150px,1fr)) !important;
    }
    #ilwjm-root .ilwjm-report-column-grid {
        grid-template-columns: repeat(3, minmax(160px,1fr)) !important;
    }
}
@media (max-width: 750px) {
    #ilwjm-root .ilwjm-report-filter-grid,
    #ilwjm-root .ilwjm-report-column-grid {
        grid-template-columns: repeat(2, minmax(140px,1fr)) !important;
    }
}
@media (max-width: 480px) {
    #ilwjm-root .ilwjm-report-filter-grid,
    #ilwjm-root .ilwjm-report-column-grid {
        grid-template-columns: 1fr !important;
    }
}


/* Version 1.0.8: immediate voting controls and single-source report selector. */
#ilwjm-root .ilwjm-now-card {
    display: grid !important;
    grid-template-columns: minmax(220px,1fr) auto !important;
    gap: 8px 10px !important;
    align-items: end !important;
    padding: 12px !important;
    border: 1px solid #d7dfe9 !important;
    border-radius: 9px !important;
    background: #f8fafc !important;
}
#ilwjm-root .ilwjm-now-card small {
    grid-column: 1 / -1 !important;
    color: #667085 !important;
    line-height: 1.3 !important;
}
#ilwjm-root .ilwjm-start-now {
    background: #157347 !important;
    color: #fff !important;
    white-space: nowrap !important;
}
#ilwjm-root .ilwjm-end-now {
    background: #b42318 !important;
    color: #fff !important;
    white-space: nowrap !important;
}
@media (max-width: 650px) {
    #ilwjm-root .ilwjm-now-card {
        grid-template-columns: 1fr !important;
    }
    #ilwjm-root .ilwjm-now-card small {
        grid-column: 1 !important;
    }
}


/* Version 1.0.10: automatic report refresh notice. */
#ilwjm-root .ilwjm-report-update-flash {
    position: sticky !important;
    top: 8px !important;
    z-index: 30 !important;
    width: max-content !important;
    max-width: calc(100% - 20px) !important;
    margin: 0 auto -4px !important;
    padding: 8px 14px !important;
    border-radius: 999px !important;
    background: #157347 !important;
    color: #fff !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    text-align: center !important;
    box-shadow: 0 6px 18px rgba(0,0,0,.18) !important;
    opacity: 0 !important;
    transform: translateY(-7px) scale(.96) !important;
    pointer-events: none !important;
    transition: opacity .14s ease, transform .14s ease !important;
}
#ilwjm-root .ilwjm-report-update-flash.is-visible {
    opacity: 1 !important;
    transform: translateY(0) scale(1) !important;
}


/* Version 1.0.11: State Meet availability, judge sorting, and optional second Meet Referee. */
#ilwjm-root .ilwjm-judge-sort-field {
    flex: 0 1 190px !important;
    margin: 0 !important;
}
#ilwjm-root .ilwjm-judge-sort-field label {
    font-size: 11px !important;
}
#ilwjm-root .ilwjm-state-availability-section {
    grid-column: 1 / -1 !important;
}
#ilwjm-root .ilwjm-state-availability-grid {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(190px, 1fr)) !important;
    gap: 8px !important;
}
#ilwjm-root .ilwjm-state-availability-grid .ilwjm-field {
    margin: 0 !important;
    padding: 8px !important;
    border: 1px solid #d7dfe9 !important;
    border-radius: 7px !important;
    background: #fff !important;
}
#ilwjm-root .ilwjm-state-availability-grid label {
    min-height: 30px !important;
    font-size: 11.5px !important;
    line-height: 1.2 !important;
}
#ilwjm-root .ilwjm-state-availability-grid select {
    width: 100% !important;
}
#ilwjm-root .ilwjm-referee-toolbar {
    align-items: end !important;
}
#ilwjm-root .ilwjm-referee-toolbar .ilwjm-field {
    min-width: 220px !important;
    flex: 1 1 240px !important;
}
#ilwjm-root .ilwjm-selected-row .ilwjm-status {
    margin-left: auto !important;
    white-space: nowrap !important;
}
#ilwjm-root .ilwjm-status.ilwjm-bad {
    background: #fde8e7 !important;
    color: #9b1c1c !important;
}
#ilwjm-root .ilwjm-report-availability-line {
    display: block !important;
    margin-bottom: 3px !important;
    white-space: normal !important;
}
@media (max-width: 1000px) {
    #ilwjm-root .ilwjm-state-availability-grid {
        grid-template-columns: repeat(2, minmax(180px, 1fr)) !important;
    }
}
@media (max-width: 620px) {
    #ilwjm-root .ilwjm-state-availability-grid {
        grid-template-columns: 1fr !important;
    }
}
