.container {max-width:1200px;margin:0 auto;padding:40px 20px}.login-container {max-width:600px;margin:0 auto;background:linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,.01));border:1px solid var(--stroke);border-radius:var(--radius);padding:42px;box-shadow:0 10px 30px rgba(0,0,0,.35), 0 2px 6px rgba(0,0,0,.25);position:relative;overflow:hidden}.login-header {text-align:center;margin-bottom:40px}.login-header h1 {margin:0 0 16px 0;font-size:32px;line-height:1.1;letter-spacing:-.02em;background:linear-gradient(135deg, var(--text), var(--muted));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.login-header p {margin:0 0 26px 0;color:var(--muted);font-size:16px;line-height:1.5}.key-form {margin-bottom:40px}.form-group {margin-bottom:25px}.form-group label {font-size:12px;color:var(--muted);display:block;margin-bottom:8px}.form-group input {width:100%;padding:14px;border-radius:12px;background:var(--panel);border:1px solid var(--stroke);color:var(--text);outline:none;transition:border .15s, box-shadow .15s;font-size:16px;font-family:'SF Mono', Monaco, 'Cascadia Code', 'Roboto Mono', Consolas, monospace}.form-group input::placeholder {color:var(--muted)}.form-group input:focus {border-color:var(--accent);box-shadow:0 0 0 4px rgba(140,198,63,.15)}.error-message {background:var(--danger-bg);border:1px solid var(--danger-border);color:var(--danger);padding:15px 20px;border-radius:var(--radius);margin-bottom:25px;text-align:center}.help-section {background:var(--panel-2);border:1px solid var(--stroke);border-radius:var(--radius);padding:30px;margin-top:40px}.help-section h3 {color:var(--text);margin:0 0 15px 0;font-size:20px;font-weight:600}.help-section p {color:var(--muted);margin-bottom:15px;line-height:1.6}.purchase-link {display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border-radius:10px;background:var(--panel);border:1px solid var(--stroke);color:var(--text);text-decoration:none;transition:all .15s ease;font-size:13px;font-weight:500;margin-top:15px}.purchase-link:hover {background:var(--panel-2);border-color:var(--accent);transform:translateY(-1px)}.history-header {text-align:center;margin-bottom:40px}.history-header h1 {margin:0 0 16px 0;font-size:32px;line-height:1.1;letter-spacing:-.02em;background:linear-gradient(135deg, var(--text), var(--muted));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.account-status {background:linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,.01));border:1px solid var(--stroke);border-radius:var(--radius);padding:30px;margin-bottom:40px;position:relative;display:flex;align-items:stretch;gap:30px}.status-left {flex:1;display:flex;flex-direction:column;gap:16px}.status-stats {display:flex;gap:16px;flex:1}.stat-card {text-align:left;border:1px solid var(--stroke);border-radius:8px;padding:20px 24px;flex:1}.stat-label {color:var(--muted);font-size:11px !important;text-transform:uppercase;letter-spacing:0.5px;font-weight:400;line-height:1.2;margin-bottom:8px !important}.stat-number {font-size:3em;font-weight:bold;line-height:1}.stat-number.completed {color:var(--ok)}.stat-number.remaining[data-value="0"], .stat-number.remaining[data-value="1"], .stat-number.remaining[data-value="2"], .stat-number.remaining[data-value="3"] {color:#ff6b35}.stat-number.remaining[data-value="4"], .stat-number.remaining[data-value="5"], .stat-number.remaining[data-value="6"], .stat-number.remaining[data-value="7"], .stat-number.remaining[data-value="8"], .stat-number.remaining[data-value="9"] {color:var(--warn)}.stat-number.remaining:not([data-value="0"]):not([data-value="1"]):not([data-value="2"]):not([data-value="3"]):not([data-value="4"]):not([data-value="5"]):not([data-value="6"]):not([data-value="7"]):not([data-value="8"]):not([data-value="9"]) {color:var(--ok)}.stat-number.expires.expired {color:#ff4444 !important}.stat-number.expires[data-value="0"], .stat-number.expires[data-value="1"], .stat-number.expires[data-value="2"], .stat-number.expires[data-value="3"], .stat-number.expires[data-value="4"], .stat-number.expires[data-value="5"], .stat-number.expires[data-value="6"] {color:#ff6b35}.stat-number.expires[data-value="7"], .stat-number.expires[data-value="8"], .stat-number.expires[data-value="9"], .stat-number.expires[data-value="10"], .stat-number.expires[data-value="11"], .stat-number.expires[data-value="12"], .stat-number.expires[data-value="13"] {color:var(--warn)}.stat-number.expires:not([data-value="0"]):not([data-value="1"]):not([data-value="2"]):not([data-value="3"]):not([data-value="4"]):not([data-value="5"]):not([data-value="6"]):not([data-value="7"]):not([data-value="8"]):not([data-value="9"]):not([data-value="10"]):not([data-value="11"]):not([data-value="12"]):not([data-value="13"]) {color:var(--accent)}.stat-sublabel {color:var(--muted);font-size:14px;text-transform:none;letter-spacing:normal;font-weight:normal;margin-top:2px}.status-actions {flex:0 0 auto;display:flex;flex-direction:column;gap:12px;justify-content:flex-start;min-width:200px}.status-actions .btn {min-width:200px;text-align:center;display:flex;align-items:center;justify-content:center}.btn-logout:hover {background:var(--danger-bg);color:var(--danger);border-color:var(--danger-border)}@media (max-width:1050px) {.status-actions {align-items:center;justify-content:center;margin-left:0}.status-actions .btn {min-width:auto}}@media (max-width:850px) {.account-status {flex-direction:column;align-items:stretch;gap:20px}.status-stats {flex-wrap:wrap}.status-actions {flex-direction:row;flex-wrap:wrap;min-width:auto}.status-actions .btn {flex:1;min-width:140px}.stat-card {text-align:center;flex:1}.stat-number {font-size:2.5em}.status-info {border-left:none;border-top:1px solid var(--stroke);padding-left:0;padding-top:20px}}.admin-controls {margin-bottom:20px}.notes {font-size:14px;color:var(--muted)}.delete-all-container {display:flex;justify-content:space-between;align-items:center;margin-top:12px}.delete-all-container .notes {margin:0}@media (max-width:768px) {.delete-all-container {flex-direction:column;align-items:flex-start;gap:12px}}.btn-delete-all {color:#dc3545;border-color:#dc3545;font-size:12px;padding:6px 12px}.btn-delete-all:hover {background:rgba(220, 53, 69, 0.1)}.no-credits-warning {background:var(--warn-bg);border:1px solid var(--warn-border);color:var(--warn);padding:15px 20px;border-radius:var(--radius);display:flex;align-items:center;gap:10px;flex:1;max-width:400px}.help-text {max-width:600px;margin:30px auto 0 auto;text-align:center}.help-text h3 {color:var(--text);margin:40px 0 12px 0;font-size:18px;font-weight:600}.help-text h3:first-child {margin-top:0}.help-text p {color:var(--muted);margin-bottom:20px;line-height:1.6;font-size:14px}.help-text .purchase-link {margin-top:0}.help-text a:not(.purchase-link) {color:var(--accent);text-decoration:none;transition:color 0.15s ease}.help-text a:not(.purchase-link):hover {color:#fff}.scans-table-container {background:linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,.01));border:1px solid var(--stroke);border-radius:var(--radius);overflow:hidden;margin-bottom:40px}@media (max-width:768px) {.scans-table-container {background:transparent;border:none;border-radius:0}}.scans-table {width:100%;border-collapse:collapse;background:transparent}.scans-table th {background:var(--panel-2);color:var(--muted);font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:0.5px;padding:16px 20px;text-align:left;border-bottom:1px solid var(--stroke)}.scans-table td {padding:20px;border-bottom:1px solid var(--stroke);vertical-align:top}.scans-table td:first-child {padding:20px 12px}.scans-table td:nth-child(2) {padding:20px 12px}.scans-table tr:last-child td {border-bottom:none}.scans-table tr:hover {background:rgba(255,255,255,.02)}.status-badge {display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:6px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:0.5px;white-space:nowrap}.status-badge.success {background:var(--ok-bg);color:var(--ok);border:1px solid var(--ok-border)}.status-badge.processing {background:var(--warn-bg);color:var(--warn);border:1px solid var(--warn-border);display:inline-flex;align-items:center;gap:6px}.status-badge.processing .spinner {display:inline-block;width:14px;height:14px;border:2px solid rgba(251, 191, 36, 0.2);border-top-color:var(--warn);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin {to {transform:rotate(360deg)}}.delete-spinner-overlay {position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(0, 0, 0, 0.7);display:flex;align-items:center;justify-content:center;z-index:10;border-radius:var(--radius)}.delete-spinner-overlay .spinner {display:block;width:40px;height:40px;border-width:3px}.scans-table-container {position:relative}.status-badge.failed {background:var(--danger-bg);color:var(--danger);border:1px solid var(--danger-border)}.status-badge.pending {background:var(--panel-2);color:var(--muted);border:1px solid var(--stroke)}.status-badge.queued {background:var(--panel-2);color:var(--muted);border:1px solid var(--stroke)}.status-badge[data-tooltip] {cursor:help;position:relative}.status-badge[data-tooltip]::after {content:attr(data-tooltip);position:absolute;bottom:100%;left:50%;transform:translateX(-50%);margin-bottom:8px;padding:8px 12px;background:var(--panel-2);border:1px solid var(--stroke);border-radius:6px;color:var(--text);font-size:11px;font-weight:400;text-transform:none;letter-spacing:normal;white-space:normal;width:280px;line-height:1.4;opacity:0;pointer-events:none;transition:opacity 0.2s ease;z-index:1000;box-shadow:0 4px 12px rgba(0,0,0,0.2)}.status-badge[data-tooltip]:hover::after {opacity:1}@media (max-width:768px) {.status-badge[data-tooltip]::after {display:none}}.scan-date {color:var(--text);font-weight:600;margin-bottom:2px;font-size:13px}.scan-time {color:var(--muted);font-size:11px}.scan-url-link {color:var(--accent);text-decoration:none;font-weight:500;max-width:300px;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.pills-container {display:flex;flex-direction:column;gap:6px}@media (max-width:1200px) {.scan-url-link {max-width:200px}}@media (max-width:1000px) {.scan-url-link {max-width:150px}}.scan-url-link:hover {text-decoration:underline}.scan-details {font-size:11px;color:var(--muted)}.detail-item {margin-bottom:4px;white-space:nowrap}.detail-label {display:inline-block;min-width:60px;font-size:11px}.detail-value {color:var(--text);font-weight:500;font-size:11px}.credit-used {color:var(--accent)}.credit-free {color:var(--ok)}.expires-info {font-size:11px;color:var(--muted)}.expires-soon {color:var(--warn)}.expires-very-soon {color:var(--danger)}.scan-actions {display:flex;gap:8px;flex-wrap:wrap}.scan-actions .btn, .scan-actions .badge-scheduled {padding:5px 12px !important;font-size:12px !important;font-weight:500 !important;gap:4px !important;min-width:auto;line-height:1.4;border-width:1px;border-radius:8px;box-sizing:border-box;min-height:28px}.scan-actions .btn.delete {order:999}.btn:disabled, .btn[disabled] {opacity:0.5;cursor:not-allowed;pointer-events:none}.btn-schedule.no-credits {opacity:0.4;cursor:not-allowed}.stat-number.fm-credits {color:#009bdb}.stat-number.fm-credits-zero {color:var(--muted)}.dots-animate {display:inline-block;width:1.2em;text-align:left}.dots-animate::after {content:'';animation:dots 1.5s steps(4, end) infinite}@keyframes dots {0% {content:''}25% {content:'.'}50% {content:'..'}75% {content:'...'}}.empty-state {text-align:center;padding:80px 20px;background:linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,.01));border:1px solid var(--stroke);border-radius:var(--radius)}.empty-icon {font-size:4em;margin-bottom:20px;opacity:0.3}.empty-state h2 {color:var(--text);margin-bottom:15px;font-size:24px;font-weight:600}.empty-state p {color:var(--muted);margin-bottom:30px;font-size:16px;line-height:1.6}.history-footer {background:linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,.01));border:1px solid var(--stroke);border-radius:var(--radius);padding:30px;margin-top:40px}.footer-info {margin-bottom:25px}.footer-info p {margin-bottom:15px;color:var(--text);font-weight:600}.footer-info ul {list-style:none;padding:0;margin:0}.footer-info li {padding:8px 0;color:var(--muted);display:flex;align-items:center;gap:10px}.footer-actions {display:flex;gap:15px;justify-content:center;flex-wrap:wrap}.footer-actions .btn {min-width:160px}@media (max-width:850px) {.login-container {padding:30px 20px}.login-header h1 {font-size:28px}.history-header h1 {font-size:28px}.scans-table-container .scans-table {display:none}.scan-url-link {max-width:200px}.footer-actions {flex-direction:column}.no-credits-warning {max-width:none}.credits-count {font-size:2em}}.mobile-scans-grid {display:none}@media (max-width:860px) {.mobile-scans-grid {display:block;gap:16px}.mobile-scan-card {background:linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,.01));border:1px solid var(--stroke);border-radius:var(--radius);padding:20px;margin-bottom:16px}.mobile-scan-header {display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px}.mobile-scan-date {font-size:14px;color:var(--muted)}.mobile-scan-url {font-weight:600;margin:8px 0;word-break:break-all}.mobile-scan-url a {color:var(--accent);text-decoration:none}.mobile-scan-meta {display:flex;flex-wrap:wrap;gap:12px;margin:12px 0;font-size:13px}.mobile-scan-meta-item {display:flex;align-items:center;gap:4px;color:var(--muted)}.mobile-scan-actions {display:flex;gap:8px;margin-top:16px;flex-wrap:wrap}.mobile-scan-actions .btn {flex:1;min-width:auto;padding:8px 12px;font-size:13px}}.result-summary-split {display:inline-flex;align-items:center;font-size:12px;border-radius:6px;width:fit-content;margin-bottom:6px;overflow:hidden;animation:pillFadeZoom 0.4s ease-out backwards}@keyframes pillFadeZoom {from {opacity:0;transform:scale(0.8)}to {opacity:1;transform:scale(1)}}.result-summary-content {display:flex;align-items:center;gap:6px;padding:4px 10px}.result-summary-count {padding:4px 8px;font-weight:600;font-variant-numeric:tabular-nums}.result-icon {font-size:14px;line-height:1}.result-text {font-weight:500;white-space:nowrap}.result-summary-split.safe .result-summary-content {background:var(--ok-bg);color:var(--ok)}.result-summary-split.safe .result-summary-count {background:rgba(140, 198, 63, 0.25);color:var(--ok)}.result-summary-split.warning .result-summary-content {background:var(--warn-bg);color:var(--warn)}.result-summary-split.warning .result-summary-count {background:rgba(245, 158, 11, 0.25);color:var(--warn)}.result-summary-split.info .result-summary-content {background:var(--review-bg);color:var(--review)}.result-summary-split.info .result-summary-count {background:rgba(59, 130, 246, 0.25);color:var(--review)}.result-summary-split.neutral .result-summary-content {background:rgba(128, 128, 128, 0.1);color:#9ca3af}.result-summary-split.neutral .result-summary-count {background:rgba(128, 128, 128, 0.2);color:#9ca3af}.result-summary {display:flex;align-items:center;gap:6px;font-size:12px;padding:4px 10px;border-radius:6px;width:fit-content;margin-bottom:6px;animation:pillFadeZoom 0.4s ease-out backwards}.result-summary.safe {background:var(--ok-bg);color:var(--ok)}.result-summary.warning {background:var(--warn-bg);color:var(--warn)}.result-summary.info {background:var(--review-bg);color:var(--review)}.result-summary.neutral {background:rgba(128, 128, 128, 0.1);color:#9ca3af}.scan-details-animated {animation:fadeUp 0.5s ease-out}@keyframes fadeUp {from {opacity:0;transform:translateY(10px)}to {opacity:1;transform:translateY(0)}}.btn-animated {animation:fadeIn 0.6s ease-out backwards}@keyframes fadeIn {from {opacity:0}to {opacity:1}}.status-badge.success {animation:badgePulse 0.4s ease-out}@keyframes badgePulse {0% {transform:scale(1)}50% {transform:scale(1.1)}100% {transform:scale(1)}}.pills-container .result-summary:nth-child(1) {animation-delay:0.1s}.pills-container .result-summary:nth-child(2) {animation-delay:0.2s}.pills-container .result-summary:nth-child(3) {animation-delay:0.3s}.pills-container .result-summary:nth-child(4) {animation-delay:0.4s}.pills-container .result-summary:nth-child(5) {animation-delay:0.5s}.btn-animated:nth-child(1) {animation-delay:0.2s}.btn-animated:nth-child(2) {animation-delay:0.3s}.btn-animated:nth-child(3) {animation-delay:0.4s}.reserved-credits-banner {padding:10px 16px;background:rgba(255, 193, 7, 0.1);border:1px solid rgba(255, 193, 7, 0.3);border-radius:8px;font-size:13px;color:var(--text);margin-bottom:16px}.reserved-credits-note {font-size:12px;color:var(--muted);text-align:left}.btn-schedule {display:inline-flex;align-items:center;gap:6px;padding:6px 12px !important;font-size:11px;border:1px solid var(--stroke) !important;border-radius:8px;cursor:pointer;white-space:nowrap;transition:all 0.2s ease}.btn-schedule img {height:10px;width:auto;opacity:0.7;transition:opacity 0.2s ease}.btn-schedule:hover {border-color:#009bdb !important;background:rgba(0, 155, 219, 0.05)}.btn-schedule:hover img {opacity:1}.btn-pause-schedule:hover {color:#f0ad4e !important;border-color:#f0ad4e !important;background:rgba(240, 173, 78, 0.05)}.btn-resume-schedule:hover {color:var(--ok) !important;border-color:var(--ok) !important;background:rgba(76, 175, 80, 0.05)}.badge-scheduled {display:inline-flex;align-items:center;gap:6px;padding:6px 12px;font-size:11px;font-weight:600;background:rgba(0, 155, 219, 0.08);color:#009bdb;border:1px solid rgba(0, 155, 219, 0.4);border-radius:8px;cursor:pointer;white-space:nowrap;box-shadow:0 0 8px rgba(0, 155, 219, 0.15);transition:all 0.2s ease}.badge-scheduled img {height:10px;width:auto;margin-top:-2px}.badge-scheduled:hover {background:rgba(0, 155, 219, 0.12);border-color:rgba(0, 155, 219, 0.6);box-shadow:0 0 12px rgba(0, 155, 219, 0.25)}.fm-status-block {cursor:pointer;padding:8px 10px;border:1px solid rgba(0, 155, 219, 0.25);border-radius:6px;background:rgba(0, 155, 219, 0.1);transition:background 0.15s ease, border-color 0.15s ease}.fm-status-block:hover {background:rgba(0, 155, 219, 0.1);border-color:rgba(0, 155, 219, 0.4)}.fm-status-logo {margin-bottom:6px}.fm-status-details {display:flex;flex-direction:column;gap:2px}.fm-status-item {font-size:11px;line-height:1.4;white-space:nowrap}.fm-status-label {color:var(--muted);margin-right:4px}.fm-status-value {color:var(--text);font-weight:500}.fm-status-badge-mobile {display:inline-flex;align-items:center;gap:5px;padding:4px 10px;font-size:11px;font-weight:600;color:#009bdb;border:1px solid rgba(0, 155, 219, 0.3);border-radius:999px;background:rgba(0, 155, 219, 0.06);cursor:pointer;white-space:nowrap}.fm-status-badge-mobile img {margin-top:-2px}.mobile-fm-details {width:100%;padding:6px 0;border-top:1px solid rgba(0, 155, 219, 0.15);margin-top:4px}.btn-excel.generating {opacity:0.6;pointer-events:none}