/* CSS / panel-improvements.css / browsers / responsive account tools and execution states */
[hidden] { display: none !important; }
button, input, select, textarea { font: inherit; }
button { -webkit-tap-highlight-color: transparent; }
button:focus-visible, a:focus-visible, input:focus-visible, textarea:focus-visible, select:focus-visible {
    outline: 3px solid var(--accent); outline-offset: 3px;
}
button:disabled { opacity: .55; cursor: wait; transform: none !important; }
.main-content { width: calc(100% - 260px); padding-bottom: max(32px, env(safe-area-inset-bottom)); }
.view-section { max-width: 1200px; margin-inline: auto; }
.section-description { max-width: 64ch; margin: -10px 0 26px; color: var(--text-dim); line-height: 1.6; font-size: .9rem; }
.tools-grid-minimal {
    display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
    align-items: stretch; gap: 16px; width: 100%; position: static; transform: none;
}
.tools-grid-minimal .tool-card-clean { width: 100%; min-width: 0; min-height: 166px; padding: 24px 16px; color: var(--text-main); font: inherit; }
.tool-card-clean h3 { font-size: 1rem; line-height: 1.4; }
.tool-card-clean p { font-size: .82rem; line-height: 1.5; }
.tool-card-clean .material-symbols-rounded { display: grid; place-items: center; width: 48px; height: 48px; border-radius: 14px; background: color-mix(in srgb, var(--accent) 10%, transparent); font-size: 28px; }
.tool-card-clean.danger-zone { border-color: color-mix(in srgb, var(--danger) 35%, var(--border)); }
.tool-card-clean.danger-zone .material-symbols-rounded { background: color-mix(in srgb, var(--danger) 10%, transparent); }
.account-beta-badge { font-size: .65rem; letter-spacing: .04em; }
.action-progress { max-width: 1200px; margin: 0 auto 26px; padding: 22px; border: 1px solid var(--border); border-radius: 18px; background: var(--bg-card); }
.action-progress-heading { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 12px; }
.action-progress h2 { font-size: 1.12rem; margin-top: 5px; }
.eyebrow { color: var(--text-dim); font-size: .65rem; font-weight: 700; letter-spacing: .12em; }
.job-state { color: var(--accent); background: color-mix(in srgb, var(--accent) 10%, transparent); border-radius: 999px; padding: 6px 11px; font-size: .75rem; font-weight: 600; }
.action-progress[data-state="failed"] .job-state { color: var(--danger); }
.action-progress[data-state="completed"] .job-state { color: var(--success); }
#actionProgressStage { margin: 16px 0 12px; font-size: .9rem; }
.job-counts { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
.job-counts > div { padding: 12px; border: 1px solid var(--border); border-radius: 12px; min-width: 0; }
.job-counts dt { color: var(--text-dim); font-size: .74rem; line-height: 1.4; }
.job-counts dd { margin: 5px 0 0; font-size: 1.4rem; font-weight: 700; font-variant-numeric: tabular-nums; }
.job-note { color: var(--text-dim); font-size: .78rem; line-height: 1.6; margin-top: 12px; overflow-wrap: anywhere; }
.job-actions { display: flex; gap: 10px; flex-wrap: wrap; margin-top: 14px; }
.job-actions button { width: auto; min-height: 44px; }
.confirmation-summary { margin: 12px 0 0; border: 1px solid var(--border); border-radius: 12px; padding: 12px; color: var(--text-main); background: var(--bg-input); font-size: .84rem; line-height: 1.6; overflow-wrap: anywhere; }
.confirmation-summary:empty { display: none; }
.modal-open { overflow: hidden; }
.modal-overlay { visibility: hidden; padding: 16px; }
.modal-overlay.active { visibility: visible; }
.modal-box-clean { width: min(100%, 480px); max-height: calc(100dvh - 32px); overflow-y: auto; overscroll-behavior: contain; padding: 24px; }
.modal-box-clean .modal-text { line-height: 1.65; overflow-wrap: anywhere; }
.modal-box-clean button { min-height: 44px; }
.selection-list { min-height: 80px; overscroll-behavior: contain; }
button.server-item, button.dm-item { width: 100%; text-align: left; font: inherit; color: var(--text-main); background: var(--bg-card); cursor: pointer; }
.server-item > span, .dm-name, .channel-info { min-width: 0; overflow-wrap: anywhere; }
.clean-log-item > span:last-child { min-width: 0; overflow-wrap: anywhere; line-height: 1.6; }
.clean-log-item .material-symbols-rounded { flex-shrink: 0; }
.profile-bio-card { overflow-wrap: anywhere; }
@media (max-width: 768px) {
    .main-content { width: 100%; padding-inline: 20px; }
    .tools-grid-minimal { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; width: 100%; left: auto; transform: none; }
    .tools-grid-minimal .tool-card-clean { min-height: 158px; padding: 18px 10px; }
    .tool-card-clean h3 { font-size: .93rem; }
    .tool-card-clean p { font-size: .76rem; }
    .section-title { font-size: clamp(1.35rem, 5vw, 1.8rem); }
    .section-description { font-size: .82rem; margin-bottom: 20px; }
    .action-progress { padding: 16px; }
    .job-counts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .modal-box-clean { padding: 20px; border-radius: 18px; }
    .modal-box-clean input, .modal-box-clean select, .modal-box-clean textarea, .account-lookup input { font-size: 16px; }
    .job-actions button { flex: 1; }
}
@media (max-width: 350px) {
    .tools-grid-minimal { grid-template-columns: 1fr; }
}
@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { animation-duration: .01ms !important; transition-duration: .01ms !important; scroll-behavior: auto !important; }
}


.job-heading-actions { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.job-heading-actions button { width: auto; min-height: 44px; padding: 8px 10px; font-size: .78rem; }
#actionProgressDetails[hidden] { display: none !important; }

.social-fields { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 12px; overflow-y: auto; padding: 4px; }
.profile-socials-list { flex-wrap: wrap; }
.guest-gallery-links { display: none; }
.guest-gallery #sidebar, .guest-gallery .mobile-header { display: none; }
.guest-gallery .main-content { margin: 0 auto; padding-top: 24px; width: min(100%,1200px); }
.guest-gallery .guest-gallery-links { display: flex; justify-content: flex-end; gap: 18px; margin-bottom: 24px; }
.guest-gallery-links a { color: var(--accent); }
@media(max-width:600px) { .social-fields { grid-template-columns: 1fr; } }

.cleanup-speed-settings { display:grid; gap:12px; padding:24px; margin-bottom:0; border:1px solid var(--border); border-radius:16px; background:var(--bg-card); }
.cleanup-speed-settings h3 { font-size:1rem; margin-bottom:6px; }
.cleanup-speed-settings p { color:var(--text-dim); font-size:.8rem; line-height:1.6; }
.cleanup-speed-settings label { font-size:.8rem; font-weight:600; }


.cleanup-speed-trigger { display:flex; align-items:center; justify-content:center; gap:8px; margin-bottom:24px; min-height:44px; }
@media (max-width:600px) { .cleanup-speed-trigger { width:100%; } }

.cleanup-speed-options { border:0; padding:0; margin:0; display:grid; gap:8px; min-width:0; }
.cleanup-speed-options legend { padding:0 0 10px; color:var(--text-dim); font-size:.8rem; text-align:left; }
.cleanup-speed-option { display:flex; align-items:center; gap:12px; padding:12px 14px; min-height:48px; border:1px solid var(--border); border-radius:12px; cursor:pointer; text-align:left; background:var(--bg-input); }
.cleanup-speed-option input { appearance:none; width:20px; height:20px; margin:0; flex-shrink:0; border:2px solid var(--text-dim); border-radius:50%; }
.cleanup-speed-option input:checked { border:6px solid var(--accent); background:var(--text-main); }
.cleanup-speed-option:has(input:checked) { border-color:var(--accent); background:rgba(116,87,237,.14); }
.cleanup-speed-option:has(input:focus-visible) { outline:2px solid var(--accent); outline-offset:3px; }
.cleanup-speed-option small { margin-left:auto; color:var(--text-dim); white-space:nowrap; }
.cleanup-speed-options:disabled { opacity:.6; }
