.appdir-tiles { display:grid; grid-template-columns:repeat(auto-fill,minmax(180px,1fr)); gap:14px; margin:24px 0; }
.appdir-tile { background:#fff; border:1px solid #dcdcde; border-radius:10px; padding:18px; }
.appdir-tile-value { font-size:28px; font-weight:700; color:#1d2327; }
.appdir-tile-label { color:#646970; font-size:13px; margin-top:4px; }
.appdir-submissions { display:flex; flex-direction:column; gap:14px; margin-top:16px; }
.appdir-submission { background:#fff; border:1px solid #dcdcde; border-radius:10px; padding:18px; }
.appdir-submission-body { display:flex; gap:16px; align-items:flex-start; }
.appdir-submission-logo { width:72px; height:72px; border:1px solid #dcdcde; border-radius:8px; background:linear-gradient(135deg,#f8fafc,#e2e8f0); display:flex; align-items:center; justify-content:center; overflow:hidden; flex-shrink:0; }
.appdir-submission-logo img { max-width:100%; max-height:100%; object-fit:contain; padding:4px; }
.appdir-submission-main h3 { margin:0 0 4px; font-size:16px; }
.appdir-submission-contact { color:#646970; margin:0; font-size:13px; }
.appdir-submission-location { color:#646970; margin:4px 0 0; font-size:13px; }
.appdir-submission-desc { margin:8px 0 0; font-size:13px; }
.appdir-submission-tags { color:#50575e; font-size:12px; margin:8px 0 0; }
.appdir-submission-actions { margin-top:12px; padding-top:12px; border-top:1px solid #f0f0f1; display:flex; gap:8px; flex-wrap:wrap; }

.appdir-term-picker { border:0; padding:0; margin:0 0 12px; }
.appdir-term-picker legend { padding:0; margin-bottom:4px; font-size:13px; }
.appdir-term-picker .description { margin:0 0 10px; color:#50575e; font-size:12px; }
.appdir-term-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(200px,1fr)); gap:6px 10px; max-height:240px; overflow-y:auto; padding:10px; background:#f6f7f7; border:1px solid #dcdcde; border-radius:6px; }
.appdir-term-option { display:flex; align-items:center; gap:6px; font-size:13px; cursor:pointer; padding:4px 6px; border-radius:4px; }
.appdir-term-option:hover { background:#fff; }
.appdir-term-option.is-checked { background:#e7f3ff; color:#2271b1; }
.appdir-term-option input[type="checkbox"] { margin:0; }
.appdir-term-add { margin-top:10px !important; }
.appdir-term-add input { width:100%; }

/* Service-area coverage picker */
.appdir-cov-picker { display:flex; gap:8px; align-items:center; flex-wrap:wrap; margin-bottom:14px; padding:10px; background:#f6f7f7; border:1px solid #dcdcde; border-radius:6px; }
.appdir-cov-picker select { min-width:180px; width:auto; flex:0 1 auto; }
.appdir-listing-form .appdir-cov-picker select { width:auto; flex:0 1 auto; min-width:180px; }
.appdir-cov-list { display:flex; flex-direction:column; gap:10px; }
.appdir-cov-row { background:#fff; border:1px solid #dcdcde; border-radius:8px; padding:12px 14px; }
.appdir-cov-row-head { display:flex; justify-content:space-between; align-items:center; margin-bottom:8px; }
.appdir-cov-row-head strong { font-size:14px; }
.appdir-cov-modes { display:flex; gap:14px; align-items:center; font-size:13px; flex-wrap:wrap; margin-bottom:10px; }
.appdir-listing-form .appdir-cov-modes label,
.appdir-cov-modes label { display:inline-flex !important; flex-direction:row !important; align-items:center; gap:6px; margin:0; font-weight:400; cursor:pointer; }
.appdir-cov-modes input[type="radio"] { flex-shrink:0; margin:0; }
.appdir-cov-cities { padding:10px 12px; background:#f6f7f7; border-radius:6px; }
.appdir-cov-citygrid { display:grid; grid-template-columns:repeat(auto-fill,minmax(170px,1fr)); gap:4px 10px; max-height:240px; overflow-y:auto; }
.appdir-listing-form .appdir-cov-citygrid label,
.appdir-cov-citygrid label { display:flex !important; flex-direction:row !important; align-items:center; justify-content:flex-start; gap:8px; padding:6px 8px; border-radius:4px; font-size:13px; font-weight:400; text-align:left; cursor:pointer; border:0; }
.appdir-cov-citygrid label:hover { background:#fff; }
.appdir-cov-citygrid input[type="checkbox"] { flex-shrink:0; margin:0; }
.appdir-cov-remove { background:transparent; border:0; color:#b32d2e; cursor:pointer; font-size:12px; }
@media (max-width:640px) {
	.appdir-cov-picker { flex-direction:column; align-items:stretch; }
	.appdir-cov-picker select, .appdir-cov-picker .button { width:100%; min-width:0; }
	.appdir-cov-citygrid { grid-template-columns:1fr; }
	.appdir-cov-row-head { flex-wrap:wrap; }
}

/* Inline list-table controls */
.appdir-inline-toggle { background:transparent; border:0; font-size:18px; line-height:1; cursor:pointer; padding:2px 6px; border-radius:6px; transition:background .12s; }
.appdir-inline-toggle.is-on  { filter:none; }
.appdir-inline-toggle.is-off { filter:grayscale(1) opacity(.4); }
.appdir-inline-toggle:hover  { background:#f0f0f1; filter:none; }
.appdir-inline-rating { margin:0; padding:0; display:inline-flex; }
.appdir-inline-rating input { width:64px; padding:3px 6px; font-size:13px; border:1px solid #dcdcde; border-radius:4px; text-align:center; }
.appdir-inline-rating input:focus { border-color:#2271b1; outline:none; box-shadow:0 0 0 1px #2271b1; }
