/* V162 — judging/results fully integrated with the existing dashboard UI.
   No body/html/touch/scroll overrides. */
.v159-wrap{
  direction:rtl;width:100%;max-width:none;margin:0;padding:0 0 36px;
  color:var(--foreground);min-width:0;overflow:visible;
}
.v159-wrap *{box-sizing:border-box;min-width:0}
.v159-head{
  display:flex;align-items:flex-start;justify-content:space-between;gap:16px;
  margin:0 0 18px;padding:0;background:transparent;border:0;
}
.v159-head h1{font-size:clamp(22px,2.3vw,30px);line-height:1.25;font-weight:800;margin:0 0 5px;color:var(--foreground)}
.v159-head p{margin:0;color:var(--muted-foreground);font-size:13px;line-height:1.7}
.v159-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}

.v159-btn,.v159-select,.v159-input{
  border:1px solid var(--border);background:var(--card);color:var(--foreground);
  border-radius:12px;min-height:42px;padding:9px 12px;font:inherit;max-width:100%;
}
.v159-input::placeholder{color:var(--muted-foreground)}
.v159-select{appearance:auto}
.v159-btn{cursor:pointer;font-weight:700;transition:border-color .16s ease,background .16s ease,transform .12s ease}
.v159-btn:hover{background:var(--surface-2);border-color:color-mix(in oklab,var(--border) 65%,var(--foreground) 35%)}
.v159-btn:active{transform:translateY(1px)}
.v159-btn.primary,.v159-tab.active{background:var(--primary);color:var(--primary-foreground);border-color:var(--primary)}
.v159-btn.red{border-color:color-mix(in oklab,#ef4444 65%,var(--border));color:#fca5a5;background:color-mix(in oklab,#7f1d1d 18%,var(--card))}
.v159-btn.green{border-color:color-mix(in oklab,#22c55e 55%,var(--border));color:#bbf7d0;background:color-mix(in oklab,#14532d 18%,var(--card))}
.v159-btn:disabled{opacity:.45;cursor:not-allowed;transform:none}

/* Dashboard-native block rhythm */
.v159-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 16px}
.v159-stat,.v159-card,.v159-event-card{
  background:var(--card);border:1px solid var(--border);border-radius:16px;
  box-shadow:0 1px 0 color-mix(in oklab,var(--foreground) 3%,transparent);
}
.v159-stat{padding:14px 15px;min-height:86px;display:flex;flex-direction:column;justify-content:center}
.v159-stat b{display:block;font-size:clamp(19px,2vw,25px);line-height:1.2;color:var(--foreground);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.v159-stat span{color:var(--muted-foreground);font-size:12px;margin-top:5px}

.v159-tabs{
  display:flex;flex-wrap:wrap;gap:8px;margin:0 0 14px;padding:0;
  overflow:visible;border-bottom:1px solid var(--border);padding-bottom:12px;
}
.v159-tab{white-space:normal;min-height:40px;padding-inline:14px}
.v159-toolbar{
  display:grid;grid-template-columns:minmax(220px,1.35fr) minmax(170px,.9fr) minmax(150px,.7fr) minmax(150px,.7fr);
  gap:10px;margin:0 0 16px;padding:12px;background:color-mix(in oklab,var(--card) 82%,transparent);
  border:1px solid var(--border);border-radius:16px;
}
.v159-toolbar>*{width:100%}

.v159-note{padding:12px 14px;border-radius:14px;border:1px solid color-mix(in oklab,#3b82f6 38%,var(--border));background:color-mix(in oklab,#1d4ed8 11%,var(--card));margin-bottom:12px;color:var(--foreground);line-height:1.65}
.v159-note.warn{border-color:color-mix(in oklab,#f59e0b 42%,var(--border));background:color-mix(in oklab,#92400e 14%,var(--card));color:var(--foreground)}

.v159-list{display:grid;gap:9px}
.v159-person{
  display:grid;grid-template-columns:52px minmax(0,1fr) auto;align-items:center;gap:12px;width:100%;
  text-align:right;background:var(--card);border:1px solid var(--border);border-radius:15px;padding:12px;color:var(--foreground);cursor:pointer;
}
.v159-person:hover{background:var(--surface);border-color:color-mix(in oklab,var(--primary) 35%,var(--border))}
.v159-avatar{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:var(--surface-2);font-weight:900;font-size:20px;color:var(--foreground)}
.v159-person h3{margin:0 0 4px;font-size:14px;font-weight:800;color:var(--foreground)}
.v159-person p{margin:0;color:var(--muted-foreground);font-size:12px;line-height:1.55;overflow-wrap:anywhere}
.v159-status{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.v159-chip{padding:5px 8px;border-radius:999px;font-size:11px;font-weight:800;background:var(--surface-2);color:var(--foreground);border:1px solid color-mix(in oklab,var(--border) 70%,transparent)}
.v159-chip.ok{background:color-mix(in oklab,#14532d 28%,var(--card));color:#bbf7d0;border-color:color-mix(in oklab,#22c55e 35%,var(--border))}
.v159-chip.wait{background:color-mix(in oklab,#92400e 24%,var(--card));color:#fde68a;border-color:color-mix(in oklab,#f59e0b 35%,var(--border))}
.v159-chip.best{background:color-mix(in oklab,#1e3a8a 25%,var(--card));color:#bfdbfe;border-color:color-mix(in oklab,#3b82f6 35%,var(--border))}
.v159-chip.dnf{background:color-mix(in oklab,#7f1d1d 26%,var(--card));color:#fecaca;border-color:color-mix(in oklab,#ef4444 35%,var(--border))}

.v159-table-wrap{width:100%;max-width:100%;overflow-x:auto;overflow-y:visible;-webkit-overflow-scrolling:touch;border:1px solid var(--border);border-radius:16px;background:var(--card)}
.v159-table{width:100%;border-collapse:collapse;min-width:820px;color:var(--foreground)}
.v159-table th,.v159-table td{padding:11px;border-bottom:1px solid var(--border);text-align:right;font-size:12px;vertical-align:middle}
.v159-table th{position:sticky;top:0;background:var(--surface);z-index:1;color:var(--muted-foreground);font-weight:800}
.v159-table tr:last-child td{border-bottom:0}.v159-rank{font-size:18px;font-weight:900}

/* score modal uses app card language, never changes body scrolling */
.v159-overlay{position:fixed;inset:0;z-index:100000;background:rgba(0,0,0,.62);display:flex;align-items:center;justify-content:center;padding:16px;overflow:auto;-webkit-overflow-scrolling:touch}
.v159-modal{width:min(760px,100%);max-height:calc(100dvh - 32px);overflow:auto;margin:auto;background:var(--popover);color:var(--popover-foreground);border:1px solid var(--border);border-radius:20px;padding:18px;box-shadow:0 24px 80px rgba(0,0,0,.4)}
.v159-modal-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:12px}.v159-modal-head h2{margin:0 0 4px;font-size:20px;font-weight:800}.v159-modal-head p{margin:0;color:var(--muted-foreground);font-size:12px}
.v159-score-groups{display:grid;gap:12px}.v159-score-group{border:1px solid var(--border);border-radius:14px;padding:12px;background:var(--card)}.v159-score-group h4{margin:0 0 10px;color:var(--foreground);font-weight:800}
.v159-score-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.v159-field label{display:block;font-size:12px;color:var(--muted-foreground);margin-bottom:5px}.v159-field input,.v159-field select,.v159-field textarea{width:100%;box-sizing:border-box;border:1px solid var(--border);background:var(--background);border-radius:11px;padding:9px 10px}.v159-field small{display:block;color:var(--muted-foreground);margin-top:4px}
.v159-dnf{display:flex;align-items:center;gap:8px;padding:10px 12px;border:1px solid color-mix(in oklab,#ef4444 55%,var(--border));border-radius:12px;color:#fecaca;background:color-mix(in oklab,#7f1d1d 15%,var(--card))}
.v159-live{display:flex;justify-content:space-between;align-items:center;padding:14px;border:1px solid var(--border);border-radius:14px;background:var(--surface);margin-top:12px}.v159-live strong{font-size:28px}.v159-run-combined{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:10px}.v159-run-combined div{padding:10px;border:1px solid var(--border);border-radius:12px;background:var(--card);text-align:center}.v159-run-combined span{display:block;color:var(--muted-foreground);font-size:11px}.v159-run-combined b{font-size:17px}

.v159-committee{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}.v159-card{padding:14px}.v159-card h3{margin:0 0 12px;font-weight:800}.v159-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:end;margin-bottom:8px}.v159-round-row{display:grid;grid-template-columns:36px minmax(0,1fr);gap:8px;margin-bottom:8px;align-items:center}.v159-empty{padding:38px 18px;text-align:center;color:var(--muted-foreground);background:var(--card);border:1px dashed var(--border);border-radius:16px;line-height:1.7}

/* Participant results stay inside the participant UI */
.v159-user{width:100%;max-width:880px;margin:0 auto;padding:16px 12px 90px;direction:rtl;color:var(--foreground)}
.v159-user-title{margin-bottom:14px}.v159-user-title h1{font-size:24px;font-weight:850}.v159-event-card{padding:14px;margin-bottom:12px}.v159-event-card header{display:flex;justify-content:space-between;gap:12px;align-items:center}.v159-event-card h2{font-size:17px;margin:0;font-weight:800}.v159-best{font-size:20px;font-weight:900;color:#bfdbfe}.v159-run-card{margin-top:10px;border:1px solid var(--border);border-radius:14px;overflow:hidden;background:var(--background)}.v159-run-head{display:grid;grid-template-columns:minmax(0,1fr) auto auto auto;gap:8px;align-items:center;padding:10px 12px;background:var(--surface);cursor:pointer}.v159-run-body{display:none;padding:10px 12px}.v159-run-card.open .v159-run-body{display:block}.v159-judge-box{padding:10px;border:1px solid var(--border);border-radius:12px;background:var(--card);margin-bottom:8px}.v159-judge-box h4{margin:0 0 8px;font-weight:800}.v159-criterion{display:flex;justify-content:space-between;gap:10px;padding:5px 0;border-bottom:1px dashed var(--border);font-size:12px}.v159-criterion:last-child{border:0}

/* integrated host: preserve dashboard shell / sidebar / header */
main.v162-judging-main,[role="main"].v162-judging-main{min-width:0!important;max-width:100%!important;overflow:visible!important}
.v162-judging-slot{width:100%;min-width:0;max-width:100%;overflow:visible}

@media(max-width:1100px){
  .v159-toolbar{grid-template-columns:1fr 1fr}.v159-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.v159-committee{grid-template-columns:1fr}
}
@media(max-width:760px){
  .v159-wrap{padding-bottom:28px}.v159-head{display:block;margin-bottom:14px}.v159-actions{margin-top:9px}.v159-grid{gap:8px}.v159-stat{padding:11px;min-height:76px}.v159-stat b{font-size:18px}.v159-tabs{display:grid;grid-template-columns:1fr 1fr;gap:7px;border-bottom:0;padding-bottom:0}.v159-tab{width:100%;font-size:12px;padding:8px 6px}.v159-toolbar{grid-template-columns:1fr;padding:10px}.v159-score-fields{grid-template-columns:1fr}.v159-person{grid-template-columns:42px minmax(0,1fr);gap:10px}.v159-avatar{width:42px;height:42px}.v159-status{grid-column:1/-1;justify-content:flex-start;padding-inline-start:52px}.v159-overlay{align-items:flex-end;padding:0}.v159-modal{width:100%;max-height:92dvh;margin:0;border-radius:20px 20px 0 0;padding:14px;padding-bottom:max(16px,env(safe-area-inset-bottom))}.v159-run-combined{grid-template-columns:1fr 1fr 1fr}.v159-user{padding-inline:10px}.v159-event-card header{align-items:flex-start}.v159-best{font-size:17px}.v159-run-head{grid-template-columns:minmax(0,1fr) auto}.v159-run-head .hide-sm{display:none}.v159-row{grid-template-columns:1fr}.v159-row .v159-btn{width:100%}
  /* Results/history tables become readable card rows on phones instead of escaping dashboard width */
  .v159-table-wrap{border:0;background:transparent;overflow:visible}.v159-table{min-width:0;display:block}.v159-table thead{display:none}.v159-table tbody{display:grid;gap:9px}.v159-table tr{display:grid;grid-template-columns:1fr 1fr;gap:7px;background:var(--card);border:1px solid var(--border);border-radius:14px;padding:10px}.v159-table td{display:block;border:0!important;padding:3px 4px;font-size:12px;overflow-wrap:anywhere}.v159-table td:nth-child(2){font-weight:700}.v159-table .v159-rank{font-size:17px}
}
@media(max-width:420px){.v159-tabs{grid-template-columns:1fr}.v159-grid{grid-template-columns:1fr 1fr}.v159-run-combined{grid-template-columns:1fr}.v159-person{padding:10px}.v159-status{padding-inline-start:0}.v159-table tr{grid-template-columns:1fr}.v159-event-card{padding:11px}}
