/* Shared controls: keep the app's blue/white theme instead of native desktop chrome. */
:root{--control-border:#dce2ed;--control-text:#445169;--control-muted:#7a879c;--control-focus:#7183e7;--control-ring:0 0 0 3px #5366df20}
button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #aab7f1;outline-offset:3px}
::selection{background:#dfe5ff;color:#293754}
select:not([multiple]){-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath d='m4 6 4 4 4-4' fill='none' stroke='%237a879c' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:16px;padding-right:36px;cursor:pointer}
.field input:not([type=checkbox]):not([type=radio]):not([type=color]),.field textarea,.field select,.join-panel input{border:1px solid var(--control-border);border-radius:9px;background-color:#fff;color:var(--control-text);font-family:var(--sans);box-shadow:none;transition:border-color .15s,box-shadow .15s}
.field input:not([type=checkbox]):not([type=radio]):not([type=color]),.field select,.join-panel input{min-height:42px}
.field select{padding-right:38px}
.field input:focus,.field textarea:focus,.field select:focus,.join-panel input:focus{outline:0;border-color:var(--control-focus);box-shadow:var(--control-ring)}
.field input::placeholder,.field textarea::placeholder,.search-field input::placeholder{color:#8a96a9}
.field input:disabled,.field textarea:disabled,.field select:disabled{background-color:#f4f6fa;color:#8b96a8;cursor:default}
.field input[type=checkbox],.field input[type=radio],.checkbox input{accent-color:#5366df;box-shadow:none}
.field input[type=file]{padding:7px 9px;font-size:12px;color:var(--control-muted)}
.field input[type=file]::file-selector-button{font:inherit;font-weight:500;color:#5265ce;background:#eef1ff;border:1px solid #dfe4fc;border-radius:6px;padding:7px 11px;margin-right:12px;cursor:pointer}
.search-field{height:42px;min-width:0;background:#fff;border:1px solid var(--control-border);border-radius:9px;padding:0 12px;gap:9px;transition:border-color .15s,box-shadow .15s}
.search-field input{font:inherit;font-size:13px;width:100%;min-width:0;color:var(--control-text);background:transparent;border:0;outline:0;box-shadow:none}
.search-field svg{width:17px;height:17px;color:#8995aa}
.search-field:focus-within{outline:0;border-color:var(--control-focus);box-shadow:var(--control-ring)}
.filter-select{min-height:42px;min-width:132px;max-width:185px;padding:9px 36px 9px 12px;border:1px solid var(--control-border);border-radius:9px;background-color:#fff;color:var(--control-text);font:inherit;font-size:13px;line-height:1.4;box-shadow:none;transition:border-color .15s,box-shadow .15s}
.filter-select:hover,.field select:hover:not(:disabled){border-color:#bfcbe1}
.filter-select:focus-visible,.lp-learner-select:focus-visible{outline:0;border-color:var(--control-focus);box-shadow:var(--control-ring)}
.lp-learner-select{appearance:none;-webkit-appearance:none;min-height:36px;border-radius:8px;border-color:var(--control-border);background-color:#fff;padding-right:35px}
.btn{border-radius:9px;min-height:42px}
.btn.compact{min-height:36px;border-radius:8px}
.btn.secondary{border-color:var(--control-border);background:#fff;color:var(--control-text)}
.btn.secondary:hover{background:#f4f6fd;border-color:#c4cee5}
.icon-btn{border-radius:8px}
.field input[aria-invalid=true],.field textarea[aria-invalid=true],.field select[aria-invalid=true]{border-color:#d797a1}
@media(max-width:560px){
  .search-field,.filter-select{min-height:42px;height:42px}
  .filter-select{min-width:122px;max-width:160px;font-size:12px;padding-left:10px;padding-right:31px;background-position:right 9px center}
  .search-field{padding-inline:10px}.search-field input{font-size:16px}
  .field input:not([type=checkbox]):not([type=radio]):not([type=color]),.field textarea,.field select,.join-panel input{font-size:16px;min-height:44px}
  .field input[type=file]{font-size:12px}
  .btn:not(.compact){min-height:44px}
}
@media(forced-colors:active){.field input:focus,.field textarea:focus,.field select:focus,.filter-select:focus-visible,.search-field:focus-within{outline:2px solid Highlight;outline-offset:2px}select:not([multiple]){appearance:auto;background-image:none}}
.checking-guide{display:flex;align-items:flex-start;gap:12px;padding:15px 16px;background:#f5f7fc;border:1px solid #e4e9f3;border-radius:9px;margin:0 0 18px}.checking-guide>span{display:grid;place-items:center;min-width:30px;height:30px;background:#e8edff;border-radius:7px;color:#5366df;font-size:18px}.checking-guide strong{font-size:12px;font-weight:600;color:#46546e}.checking-guide p{font-size:11px;line-height:1.65;color:#7b879c;margin:4px 0 0}
.field input[type=checkbox],.field input[type=radio],.checkbox input{width:18px;height:18px;min-height:18px;max-width:18px;padding:0;flex:0 0 18px;margin:2px 0 0;vertical-align:middle;border-radius:4px}
.field input[type=radio]{border-radius:50%}
