.ministry-page{gap:24px;min-width:0;display:grid}.ministry-page h1{font-size:var(--text-heading-lg);margin:0}.ministry-page h2{font-size:var(--text-heading-sm);margin:0 0 12px}.ministry-page p{margin:8px 0}.ministry-hint{color:var(--color-text-muted);font-size:var(--text-body-sm)}.ministry-panel{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card);min-width:0;padding:24px}.ministry-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:16px;display:grid}.ministry-page label{gap:6px;min-width:0;display:grid}.ministry-page input,.ministry-page select,.ministry-page textarea{box-sizing:border-box;border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);width:100%;min-width:0;min-height:44px;color:var(--color-text);font:inherit;padding:10px 12px}.ministry-page button{font:inherit;border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);min-height:44px;color:var(--color-text);cursor:pointer;padding:8px 16px}.ministry-page button.primary{background:var(--color-primary);color:var(--color-on-primary)}.ministry-page button:disabled{opacity:.55;cursor:not-allowed}.ministry-page :focus-visible{outline:3px solid var(--color-info);outline-offset:3px}.ministry-actions{flex-wrap:wrap;align-items:center;gap:12px;margin:16px 0 0;display:flex}.ministry-needs{grid-template-columns:minmax(100px,1fr) minmax(100px,1fr) 90px auto;align-items:end;gap:12px;margin:12px 0;display:grid}.ministry-schedule{border-top:1px solid var(--color-border);padding:20px 0}.ministry-schedule:first-of-type{border-top:0}.ministry-schedule h3{margin:0}.ministry-slots{grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));gap:12px;margin-top:16px;display:grid}.ministry-page [role=alert]{border:1px solid var(--color-danger);color:var(--color-danger);border-radius:8px;padding:16px}.ministry-page [role=status]{background:var(--color-info-surface);border-radius:8px;padding:12px}.ministry-qr{text-align:center;max-width:420px;margin:auto}.ministry-qr img{background:#fff;width:100%;max-width:360px;height:auto}.ministry-token{overflow-wrap:anywhere;-webkit-user-select:all;user-select:all;background:var(--color-canvas);border-radius:8px;padding:12px;font-family:monospace;font-size:13px}.ministry-page video{background:#111;border-radius:12px;width:100%;max-height:360px}.ministry-month{max-width:240px}.ministry-status{font-size:var(--text-body-sm);background:var(--color-info-surface);border-radius:20px;padding:4px 10px;display:inline-block}.ministry-list{gap:16px;display:grid}.ministry-preview-qr{border:2px dashed var(--color-border);margin:20px 0;padding:64px 16px}@media (width<=600px){.ministry-panel{padding:16px}.ministry-needs{grid-template-columns:1fr 1fr}.ministry-page{gap:16px}.ministry-actions>*{flex-grow:1}}.ministry-fieldset{border:1px solid var(--color-border);border-radius:var(--radius-control);grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:12px;margin:16px 0;padding:16px;display:grid}.ministry-fieldset legend{padding:0 8px;font-weight:600}.ministry-page .ministry-check{align-items:center;gap:10px;min-height:44px;display:flex}.ministry-page .ministry-check input{flex-shrink:0;width:20px;height:20px;min-height:20px}.ministry-page .ministry-fieldset p{grid-column:1/-1}.ministry-card{isolation:isolate;transition:border-color .15s,box-shadow .15s;position:relative}.ministry-card:focus-within{border-color:var(--color-primary);box-shadow:0 3px 14px #24426712}.ministry-card:has(>h2 .ministry-card-open:hover){border-color:var(--color-primary);box-shadow:0 3px 14px #24426712}.ministry-card:has(>h3 .ministry-card-open:hover){border-color:var(--color-primary);box-shadow:0 3px 14px #24426712}.ministry-page .ministry-card-open{min-height:0;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:0;padding:0}.ministry-card-open:after{content:"";border-radius:var(--radius-panel);z-index:1;position:absolute;inset:0}.ministry-card-open:focus-visible:after{outline:3px solid var(--color-primary);outline-offset:3px}.ministry-card button:not(.ministry-card-open),.ministry-card a:not(.ministry-card-open),.ministry-card input,.ministry-card select,.ministry-card-child{z-index:2;position:relative}.ministry-detail{border:1px solid var(--color-border);border-radius:var(--radius-panel);width:min(680px,100% - 32px);max-height:88dvh;color:var(--color-text);background:var(--color-surface);margin:auto;padding:24px;overflow:auto}.ministry-detail::backdrop{background:#13233970}.ministry-detail-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.ministry-detail-header h2{overflow-wrap:anywhere;margin:0}.ministry-details{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.ministry-details dt{color:var(--color-text-muted);font-size:13px}.ministry-details dd{white-space:pre-wrap;overflow-wrap:anywhere;margin:4px 0 0}.ministry-sortable-row{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);gap:12px;margin:8px 0;padding:12px;display:flex}.ministry-sortable-row .ministry-needs{flex:1;min-width:0;margin:0}.ministry-sort-controls{align-items:end;gap:4px;display:flex}.ministry-sort-controls button{place-items:center;min-width:40px;padding:8px;display:grid}.ministry-sort-controls .ministry-drag-handle{cursor:grab;touch-action:none}.ministry-sortable-row.is-dragging{border-color:var(--color-primary);box-shadow:0 3px 12px #24426720}.ministry-sortable-row.is-dragging .ministry-drag-handle{cursor:grabbing}.ministry-sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width<=800px){.ministry-sortable-row{flex-direction:column}.ministry-sort-controls{align-items:center}}@media (width<=480px){.ministry-details{grid-template-columns:1fr}.ministry-detail{padding:18px}.ministry-sortable-row .ministry-needs{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.ministry-card{transition:none}}.ministry-department-slots{border:1px solid var(--color-border);border-radius:12px;gap:12px;min-width:0;margin:0;padding:16px;display:grid}.ministry-department-slots legend{padding:0 6px;font-weight:600}
