
/* Additions for newer functional pages while the Sep-17 original public UI is restored. */
.public-apply-page,.public-event-detail{max-width:100%}
.public-apply-intro{margin-bottom:22px}
.public-apply-intro .public-section-kicker{display:inline-flex;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--primary);margin-bottom:6px}
.public-apply-intro h1{font-family:var(--font-display);font-weight:800;color:var(--text);margin:0 0 8px}
.public-apply-intro p{color:var(--text-muted);max-width:760px;margin:0}
.public-apply-notice{display:flex;gap:12px;padding:14px 16px;border-radius:var(--radius);border:1px solid var(--border);margin-bottom:18px;background:var(--surface)}
.public-apply-notice.success{border-color:color-mix(in srgb,var(--success) 38%,var(--border))}
.public-apply-notice.error{border-color:color-mix(in srgb,var(--danger) 38%,var(--border))}
.public-apply-notice>i{margin-top:3px;color:var(--primary)}
.public-apply-notice p{margin:3px 0 0;color:var(--text-muted)}
.public-apply-notice code{display:inline-block;margin-top:8px;font-weight:800}
.public-apply-form{display:grid;gap:16px}
.public-form-section{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:20px;box-shadow:var(--shadow-sm)}
.public-form-section-head{display:flex;gap:12px;align-items:flex-start;margin-bottom:18px}
.public-form-section-head>span{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;flex:0 0 34px;background:var(--primary-light);color:var(--primary);font-weight:800}
.public-form-section-head h2{font-family:var(--font-display);font-size:1.05rem;font-weight:800;margin:0 0 3px;color:var(--text)}
.public-form-section-head p{margin:0;color:var(--text-muted);font-size:.84rem}
.public-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.public-form-grid label{display:grid;gap:6px;min-width:0}
.public-form-grid label>span{font-size:.78rem;font-weight:700;color:var(--text-secondary)}
.public-form-grid input,.public-form-grid select,.public-form-grid textarea,.public-result-row input,.public-result-row select{width:100%;min-width:0;padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text);outline:none}
.public-form-grid input:focus,.public-form-grid select:focus,.public-form-grid textarea:focus,.public-result-row input:focus,.public-result-row select:focus{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 14%,transparent)}
.public-form-wide{grid-column:1/-1}
.public-results-methods{display:grid;gap:14px}
.public-results-upload-card{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;padding:16px;border:1px dashed var(--border);border-radius:var(--radius);background:var(--bg-secondary)}
.public-results-icon{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:var(--primary-light);color:var(--primary)}
.public-results-upload-card strong{display:block;color:var(--text)}
.public-results-upload-card p{margin:3px 0 0;color:var(--text-muted);font-size:.8rem}
.public-file-picker input{position:absolute;opacity:0;pointer-events:none}
.public-file-picker span,.public-add-result{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:9px 12px;border-radius:var(--radius);border:1px solid var(--border);background:var(--surface);color:var(--text);font-weight:700;font-size:.78rem;cursor:pointer}
.public-results-or{display:flex;align-items:center;gap:10px;color:var(--text-muted);font-size:.68rem;font-weight:800;letter-spacing:.05em}
.public-results-or:before,.public-results-or:after{content:"";height:1px;background:var(--border);flex:1}
.public-results-table-head,.public-result-row{display:grid;grid-template-columns:minmax(150px,1.6fr) minmax(120px,.8fr) minmax(170px,1fr) 38px;gap:8px;align-items:center}
.public-results-table-head{padding:0 2px 7px;font-size:.7rem;font-weight:800;color:var(--text-muted);text-transform:uppercase}
.public-result-row{margin-bottom:8px}
.public-result-remove{width:36px;height:36px;border-radius:9px;border:1px solid var(--border);background:var(--surface);color:var(--text-muted)}
.public-result-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:12px 0}
.public-result-summary>div{padding:10px;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-secondary)}
.public-result-summary span{display:block;font-size:.66rem;color:var(--text-muted)}
.public-result-summary strong{display:block;margin-top:2px;font-size:.95rem;color:var(--text)}
.public-result-grade-note{color:var(--text-muted);font-size:.76rem;margin:0 0 10px}
.public-apply-submit{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 18px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}
.public-apply-submit>div{display:flex;align-items:center;gap:8px;color:var(--text-muted);font-size:.8rem}
.public-apply-submit button{border:0;border-radius:var(--radius);background:var(--primary);color:#fff;padding:11px 16px;font-weight:800}
.public-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.public-event-detail{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm)}
.public-event-detail-top{display:flex;gap:18px;padding:22px;border-bottom:1px solid var(--border)}
.public-event-date-block{width:76px;min-width:76px;border-radius:var(--radius);background:var(--primary);color:#fff;text-align:center;padding:10px 6px}
.public-event-date-block span,.public-event-date-block small{display:block;font-size:.7rem;font-weight:700}
.public-event-date-block strong{display:block;font-family:var(--font-display);font-size:1.8rem;line-height:1.05}
.public-event-pill{font-size:.7rem;font-weight:800;color:var(--primary);text-transform:uppercase;letter-spacing:.06em}
.public-event-detail-copy h1{font-family:var(--font-display);font-weight:800;margin:5px 0 9px;color:var(--text)}
.public-event-detail-meta{display:flex;flex-wrap:wrap;gap:10px 16px;color:var(--text-muted);font-size:.8rem}
.public-event-detail-meta span{display:inline-flex;gap:6px;align-items:center}
.public-event-detail-body{padding:22px}
.public-event-detail-body h2{font-family:var(--font-display);font-size:1rem;font-weight:800;color:var(--text)}
.public-event-richtext,.public-event-detail-body p{color:var(--text-secondary);line-height:1.75}
.original-event-link{display:block;height:100%;text-decoration:none;background:rgba(255,255,255,.15);border-radius:var(--radius);padding:12px;border:1px solid rgba(255,255,255,.2);transition:transform .15s ease,background .15s ease}
.original-event-link:hover{transform:translateY(-2px);background:rgba(255,255,255,.21)}
@media(max-width:767.98px){
  .public-form-grid{grid-template-columns:1fr}.public-form-wide{grid-column:auto}
  .public-results-upload-card{grid-template-columns:auto 1fr}.public-file-picker{grid-column:1/-1}
  .public-results-table-head{display:none}
  .public-result-row{grid-template-columns:1fr 1fr 38px;padding:10px;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-secondary)}
  .public-result-row input:first-child{grid-column:1/-1}.public-result-row select{grid-column:1/3}.public-result-remove{grid-column:3;grid-row:2}
  .public-result-summary{grid-template-columns:1fr 1fr}
  .public-apply-submit{align-items:stretch;flex-direction:column}.public-apply-submit button{width:100%}
  .public-event-detail-top{align-items:flex-start}.public-event-date-block{width:64px;min-width:64px}
}
