/* Jams borrow the arcade's paper, ink, and solid shadows. The blue arrow is
   reserved for votes; yellow stars mark results, independently of game ratings. */
.jam-banner,.jam-phase-card{--jam-color:#a9c9ff;border:2px solid var(--border);border-radius:var(--radius-panel,16px);background:color-mix(in srgb,var(--jam-color) 32%,var(--panel));box-shadow:4px 4px 0 #000;padding:22px;display:flex;align-items:center;gap:22px;margin:20px 0 30px;color:var(--ink)}
.jam-banner-copy{flex:1;min-width:0}.jam-banner h2{font-size:27px;margin:5px 0 8px}.jam-banner p{font-size:13px;margin:0;line-height:1.6}.jam-banner button{display:inline-flex;gap:9px;align-items:center;flex:none;background:var(--panel)}
.jam-banner-mark{position:relative;display:grid;place-items:center;flex:none;width:67px;height:67px;border:2px solid var(--border);border-radius:18px;background:var(--jam-color);box-shadow:3px 3px 0 #000;transform:rotate(-7deg)}.jam-banner-mark>.ui-icon{width:43px;height:43px}.jam-banner-mark>span{position:absolute;right:-10px;top:-12px;font-size:30px;color:var(--ink)}
.jam-eyebrow{display:block;font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.jam-badges{display:inline-flex;flex-wrap:wrap;gap:6px;align-items:center;max-width:100%}.jam-badges :is(button,span){font-size:10px}.jam-participation-badge,.jam-vote-badge,.jam-winner-badge{display:inline-flex;gap:5px;align-items:center;justify-content:center;padding:4px 8px;border:1.5px solid var(--border);border-radius:8px;line-height:1.4;font-weight:700}.jam-participation-badge{background:color-mix(in srgb,var(--lavender) 36%,var(--panel));min-height:30px;max-width:100%;overflow-wrap:anywhere;text-align:left;box-shadow:none}.jam-participation-badge .ui-icon,.jam-vote-badge .ui-icon,.jam-winner-badge .ui-icon{width:14px;height:14px}.jam-vote-badge{color:#143d74;background:#c3dcff}.jam-winner-badge{color:#4d3900;background:#ffe69a}.jam-vote-button{display:inline-flex;align-items:center;gap:6px;background:#c3dcff;color:#143d74;border-color:var(--border)}.jam-vote-button[aria-pressed=true]{background:#235dad;color:#fff}.jam-vote-button:disabled{opacity:.6}.jam-vote-button .ui-icon{width:20px;height:20px}.jam-shelf{padding:20px 0 12px;border-bottom:2px dashed var(--border);margin-bottom:26px}.jam-shelf>.jam-section-heading,.jam-shelf>header{display:flex;justify-content:space-between;gap:15px;align-items:center;flex-wrap:wrap}.jam-shelf h2{margin:0}.jam-shelf-status{font-size:12px;margin:8px 0 20px}.jam-owner-list{display:grid;gap:14px;margin:18px 0}.jam-owner-list>article{padding:18px;border:2px solid var(--border);border-radius:12px;background:color-mix(in srgb,var(--blue) 18%,var(--panel))}
.jam-invitation{width:min(650px,calc(100vw - 28px));max-height:calc(100dvh - 32px);overflow-y:auto;padding:36px!important;border:3px solid var(--border);position:relative}.jam-invitation>h2{font-size:34px;line-height:1.1;position:relative;max-width:85%;margin-bottom:12px}.jam-invitation>.jam-eyebrow{margin:20px 0 10px}.jam-invitation-art{height:110px;display:grid;place-items:center;position:relative;margin:20px 0 10px;isolation:isolate}.jam-invitation-art::before{content:'';position:absolute;width:210px;height:85px;background:color-mix(in srgb,var(--jam-color) 45%,transparent);border-radius:50%;z-index:-1;transform:rotate(-8deg)}.jam-invitation-cartridge{width:95px;height:106px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:7px;border:3px solid var(--border);border-radius:10px 10px 18px 10px;background:var(--jam-color);box-shadow:5px 5px 0 #000;transform:rotate(-9deg);animation:jam-cartridge-arrive .65s cubic-bezier(.15,.8,.3,1) both}.jam-invitation-cartridge .ui-icon{width:47px;height:47px}.jam-invitation-cartridge b{letter-spacing:.16em;font-family:'Space Grotesk',sans-serif;font-size:16px}.jam-invitation-spark{position:absolute;font-size:29px;animation:jam-spark .7s cubic-bezier(.2,.7,.3,1) both;pointer-events:none}.jam-invitation-spark.spark-a{left:calc(50% - 105px);top:10px;animation-delay:.12s}.jam-invitation-spark.spark-b{right:calc(50% - 106px);top:40px;font-size:42px;animation-delay:.22s}.jam-invitation-spark.spark-c{left:calc(50% - 75px);bottom:0;animation-delay:.3s}.jam-theme{background:color-mix(in srgb,var(--jam-color) 30%,var(--panel));border:2px solid var(--border);border-radius:12px;padding:18px;text-align:center}.jam-theme>span{display:block;font-size:9px;letter-spacing:.16em;font-weight:700;margin-bottom:7px}.jam-theme>strong{font-family:'Space Grotesk',sans-serif;font-size:25px;display:block;line-height:1.2;overflow-wrap:anywhere}.jam-theme p{font-size:12px;line-height:1.6;margin:8px 0 0}.jam-schedule{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:24px 0 12px}.jam-schedule>div{border-bottom:1px solid color-mix(in srgb,var(--border) 30%,transparent);padding-bottom:10px}.jam-schedule dt{font-size:10px;opacity:.8;margin-bottom:4px}.jam-schedule dd{margin:0;font-size:12px;font-weight:700;line-height:1.5}.jam-timezone,.jam-help{font-size:11px;line-height:1.65;opacity:.8}.jam-invitation-section{margin:24px 0}.jam-invitation-section h3{font-size:19px;margin:0 0 10px}.jam-invitation-section p{font-size:13px;line-height:1.7}.jam-prose{white-space:pre-wrap;overflow-wrap:anywhere}.jam-prize-list{list-style:none;padding:0;display:grid;gap:12px}.jam-prize-list li{display:flex;gap:13px;background:color-mix(in srgb,var(--yellow) 23%,var(--panel));border:1px solid var(--border);padding:14px;border-radius:10px}.jam-prize-list .ui-icon{width:26px;height:26px;fill:var(--yellow)}.jam-prize-list strong{display:block;font-size:13px}.jam-prize-list span{font-size:10px}.jam-prize-list p{font-size:11px;margin:6px 0 0;white-space:pre-wrap}.jam-dialog-actions{padding-top:8px;gap:10px}.jam-dialog-actions button{font-size:12px}.jam-submit-dialog{max-width:580px}.jam-submit-dialog>p{font-size:14px;line-height:1.65}.jam-submit-steps{padding-left:22px;font-size:13px;line-height:1.7;display:grid;gap:13px}.jam-early-choice{margin-top:22px;border-top:1px solid var(--border);padding-top:18px}.jam-submit-dialog .jam-help{font-size:12px}.jam-submit-dialog .jam-deadline{font-size:11px;margin:20px 0}.jam-exclude-dialog{max-width:530px}
.jam-admin-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:25px;align-items:start}.jam-admin-list{display:grid;gap:9px;position:sticky;top:15px;max-height:75vh;overflow:auto;padding:3px 5px 6px 0}.jam-admin-list>button{text-align:left;background:var(--panel);display:grid;gap:5px;padding:13px 14px;box-shadow:2px 2px 0 #000;white-space:normal;overflow-wrap:anywhere}.jam-admin-list>button[aria-current=true]{background:var(--blue);border-width:3px}.jam-admin-list>button>span{font-size:13px;font-weight:700}.jam-admin-list small{font-size:10px;font-weight:400}.jam-admin-content{min-width:0}.jam-admin-feedback{margin:12px 0 24px;padding:14px 16px;border:1.5px solid var(--border);border-radius:9px;background:var(--sage);font-size:13px;overflow-wrap:anywhere}.jam-admin-feedback.is-error{background:color-mix(in srgb,var(--coral) 35%,var(--panel))}.jam-empty{padding:22px;font-size:13px;line-height:1.7;border:1.5px dashed var(--border);border-radius:12px;opacity:.8}.jam-phase-card{margin:0 0 25px;box-shadow:3px 3px 0 #000;display:block}.jam-phase-card h3{font-size:25px;line-height:1.2;margin:8px 0 12px;overflow-wrap:anywhere}.jam-phase-card p{font-size:13px;line-height:1.7;margin:0}.jam-phase-action{margin-top:18px}.jam-phase-action .jam-help{font-size:11px;margin-top:10px}.jam-phase-action button{font-size:12px}.jam-config{padding:0;border:2px solid var(--border);border-radius:12px;margin:0 0 28px;background:var(--panel);overflow:hidden}.jam-config>summary{padding:17px 20px;font-size:15px;font-weight:700;cursor:pointer}.jam-config[open]>summary{border-bottom:1px solid var(--border);margin-bottom:0}.jam-config-form{padding:22px}.jam-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.jam-form-grid>label,.jam-prize-editor>label{margin:0;font-size:12px;min-width:0}.jam-form-grid input,.jam-form-grid textarea,.jam-form-grid select,.jam-prize-editor input,.jam-prize-editor textarea,.jam-prize-editor select{font-size:12px;margin:6px 0 0;width:100%;min-width:0}.jam-form-grid input[type=color]{height:42px;padding:4px;max-width:100px}.jam-form-grid small{display:block;font-size:10px;line-height:1.6;margin-top:5px;opacity:.75}.jam-field-wide{grid-column:1/-1}.jam-form-grid .community-check input{width:18px;flex:none;margin:0}.jam-schedule-editor,.jam-prizes-editor{margin:25px 0;padding:18px;border:1.5px solid var(--border);border-radius:10px;min-width:0}.jam-schedule-editor legend,.jam-prizes-editor legend{font-size:14px;padding:0 7px;font-weight:700}.jam-schedule-editor>p{font-size:11px;line-height:1.7;margin:0 0 15px}.jam-prizes-editor>.jam-help{margin-top:0}.jam-prize-rows{display:grid;gap:17px;margin-bottom:15px}.jam-prize-editor{display:grid;grid-template-columns:minmax(0,1fr) minmax(120px,.7fr);gap:12px;position:relative;padding:18px;background:color-mix(in srgb,var(--yellow) 15%,var(--panel));border:1px solid var(--border);border-radius:9px}.jam-prize-editor>.jam-prize-condition{grid-column:1/-1;padding-right:40px}.jam-prize-editor>.jam-remove-prize{position:absolute;bottom:18px;right:12px;padding:6px;border:1px solid var(--border);box-shadow:1px 1px 0 #000;background:var(--panel)}.jam-prize-editor [hidden]{display:none}.jam-prizes-editor>button{font-size:11px}.jam-config-form>.actions button{font-size:12px}.jam-section-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:0 0 17px}.jam-section-heading h3{font-size:21px;margin:0}.jam-section-heading>span{font-size:11px}.jam-admin-entries,.jam-results,.jam-tasks{margin-top:30px;padding-top:25px;border-top:2px solid var(--border)}.jam-entry-list{display:grid;gap:14px}.jam-admin-entry{background:var(--panel);border:1.5px solid var(--border);border-radius:12px;padding:18px;min-width:0}.jam-admin-entry header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.jam-admin-entry h4{font-size:18px;margin:0;overflow-wrap:anywhere}.jam-admin-entry header p{font-size:11px;margin:5px 0 0}.jam-entry-status{border:1px solid var(--border);background:var(--lavender);border-radius:7px;padding:4px 7px;font-size:10px;font-weight:700;white-space:nowrap}.jam-entry-status.is-ready{background:var(--sage)}.jam-admin-entry.is-excluded{opacity:.65}.jam-revision{font-size:10px;margin:15px 0;line-height:1.7;overflow-wrap:anywhere}.jam-revision code{font-size:9px}.jam-admin-entry .actions{gap:10px;align-items:center;flex-wrap:wrap}.jam-admin-entry .actions button{font-size:10px;padding:7px 10px}.jam-admin-entry .actions label{font-size:11px;margin:0;flex:1}.jam-admin-entry>small{display:block;margin-top:12px;font-size:10px;line-height:1.6}.jam-entry-votes{font-size:12px;font-weight:700;color:#265b9b}.jam-pending{margin-bottom:20px;border:1.5px solid var(--border);background:color-mix(in srgb,var(--yellow) 15%,var(--panel));padding:16px;border-radius:12px}.jam-pending h4{font-size:14px;margin:0 0 10px}.jam-pending-row{display:flex;gap:15px;justify-content:space-between;align-items:center;padding:12px 0;border-top:1px solid color-mix(in srgb,var(--border) 25%,transparent)}.jam-pending-row strong{font-size:12px;overflow-wrap:anywhere}.jam-pending-row small{display:block;font-size:10px;margin-top:4px}.jam-pending-row button{font-size:10px}.jam-result-rows{display:grid;gap:12px}.jam-result-row{display:grid;grid-template-columns:130px minmax(0,1fr);gap:15px;align-items:center;font-size:12px}.jam-result-row select{margin:0;font-size:12px;min-width:0}.jam-result-row>span{overflow-wrap:anywhere}.jam-add-result{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:12px;align-items:end;margin:20px 0}.jam-add-result label{font-size:11px;margin:0}.jam-add-result input,.jam-add-result select{font-size:11px;margin:6px 0 0;min-width:0}.jam-add-result button{font-size:11px;margin-bottom:0}.jam-results-form>.actions{margin-top:20px}.jam-results-form>.actions button{font-size:12px}.jam-task{display:flex;gap:14px;align-items:center;border-bottom:1px solid color-mix(in srgb,var(--border) 30%,transparent);padding:17px 0}.jam-task>div{flex:1;min-width:0}.jam-task strong{font-size:13px;overflow-wrap:anywhere}.jam-task p{font-size:11px;margin:5px 0 0}.jam-task button{font-size:11px;flex:none}.jam-task-icon{width:34px;height:34px;display:grid;place-items:center;background:var(--yellow);border:1.5px solid var(--border);border-radius:9px;flex:none}.jam-task.is-complete{opacity:.65}.jam-task .jam-entry-status{flex:none}
@keyframes jam-cartridge-arrive{0%{opacity:0;transform:translateY(24px) rotate(-24deg) scale(.55)}65%{opacity:1;transform:translateY(-6px) rotate(-5deg) scale(1.07)}100%{opacity:1;transform:translateY(0) rotate(-9deg) scale(1)}}
@keyframes jam-spark{0%{opacity:0;transform:scale(0) rotate(-80deg)}70%{opacity:1;transform:scale(1.25) rotate(10deg)}100%{opacity:1;transform:scale(1) rotate(0)}}
@media(max-width:1050px){.jam-admin-layout{grid-template-columns:180px minmax(0,1fr);gap:18px}.jam-config-form{padding:17px}.jam-prize-editor{grid-template-columns:1fr}.jam-prize-condition{grid-column:auto}.jam-form-grid{gap:14px}.jam-add-result{grid-template-columns:1fr 1fr}.jam-add-result button{justify-self:start}.jam-admin-entry header{flex-wrap:wrap}}
@media(max-width:700px){.jam-banner{padding:18px;gap:16px;flex-wrap:wrap}.jam-banner-mark{width:50px;height:50px}.jam-banner-mark>.ui-icon{width:32px;height:32px}.jam-banner-copy{flex-basis:calc(100% - 75px)}.jam-banner h2{font-size:23px}.jam-banner button{margin-left:66px;font-size:11px}.jam-admin-layout{grid-template-columns:1fr}.jam-admin-list{position:static;display:flex;overflow:auto;max-height:none;gap:9px;margin-bottom:10px}.jam-admin-list>button{min-width:170px;max-width:230px;flex:none}.jam-admin-list>.jam-empty{width:100%}.jam-form-grid{grid-template-columns:1fr}.jam-field-wide{grid-column:auto}.jam-invitation{padding:25px!important}.jam-invitation>h2{font-size:28px}.jam-invitation-art{margin-top:20px}.jam-theme>strong{font-size:22px}.jam-schedule{gap:12px}.jam-schedule dd{font-size:11px}.jam-schedule-editor,.jam-prizes-editor{padding:14px}.jam-section-heading h3{font-size:19px}.jam-result-row{grid-template-columns:1fr;gap:6px}.jam-task{gap:10px;flex-wrap:wrap}.jam-task>div{flex-basis:calc(100% - 50px)}.jam-task>button,.jam-task>.jam-entry-status{margin-left:44px}.jam-admin-entry{padding:15px}.jam-admin-entry .actions{align-items:flex-start}.jam-admin-entry .actions label{flex-basis:100%}.jam-phase-action button{font-size:11px;white-space:normal}.jam-dialog-actions{flex-direction:column;align-items:stretch}.jam-dialog-actions button{justify-content:center}.jam-submit-dialog{padding:25px}.jam-submit-dialog h2{font-size:24px}}
@media(prefers-reduced-motion:reduce){.jam-invitation-cartridge,.jam-invitation-spark{animation:none}.jam-banner-mark{transform:none}}
@media(forced-colors:active){.jam-vote-button[aria-pressed=true]{outline:3px solid Highlight}.jam-entry-status.is-ready{border:3px double CanvasText}.jam-invitation-art::before{display:none}}
.jam-dialog-actions .button{font-size:12px;display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none}
.jam-social-paused{font-size:10px;line-height:1.5;opacity:.75}
.owner-metrics>.jam-vote-badge,.owner-metrics>.jam-winner-badge{border-radius:999px;box-shadow:1px 1px 0 #000}
.jam-config-form fieldset:disabled{opacity:.65}
/* Accent badges keep dark text when the surrounding page uses light ink. */
.jam-entry-status,.jam-admin-feedback:not(.is-error),.jam-task-icon{color:var(--on-accent,#252628)}
[data-theme=dark] .jam-admin-list>button[aria-current=true]{color:var(--on-accent,#252628)}
[data-theme=dark] .jam-entry-votes{color:#a9cfff}
#preview-station .station-icon-row>.jam-vote-button{background:#c3dcff;color:#143d74}
#preview-station .station-icon-row>.jam-vote-button[aria-pressed=true]{background:#235dad;color:#fff}
#preview-station .station-icon-row>.jam-vote-button:hover{background:#a5c8fb;color:#143d74}
#preview-station .station-icon-row>.jam-vote-button[aria-pressed=true]:hover{background:#194b91;color:#fff}
.station-icon-row .jam-vote-button>.jam-vote-badge{position:absolute;right:-3px;bottom:-3px;min-width:18px;min-height:18px;font-size:9px;padding:2px 4px;border-radius:999px;line-height:1}
.jam-form-feedback.is-error{padding:12px;border:1px solid var(--border);border-radius:8px;background:color-mix(in srgb,var(--coral) 25%,var(--panel));font-size:12px;line-height:1.6}
.jam-admin-list>button[aria-current=true] small{color:inherit;opacity:.8}
.jam-banner .jam-banner-dates{display:flex;flex-wrap:wrap;column-gap:16px;row-gap:3px;margin-top:9px;font-size:11px;line-height:1.6}
.jam-banner-dates>span{max-width:100%;overflow-wrap:anywhere}.jam-banner-dates>small{font-size:10px;color:inherit;opacity:.75;align-self:center}

/* The admin form uses a compact grid while public invitations stay spacious. */
.jam-workspace>.moderation-header{flex-direction:row;align-items:center;gap:14px;margin-bottom:16px}
.jam-workspace .moderation-header h2{font-size:28px}.jam-workspace .moderation-eyebrow{font-size:10px;margin:0 0 4px}
.jam-workspace .moderation-tools button{min-height:38px;padding:7px 12px;font-size:12px}
.jam-admin-layout{grid-template-columns:170px minmax(0,1fr);gap:16px}.jam-admin-list{gap:7px}.jam-admin-list>button{gap:4px;padding:10px 11px}.jam-admin-list>button>span{font-size:12px}
.jam-admin-feedback{margin:10px 0 14px;padding:10px 12px}.jam-admin-list .jam-empty,.jam-admin-content>.jam-empty{padding:14px}
.jam-phase-card{margin:0 0 14px;padding:13px 15px;box-shadow:2px 2px 0 #000;display:flex;align-items:center;flex-wrap:wrap;gap:10px 16px}
.jam-phase-copy{flex:1 1 340px;min-width:0}.jam-phase-heading{display:flex;align-items:center;flex-wrap:wrap;gap:7px 10px}
.jam-phase-card h3{font-size:20px;line-height:1.2;margin:0}.jam-phase-card p{font-size:11px;line-height:1.6;margin:6px 0 0}
.jam-phase-heading .jam-eyebrow{font-size:9px;line-height:1.4;letter-spacing:.06em;border:1px solid color-mix(in srgb,var(--border) 35%,transparent);border-radius:999px;padding:3px 7px;background:color-mix(in srgb,var(--panel) 65%,transparent)}
.jam-phase-action{margin:0;flex:0 1 auto;max-width:100%}.jam-phase-action .jam-help{font-size:10px;margin-top:5px}
.jam-config{border-radius:10px;margin-bottom:16px}.jam-config>summary{padding:11px 14px;font-size:13px}.jam-config-form{padding:14px}
.jam-form-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px 14px}.jam-form-grid>label,.jam-prize-editor>label{font-size:11px}
.jam-form-grid :is(input,textarea,select),.jam-prize-editor :is(input,textarea,select){margin-top:4px;min-height:36px;padding:7px 9px}
.jam-form-grid textarea,.jam-prize-editor textarea{resize:vertical;line-height:1.5;min-height:76px}.jam-form-grid small{line-height:1.5;margin-top:4px}
.jam-form-grid input[type=color]{height:36px;padding:3px;max-width:70px}.jam-form-grid .community-check input{height:18px;min-height:18px;padding:0}
.jam-entry-options{grid-template-columns:90px 150px minmax(0,1fr);align-items:start;margin-top:12px}.jam-entry-options>.community-check{align-self:center;line-height:1.5;min-height:36px}
.jam-schedule-editor,.jam-prizes-editor{margin:14px 0;padding:11px 12px}.jam-schedule-editor legend,.jam-prizes-editor legend{font-size:12px}
.jam-schedule-editor>p{font-size:10px;line-height:1.6;margin:0 0 9px}.jam-schedule-editor>.jam-schedule-note{margin:9px 0 0}
.jam-schedule-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.jam-schedule-grid>label{grid-column:span 2}.jam-schedule-grid>label:nth-last-child(-n+2){grid-column:span 3}
.jam-prizes-editor>.jam-help{font-size:10px;margin-bottom:9px}.jam-prize-rows{gap:10px;margin-bottom:10px}.jam-prize-rows:empty{margin-bottom:0}.jam-prize-editor{grid-template-columns:minmax(0,1fr) minmax(120px,.7fr);padding:12px;gap:8px 12px}
.jam-prize-editor>.jam-remove-prize{bottom:12px;right:10px}.jam-workspace .jam-prize-editor button{min-height:34px}
.jam-config-form>.actions{gap:8px}.jam-config-form>.actions button{min-height:38px;padding:7px 12px}.jam-form-feedback:empty{margin:0}
.jam-workspace .jam-section-heading{gap:12px;margin-bottom:12px}.jam-workspace .jam-section-heading h3{font-size:19px}.jam-admin-entries,.jam-results,.jam-tasks{margin-top:20px;padding-top:16px}
.jam-entry-list{gap:10px}.jam-admin-entry{padding:12px;border-radius:10px}.jam-admin-entry h4{font-size:16px}.jam-revision{margin:9px 0}.jam-admin-entry>small{margin-top:8px}
.jam-pending{margin-bottom:12px;padding:12px;border-radius:10px}.jam-pending-row{gap:12px;padding:8px 0}.jam-result-rows{gap:8px}.jam-add-result{gap:10px;margin:12px 0}.jam-results-form>.actions{margin-top:12px}.jam-task{padding:11px 0}
@media(max-width:1050px){
 .jam-admin-layout{grid-template-columns:145px minmax(0,1fr);gap:14px}.jam-config-form{padding:12px}.jam-form-grid{gap:10px 12px}
 .jam-schedule-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.jam-schedule-grid>label,.jam-schedule-grid>label:nth-last-child(-n+2){grid-column:auto}.jam-schedule-grid>label:last-child{grid-column:1/-1}
}
@media(max-width:700px){
 .jam-admin-layout{grid-template-columns:1fr;gap:10px}.jam-admin-list{gap:7px;margin-bottom:0}.jam-admin-list>button{min-width:145px;max-width:200px}
}
@media(max-width:550px){
 .jam-workspace>.moderation-header{margin-bottom:12px;gap:10px}.jam-workspace .moderation-header h2{font-size:25px}.jam-workspace .moderation-tools button{min-height:44px}
 .jam-phase-card{padding:12px;margin-bottom:12px}.jam-phase-card h3{font-size:18px}.jam-phase-copy{flex-basis:100%}
 .jam-form-grid,.jam-prize-editor{grid-template-columns:minmax(0,1fr)}.jam-entry-options{grid-template-columns:85px minmax(0,1fr);gap:10px}.jam-entry-options>.community-check{grid-column:1/-1;min-height:44px}
 .jam-schedule-grid>label,.jam-schedule-grid>label:nth-last-child(-n+2),.jam-schedule-grid>label:last-child{grid-column:auto}.jam-prize-editor>.jam-prize-condition{grid-column:auto}
 .jam-form-grid :is(input,textarea,select),.jam-prize-editor :is(input,textarea,select){font-size:16px;min-height:44px}.jam-form-grid input[type=color]{height:44px}.jam-form-grid .community-check input{min-height:20px;width:20px;height:20px}
 .jam-config-form>.actions button,.jam-phase-action button,.jam-workspace .jam-prize-editor button{min-height:44px}.jam-config-form>.actions{flex-wrap:wrap}.jam-config-form>.actions button{flex:1 1 auto}
 .jam-add-result{grid-template-columns:1fr}.jam-add-result button,.jam-task button{min-height:44px}
}
.jam-public-page{max-width:1000px;margin:auto;min-width:0;color:var(--ink)}
.jam-public-page>.moderation-back{margin-bottom:18px;border-radius:999px}
.jam-public-pages{overflow:visible;min-width:0;padding:8px}
.jam-public-page [hidden]{display:none!important}
.jam-public-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:16px}
.jam-public-heading h2{font-size:36px;margin:0}
.jam-public-heading .jam-invitation-art{width:120px;height:100px;margin:0;flex:none}
.jam-public-heading .jam-invitation-cartridge{width:70px;height:85px;font-size:12px}
.jam-public-page .jam-theme{padding:18px;margin-bottom:14px}
.jam-public-page .jam-schedule{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:16px 0 24px}
.jam-public-page .jam-schedule dd{cursor:default;font-size:12px}
.jam-public-page .jam-prize-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}
.jam-public-page .jam-prize-list li{padding:12px;gap:12px;align-items:center;margin:0;min-width:0}
.jam-public-page .jam-prize-list strong{font-size:13px}
.jam-public-page .jam-prize-list p,.jam-public-page .jam-prize-list div>span{font-size:11px;margin:4px 0 0}
.jam-trophy{position:relative;display:block;width:40px;height:44px;flex:0 0 40px;color:var(--yellow)}
.jam-trophy svg{width:40px;height:44px}
.jam-trophy b{position:absolute;top:7px;left:10px;width:20px;text-align:center;font-size:12px;line-height:16px;color:var(--ink)}
.jam-special-icon{width:40px;height:44px;display:grid;place-items:center;flex:none;color:var(--yellow)}
.jam-special-icon .ui-icon{width:30px;height:30px}
.jam-rules-link{display:flex;align-items:center;justify-content:space-between;width:100%;margin:20px 0 12px;padding:12px 14px;text-align:left}
.jam-rules-link .ui-icon{width:18px;height:18px}
.jam-public-page [data-jam-page=rules]{max-width:760px;line-height:1.7}
.jam-public-page [data-jam-page=rules]>h2{margin-top:24px}
.jam-public-page [data-jam-page=rules]>h3{margin-top:24px}
.jam-schedule-editor input[data-jam-locked=true]{cursor:default}
@media(max-width:650px){.jam-public-page .jam-schedule{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.jam-public-heading h2{font-size:28px}.jam-public-heading .jam-invitation-art{width:85px}.jam-public-page .jam-prize-list{grid-template-columns:1fr}.jam-public-page .jam-dialog-actions>*{flex:1 1 auto}}
/* Compact jam banner and calendar-style public schedule. */
.jam-banner{padding:14px 18px;gap:16px;margin:8px 0 16px;align-items:center}
.jam-banner h2{font-size:23px;margin:0 0 6px;line-height:1.15}
.jam-banner p{font-size:12px;line-height:1.4}
.jam-banner .jam-banner-dates{margin-top:5px;row-gap:2px;font-size:10px}
.jam-banner-dates>span{cursor:help}
.jam-banner-mark{width:54px;height:54px;border-radius:14px}
.jam-banner-mark>.ui-icon{width:36px;height:36px}
.jam-banner>button{align-self:flex-end;border-radius:999px;background:var(--jam-color);color:#171923;padding:9px 15px;font-size:12px}
.jam-shelf{border-bottom:0;padding-top:10px;margin-bottom:16px}
.jam-vote-badge{background:#235dad;color:#fff;border-radius:999px}
.jam-public-heading{padding:12px 14px 6px 0}
.jam-public-heading .jam-invitation-art{width:180px;height:120px;margin:0 8px;overflow:visible}
.jam-public-heading .jam-invitation-art::before{width:170px;height:70px}
.jam-invitation-cartridge{border-radius:24px 10px 10px 10px;position:relative}

.jam-status-badge{display:inline-block;transform:rotate(-4deg);border:2px solid var(--border);box-shadow:3px 3px 0 #000;border-radius:8px;padding:8px 13px;margin:0 0 16px 3px;background:#a9c9ff;color:#172139;font-size:14px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}
.jam-status-badge[data-phase=voting]{background:#235dad;color:#fff}
.jam-status-badge[data-phase=awarding]{background:#f9db57;color:#382c07}
.jam-status-badge[data-phase=submissions]{background:#9aebcd;color:#153a2c}
.jam-status-badge[data-phase=showcase]{background:#c5a1ff;color:#34204e}
.jam-status-badge[data-phase=archived]{background:#b3c4bb;color:#21372c}
.jam-public-page .jam-schedule>div{border:2px solid var(--border);border-radius:10px;background:var(--panel);box-shadow:3px 3px 0 #000;padding:0 0 10px;text-align:center;overflow:hidden}
.jam-public-page .jam-schedule dt{font-size:11px;font-weight:700;opacity:1;padding:8px 5px;margin:0;background:color-mix(in srgb,var(--jam-color) 35%,var(--panel));border-bottom:1px solid var(--border)}
.jam-public-page .jam-schedule dd{display:grid;justify-items:center;padding:7px 3px 0;gap:0}
.jam-calendar-month{text-transform:uppercase;letter-spacing:.12em;font-size:10px}
.jam-calendar-day{font-size:40px;line-height:1.1}
.jam-calendar-time{font-size:11px;margin-top:5px;opacity:.85}
.jam-public-rules{margin:24px 0;font-size:13px;line-height:1.65}
.jam-public-rules h3,.jam-public-entries h3{font-size:20px;margin:0 0 10px}
.jam-public-entries{margin:24px 0}
.jam-public-page .jam-dialog-actions{justify-content:flex-end;padding:12px 6px 8px;flex-wrap:wrap}
.jam-public-page .jam-dialog-actions>button{border-radius:999px;flex:none}
.social-spark.vote-spark{color:#235dad;font-size:24px;font-weight:900;text-shadow:0 1px #fff}
.first-like-dialog.first-vote-dialog{--like-pink:#235dad}
.first-vote-dialog .first-like-emblem,.first-vote-dialog [data-confirm]{color:#fff}
.first-vote-dialog [data-confirm]:hover{background:#3275d0;color:#fff}
@media(max-width:650px){.jam-banner{padding:12px;gap:12px;flex-wrap:wrap}.jam-banner h2{font-size:20px}.jam-banner>button{margin-left:auto}.jam-public-heading{gap:8px;padding-right:0}.jam-public-heading .jam-invitation-art{width:90px;margin:0 8px}.jam-public-heading .jam-invitation-art::before{width:105px;height:62px}.jam-status-badge{font-size:11px;padding:6px 9px}.jam-public-heading h2{font-size:25px}.jam-public-heading>div:first-child{min-width:0;overflow-wrap:anywhere}.jam-public-page .jam-dialog-actions>*{flex:0 1 auto}}
.owner-metrics>.jam-vote-badge,.station-icon-row .jam-vote-button>.jam-vote-badge{color:#fff;background:#235dad}
#preview-station .station-icon-row .social-count.jam-vote-badge{color:#fff;background:#235dad}

/* Status tags sit on the edge of their panels; calendars stay pocket-sized. */
#community-jam-banner{position:relative}
.jam-banner{position:relative;margin-top:0;padding:18px 20px;align-items:center}
.jam-banner-heading{position:absolute;left:50%;bottom:100%;transform:translateX(-50%);font-size:11px;font-weight:650;line-height:24px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin:0;white-space:nowrap}
/* One 24px background-grid step less between jam entries and the next shelf. */
.arcade-workspace .arcade-group.jam-shelf{margin-bottom:0}
.jam-banner>.jam-status-badge{position:absolute;right:-12px;top:-24px;margin:0;padding:6px 10px;font-size:11px;line-height:1.3;z-index:1;transform:rotate(4deg)}
.jam-banner-identity{display:grid;justify-items:center;gap:8px;flex:none}
.jam-banner-identity>.jam-eyebrow{font-size:9px;white-space:nowrap}
.jam-public-page .jam-theme{position:relative;margin-top:22px;padding-top:30px}
.jam-theme>.jam-status-badge{position:absolute;top:-20px;left:-6px;margin:0;z-index:1}
.jam-public-page .jam-schedule{grid-template-columns:repeat(3,136px);justify-content:space-evenly;gap:18px;margin:26px 0 12px}
.jam-public-page .jam-schedule>div{box-sizing:border-box;width:136px;height:136px;padding:0;display:grid;grid-template-rows:34px 1fr}
.jam-public-page .jam-schedule dt{display:grid;place-items:center;font-size:10px;line-height:1.2;padding:3px 5px}
.jam-public-page .jam-schedule dd{padding:6px 3px 8px;align-content:center}
.jam-public-information{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:34px;align-items:start;margin:26px 0}
.jam-public-information>section{min-width:0;margin:0}
.jam-public-information h3{font-size:20px;margin:0 0 12px}
.jam-public-page .jam-prize-list{grid-template-columns:1fr;margin:0}
.jam-public-page .jam-prize-list .jam-prize-category{display:block;font-size:10px;font-weight:700;opacity:.8;margin:0 0 3px}
.jam-public-page .jam-prize-list .jam-prize-label{font-size:11px;font-weight:400}
.jam-public-page .jam-prize-winner{padding-top:5px}
.jam-public-prizes li>div{min-width:0;overflow-wrap:anywhere}
.jam-archive-page .jam-public-heading .jam-eyebrow{margin-bottom:8px}
@media(max-width:740px){.jam-public-page .jam-schedule{grid-template-columns:repeat(2,136px);gap:18px;justify-content:space-evenly}.jam-public-information{grid-template-columns:1fr;gap:26px}}
@media(max-width:380px){.jam-public-page .jam-schedule{grid-template-columns:repeat(2,120px);gap:14px}.jam-public-page .jam-schedule>div{width:120px;height:120px;grid-template-rows:30px 1fr}.jam-calendar-day{font-size:34px}.jam-public-page .jam-schedule dd{padding:3px}.jam-calendar-time{margin-top:2px}.jam-banner>.jam-status-badge{font-size:10px;right:10px}.jam-theme>.jam-status-badge{left:-4px}}
/* Keep the deadline beside its details action, and distinguish personal votes. */
.jam-banner-actions{display:flex;flex-direction:column;align-items:flex-end;gap:6px;margin-left:auto;flex:none}
.jam-banner-actions .jam-banner-dates{display:flex;flex-direction:column;align-items:flex-end;gap:3px;margin:0;font-size:10px;line-height:1.4}
.jam-banner-actions>button{display:inline-flex;align-items:center;gap:10px;white-space:nowrap;border-radius:999px;background:var(--jam-color);color:#191322;font-size:12px;padding:10px 14px}
.jam-banner-copy{min-width:0;overflow-wrap:anywhere}
#arcade-selection .station-icon-row>.jam-vote-button[aria-pressed=false]{background:var(--panel);color:var(--ink)}
#arcade-selection .station-icon-row>.jam-vote-button[aria-pressed=true]{background:#235dad;color:#fff;border-color:var(--border)}
.jam-vote-summary{display:grid;gap:4px;margin:12px 0;font-size:12px;line-height:1.5}
.jam-vote-summary>span{font-size:11px;opacity:.85}
.jam-your-vote{position:absolute;left:5px;bottom:8px;pointer-events:none;z-index:2;border:2px solid var(--border);border-radius:999px;padding:3px 7px;background:#235dad;color:#fff;font-size:10px;font-weight:800;box-shadow:2px 2px 0 #000}
@media(max-width:650px){.jam-banner{padding:16px;row-gap:16px}.jam-banner-actions{flex-basis:100%}.jam-banner-copy{flex-basis:calc(100% - 80px)}}
@media(max-width:380px){.jam-banner>.jam-status-badge{right:-8px}}
.jam-public-page .jam-timezone{text-align:center;margin:0 0 30px}
.jam-builder-row{display:flex;align-items:center;gap:28px;margin:28px 0 8px}
.jam-builder-guidance{flex:1;min-width:0;font-size:13px;line-height:1.6}
.jam-builder-row .jam-dialog-actions{flex:0 0 auto;flex-direction:column;align-items:flex-end;padding:0;gap:10px}
.jam-submissions-closed{margin:28px 0 8px;max-width:720px}
@media(max-width:650px){.jam-builder-row{align-items:flex-start;flex-direction:column;gap:14px}.jam-builder-row .jam-dialog-actions{flex-direction:row;align-items:center}}
.jam-builder-guidance h3{font-size:16px;margin:0 0 6px}
.jam-builder-guidance p{margin:0}

.owner-metrics>.jam-winner-badge:has(sup){display:flex;align-items:center;justify-content:center;gap:0;white-space:nowrap;font-size:15px}
.jam-winner-badge sup{font-size:.62em;line-height:1;align-self:auto;position:relative;top:-.3em}

/* The cover already provides the selected rainbow and keyboard-focus ring. */
:is(.jam-shelf,.jam-public-entries) .arcade-card:focus-within{outline:none}
#jam-preview-hide{display:flex;margin:18px auto 0;min-width:100px;border-radius:999px}
.station-playing #jam-preview-hide{display:none}

/* Keep the introduction and calendar together without a tall hero gap. */
.jam-public-page>.moderation-back{margin-bottom:8px}
.jam-public-pages{padding-top:0}
.jam-public-heading{padding-top:0;padding-bottom:0;margin-bottom:8px}
.jam-public-heading .jam-invitation-art{width:130px;height:84px}
.jam-public-heading .jam-invitation-art::before{width:130px;height:54px}
.jam-public-heading .jam-invitation-cartridge{width:56px;height:68px;font-size:10px}
.jam-public-page .jam-theme{margin-top:14px;margin-bottom:10px;padding:24px 16px 12px}
.jam-public-page .jam-schedule{grid-template-columns:repeat(3,120px);gap:14px;margin:16px 0 8px}
.jam-public-page .jam-schedule>div{width:120px;height:120px;grid-template-rows:30px 1fr}
.jam-public-page .jam-schedule dd{padding:3px}
.jam-public-page .jam-calendar-day{font-size:34px}
.jam-public-page .jam-calendar-time{margin-top:2px}
.jam-public-page .jam-timezone{margin-bottom:18px}
@media(max-width:740px){.jam-public-page .jam-schedule{grid-template-columns:repeat(2,120px)}}
@media(max-width:650px){.jam-public-heading .jam-invitation-art{width:90px}.jam-public-heading .jam-invitation-art::before{width:105px}}
