PluginProbe
ThinkRank AI SEO – AI SEO Plugin for WordPress: Schema, XML Sitemaps, Meta Tags, Search Console & Local SEO / 2.7.0
ThinkRank AI SEO – AI SEO Plugin for WordPress: Schema, XML Sitemaps, Meta Tags, Search Console & Local SEO v2.7.0
2.7.0 2.6.0 2.5.0 2.4.0 2.3.0 2.2.0 2.1.1 2.1.0 2.0.2 2.0.1 2.0.0 1.32.0 1.31.0 1.30.0 1.29.0 1.28.0 1.27.0 1.26.0 1.25.0 trunk 1.0.0 1.0.1 1.0.2 1.1.0 1.10.0 All 48 releases
← All changes | assets/divi.css +450 -313 1.25.02.7.0 View file →
@@ -1,6 +1,5 @@
1 -@import url(https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap);
2 -@keyframes spin{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}.thinkrank-seo-score-calculator .calculator-header{margin-bottom:20px;background:#f9f9f9;border-radius:8px;padding:10px 20px}.thinkrank-seo-score-calculator .calculator-header .header-content{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.thinkrank-seo-score-calculator .calculator-header .header-content h3{margin:0;font-size:18px;font-weight:600}.thinkrank-seo-score-calculator .calculator-header .last-calculated{font-size:12px;color:#666;font-style:italic}.thinkrank-seo-score-calculator .calculating-state{text-align:center;padding:40px 20px}.thinkrank-seo-score-calculator .calculating-state .components-spinner{margin-bottom:15px}.thinkrank-seo-score-calculator .calculating-state p{color:#666;margin:0}.thinkrank-seo-score-calculator .empty-state{text-align:center;padding:60px 20px}.thinkrank-seo-score-calculator .empty-state .empty-state-content{max-width:400px;margin:0 auto}.thinkrank-seo-score-calculator .empty-state .empty-state-content .empty-state-icon{font-size:48px;margin-bottom:20px}.thinkrank-seo-score-calculator .empty-state .empty-state-content h4{margin:0 0 10px 0;font-size:18px;color:#1e1e1e}.thinkrank-seo-score-calculator .empty-state .empty-state-content p{color:#666;line-height:1.5;margin:0}.thinkrank-score-breakdown .score-overview-card{margin-bottom:20px}.thinkrank-score-breakdown .score-overview-card .overall-score-display{display:flex;align-items:center;gap:20px}.thinkrank-score-breakdown .score-overview-card .overall-score-display .score-circle{width:80px;height:80px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;font-weight:bold;position:relative}.thinkrank-score-breakdown .score-overview-card .overall-score-display .score-circle.score-excellent{background:linear-gradient(135deg, #10b981, #059669);color:#fff}.thinkrank-score-breakdown .score-overview-card .overall-score-display .score-circle.score-good{background:linear-gradient(135deg, #4451FF, #4451FF);color:#fff}.thinkrank-score-breakdown .score-overview-card .overall-score-display .score-circle.score-fair{background:linear-gradient(135deg, #B54708, #B54708);color:#fff}.thinkrank-score-breakdown .score-overview-card .overall-score-display .score-circle.score-poor{background:linear-gradient(135deg, #921C13, #921C13);color:#fff}.thinkrank-score-breakdown .score-overview-card .overall-score-display .score-circle .score-number{font-size:24px;line-height:1}.thinkrank-score-breakdown .score-overview-card .overall-score-display .score-circle .score-grade{font-size:12px;opacity:.9}.thinkrank-score-breakdown .score-overview-card .overall-score-display .score-info{flex:1}.thinkrank-score-breakdown .score-overview-card .overall-score-display .score-info .score-description{font-size:16px;font-weight:500;margin:0 0 5px 0;color:#1e1e1e}.thinkrank-score-breakdown .score-overview-card .overall-score-display .score-info .score-timestamp{font-size:12px;color:#666;margin:0}.thinkrank-score-breakdown .score-factors-card .score-factors-list .score-factor-item{border:1px solid #e5e7eb;border-radius:8px;margin-bottom:12px;overflow:hidden}.thinkrank-score-breakdown .score-factors-card .score-factors-list .score-factor-item .factor-header{padding:16px;cursor:pointer;transition:background-color .2s}.thinkrank-score-breakdown .score-factors-card .score-factors-list .score-factor-item .factor-header:hover{background-color:#f9fafb}.thinkrank-score-breakdown .score-factors-card .score-factors-list .score-factor-item .factor-header .components-flex{width:100%;align-items:center}.thinkrank-score-breakdown .score-factors-card .score-factors-list .score-factor-item .factor-header .components-flex .components-flex-item:first-child{flex:1}.thinkrank-score-breakdown .score-factors-card .score-factors-list .score-factor-item .factor-header .components-flex .components-flex-item.factor-score-container{flex:0 0 auto;min-width:80px;text-align:right}.thinkrank-score-breakdown .score-factors-card .score-factors-list .score-factor-item .factor-header .components-flex .components-flex-item:last-child{flex:0 0 auto;margin-left:8px}.thinkrank-score-breakdown .score-factors-card .score-factors-list .score-factor-item .factor-header .factor-info{display:flex;align-items:center;gap:12px;flex:1}.thinkrank-score-breakdown .score-factors-card .score-factors-list .score-factor-item .factor-header .factor-info .factor-icon{font-size:20px}.thinkrank-score-breakdown .score-factors-card .score-factors-list .score-factor-item .factor-header .factor-info .factor-text .factor-label{display:block;font-weight:500;color:#1e1e1e;margin-bottom:2px}.thinkrank-score-breakdown .score-factors-card .score-factors-list .score-factor-item .factor-header .factor-info .factor-text .factor-description{display:block;font-size:12px;color:#666}.thinkrank-score-breakdown .score-factors-card .score-factors-list .score-factor-item .factor-header .factor-score{text-align:right}.thinkrank-score-breakdown .score-factors-card .score-factors-list .score-factor-item .factor-header .factor-score .score-value{display:block;font-weight:600;margin-bottom:4px;color:#1e1e1e}.thinkrank-score-breakdown .score-factors-card .score-factors-list .score-factor-item .factor-header .factor-score .score-bar{width:100px;height:6px;background-color:#e5e7eb;border-radius:3px;overflow:hidden}.thinkrank-score-breakdown .score-factors-card .score-factors-list .score-factor-item .factor-header .factor-score .score-bar .score-bar-fill{height:100%;transition:width .3s ease}.thinkrank-score-breakdown .score-factors-card .score-factors-list .score-factor-item .factor-header .factor-score .score-bar .score-bar-fill.score-excellent{background-color:#10b981}.thinkrank-score-breakdown .score-factors-card .score-factors-list .score-factor-item .factor-header .factor-score .score-bar .score-bar-fill.score-good{background-color:#4451ff}.thinkrank-score-breakdown .score-factors-card .score-factors-list .score-factor-item .factor-header .factor-score .score-bar .score-bar-fill.score-fair{background-color:#b54708}.thinkrank-score-breakdown .score-factors-card .score-factors-list .score-factor-item .factor-header .factor-score .score-bar .score-bar-fill.score-poor{background-color:#921c13}.thinkrank-score-breakdown .score-factors-card .score-factors-list .score-factor-item .factor-details{padding:16px;background-color:#f9fafb;border-top:1px solid #e5e7eb}.thinkrank-score-breakdown .score-factors-card .score-factors-list .score-factor-item .factor-details .factor-suggestions{margin-bottom:16px}.thinkrank-score-breakdown .score-factors-card .score-factors-list .score-factor-item .factor-details .factor-suggestions h5{margin:0 0 8px 0;font-size:14px;font-weight:600;color:#1e1e1e}.thinkrank-score-breakdown .score-factors-card .score-factors-list .score-factor-item .factor-details .factor-suggestions ul{margin:0;padding-left:20px}.thinkrank-score-breakdown .score-factors-card .score-factors-list .score-factor-item .factor-details .factor-suggestions ul li{margin-bottom:4px;color:#374151;font-size:14px}.thinkrank-score-breakdown .score-factors-card .score-factors-list .score-factor-item .factor-details .factor-technical-details{margin-top:16px;padding:12px;background:#f8f9fa;border-radius:4px;border-left:3px solid #007cba}.thinkrank-score-breakdown .score-factors-card .score-factors-list .score-factor-item .factor-details .factor-technical-details h5{margin:0 0 8px 0;font-size:13px;font-weight:600;color:#1e1e1e}.thinkrank-score-breakdown .score-factors-card .score-factors-list .score-factor-item .factor-details .factor-technical-details .details-list .detail-item{display:flex;align-items:center;padding:6px 0;font-size:13px;color:#374151}.thinkrank-score-breakdown .score-factors-card .score-factors-list .score-factor-item .factor-details .factor-technical-details .details-list .detail-item:before{content:"";width:4px;height:4px;background:#007cba;border-radius:50%;margin-right:8px;flex-shrink:0}.thinkrank-score-breakdown .score-factors-card .score-factors-list .score-factor-item .factor-details .factor-technical-details .details-list .detail-item:not(:last-child){margin-bottom:2px}.improvement-suggestions-card{margin-bottom:20px}.improvement-suggestions-card .suggestions-header{display:flex;align-items:center;gap:8px}.improvement-suggestions-card .suggestions-header .suggestions-icon{font-size:20px}.improvement-suggestions-card .suggestions-header h4{margin:0;font-size:16px;font-weight:600}.improvement-suggestions-card .suggestions-count{font-size:12px;color:#666;background-color:#f3f4f6;padding:4px 8px;border-radius:12px}.improvement-suggestions-card .no-suggestions{text-align:center;padding:40px 20px}.improvement-suggestions-card .no-suggestions .success-icon{font-size:48px;margin-bottom:16px}.improvement-suggestions-card .no-suggestions h4{margin:0 0 8px 0;color:#10b981;font-size:18px}.improvement-suggestions-card .no-suggestions p{color:#666;margin:0}.improvement-suggestions-card .suggestions-list .priority-group{margin-bottom:24px}.improvement-suggestions-card .suggestions-list .priority-group .priority-header{display:flex;align-items:center;gap:8px;margin:0 0 12px 0;font-size:14px;font-weight:600}.improvement-suggestions-card .suggestions-list .priority-group .priority-header .priority-icon{font-size:12px}.improvement-suggestions-card .suggestions-list .priority-group .priority-header .priority-count{font-size:12px;color:#666;font-weight:normal}.improvement-suggestions-card .suggestions-list .priority-group.priority-high .priority-header{color:#921c13}.improvement-suggestions-card .suggestions-list .priority-group.priority-medium .priority-header{color:#b54708}.improvement-suggestions-card .suggestions-list .priority-group.priority-low .priority-header{color:#059669}.improvement-suggestions-card .suggestions-list .priority-group .suggestions-in-group .suggestion-item{border:1px solid #e5e7eb;border-radius:8px;margin-bottom:8px}.improvement-suggestions-card .suggestions-list .priority-group .suggestions-in-group .suggestion-item.priority-high{border-left:4px solid #921c13}.improvement-suggestions-card .suggestions-list .priority-group .suggestions-in-group .suggestion-item.priority-medium{border-left:4px solid #b54708}.improvement-suggestions-card .suggestions-list .priority-group .suggestions-in-group .suggestion-item.priority-low{border-left:4px solid #059669}.improvement-suggestions-card .suggestions-list .priority-group .suggestions-in-group .suggestion-item .suggestion-content{padding:16px;display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.improvement-suggestions-card .suggestions-list .priority-group .suggestions-in-group .suggestion-item .suggestion-content .suggestion-text{flex:1;display:flex;flex-direction:column;gap:8px}.improvement-suggestions-card .suggestions-list .priority-group .suggestions-in-group .suggestion-item .suggestion-content .suggestion-text .category-badge{display:inline-block;background-color:#f3f4f6;color:#374151;font-size:10px;font-weight:500;text-transform:uppercase;padding:2px 6px;border-radius:3px;align-self:flex-start}.improvement-suggestions-card .suggestions-list .priority-group .suggestions-in-group .suggestion-item .suggestion-content .suggestion-text .suggestion-message{font-size:14px;line-height:1.5;color:#374151}.improvement-suggestions-card .suggestions-list .priority-group .suggestions-in-group .suggestion-item .suggestion-content .suggestion-text .priority-badge{display:inline-block;font-size:10px;font-weight:600;text-transform:uppercase;padding:3px 8px;align-self:flex-start;border-radius:4px;margin-right:8px}.improvement-suggestions-card .suggestions-list .priority-group .suggestions-in-group .suggestion-item .suggestion-content .suggestion-text .priority-badge.priority-high{background-color:#fef2f2;color:#921c13;border:1px solid #fecaca}.improvement-suggestions-card .suggestions-list .priority-group .suggestions-in-group .suggestion-item .suggestion-content .suggestion-text .priority-badge.priority-medium{background-color:#fffbeb;color:#b54708;border:1px solid #fed7aa}.improvement-suggestions-card .suggestions-list .priority-group .suggestions-in-group .suggestion-item .suggestion-content .suggestion-text .priority-badge.priority-low{background-color:#f0fdf4;color:#059669;border:1px solid #bbf7d0}.improvement-suggestions-card .suggestions-list .priority-group .suggestions-in-group .suggestion-item .suggestion-content .suggestion-actions{display:flex;gap:8px;flex-shrink:0}.improvement-suggestions-card .dismissed-suggestions-notice{margin-top:16px}@media(max-width: 768px){.thinkrank-score-breakdown .score-overview-card .overall-score-display{flex-direction:column;text-align:center;gap:16px}.thinkrank-score-breakdown .score-factors-card .score-factors-list .score-factor-item .factor-header .factor-score{min-width:auto}.thinkrank-score-breakdown .score-factors-card .score-factors-list .score-factor-item .factor-header .factor-score .score-bar{width:80px}.improvement-suggestions-card .suggestions-list .priority-group .suggestions-in-group .suggestion-item .suggestion-content{flex-direction:column;gap:12px}.improvement-suggestions-card .suggestions-list .priority-group .suggestions-in-group .suggestion-item .suggestion-content .suggestion-actions{align-self:flex-end}.seo-score-summary-card .analysis-section.score-section{flex-direction:column;text-align:center;gap:20px}.seo-score-summary-card .analysis-section.score-section .score-circle{width:100px;height:100px}.seo-score-summary-card .analysis-section.score-section .score-circle .score-number{font-size:28px}.seo-score-summary-card .analysis-section.score-section .score-circle .score-grade{font-size:16px}.seo-score-summary-card .analysis-section.score-section .score-breakdown{width:100%}.seo-score-summary-card .analysis-section.score-section .score-breakdown .score-item{flex-direction:column;text-align:center;gap:8px}.seo-score-summary-card .analysis-section.score-section .score-breakdown .score-item .score-label{font-size:13px}.seo-score-summary-card .analysis-section.score-section .score-breakdown .score-item .score-value{font-size:13px}.seo-score-summary-card .analysis-section.content-analysis .analysis-grid{grid-template-columns:1fr;gap:12px}.seo-score-summary-card .analysis-section.content-analysis .analysis-grid .analysis-item{flex-direction:column;text-align:center;gap:6px}.seo-score-summary-card .analysis-section.content-analysis .analysis-grid .analysis-item .analysis-label{font-size:12px}.seo-score-summary-card .analysis-section.content-analysis .analysis-grid .analysis-item .analysis-value{font-size:12px}}@media(max-width: 480px){.seo-score-summary-card .analysis-section.score-section{padding:16px}.seo-score-summary-card .analysis-section.score-section .score-circle{width:80px;height:80px}.seo-score-summary-card .analysis-section.score-section .score-circle .score-number{font-size:24px}.seo-score-summary-card .analysis-section.score-section .score-circle .score-grade{font-size:14px}.seo-score-summary-card .analysis-section.score-section .score-circle .score-label{font-size:10px}.seo-score-summary-card .analysis-section.content-analysis{padding:16px}.seo-score-summary-card .analysis-section.content-analysis h4{font-size:14px}.improvement-suggestions-card .suggestions-list .priority-group .suggestions-in-group .suggestion-item .suggestion-content .suggestion-text .suggestion-message{font-size:13px}.improvement-suggestions-card .suggestions-list .priority-group .suggestions-in-group .suggestion-item .suggestion-content .suggestion-text .priority-badge{font-size:9px;padding:2px 6px}}.seo-score-summary-card{margin-bottom:20px}.seo-score-summary-card .analysis-section.score-section{display:flex;align-items:center;gap:24px;margin-bottom:24px;padding:20px;background:linear-gradient(135deg, #f8fafc 0%, #e2e8f0 100%);border-radius:12px;border:1px solid #e2e8f0}.seo-score-summary-card .analysis-section.score-section .score-circle{display:flex;flex-direction:column;align-items:center;justify-content:center;width:120px;height:120px;border-radius:50%;border:4px solid;background:#fff;box-shadow:0 4px 12px rgba(0,0,0,.1);flex-shrink:0}.seo-score-summary-card .analysis-section.score-section .score-circle .score-number{font-size:32px;font-weight:700;line-height:1;margin-bottom:4px}.seo-score-summary-card .analysis-section.score-section .score-circle .score-grade{font-size:18px;font-weight:600;line-height:1;margin-bottom:4px}.seo-score-summary-card .analysis-section.score-section .score-circle .score-label{font-size:12px;font-weight:500;text-transform:uppercase;letter-spacing:.5px;opacity:.8}.seo-score-summary-card .analysis-section.score-section .score-circle.score-high{border-color:#10b981;color:#10b981;background:linear-gradient(135deg, #ecfdf5 0%, #d1fae5 100%)}.seo-score-summary-card .analysis-section.score-section .score-circle.score-medium{border-color:#b54708;color:#b54708;background:linear-gradient(135deg, #fffbeb 0%, #fef3c7 100%)}.seo-score-summary-card .analysis-section.score-section .score-circle.score-low{border-color:#921c13;color:#921c13;background:linear-gradient(135deg, #fef2f2 0%, #fecaca 100%)}.seo-score-summary-card .analysis-section.score-section .score-breakdown{flex:1;display:grid;grid-template-columns:1fr;gap:16px}.seo-score-summary-card .analysis-section.score-section .score-breakdown .score-item{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#fff;border-radius:8px;border:1px solid #e5e7eb;box-shadow:0 1px 3px rgba(0,0,0,.05)}.seo-score-summary-card .analysis-section.score-section .score-breakdown .score-item .score-label{font-weight:600;color:#374151;font-size:14px}.seo-score-summary-card .analysis-section.score-section .score-breakdown .score-item .score-value{font-weight:500;color:#1f2937;font-size:14px;padding:4px 8px;background:#f9fafb;border-radius:4px;border:1px solid #e5e7eb}.seo-score-summary-card .analysis-section.content-analysis{padding:20px;background:#f9fafb;border-radius:8px;border:1px solid #e5e7eb}.seo-score-summary-card .analysis-section.content-analysis h4{margin:0 0 16px 0;font-size:16px;font-weight:600;color:#1f2937;display:flex;align-items:center;gap:8px}.seo-score-summary-card .analysis-section.content-analysis h4:before{content:"📊";font-size:18px}.seo-score-summary-card .analysis-section.content-analysis .analysis-grid{display:grid;grid-template-columns:repeat(auto-fit, minmax(200px, 1fr));gap:16px}.seo-score-summary-card .analysis-section.content-analysis .analysis-grid .analysis-item{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#fff;border-radius:6px;border:1px solid #e5e7eb}.seo-score-summary-card .analysis-section.content-analysis .analysis-grid .analysis-item .analysis-label{font-weight:500;color:#6b7280;font-size:13px}.seo-score-summary-card .analysis-section.content-analysis .analysis-grid .analysis-item .analysis-value{font-weight:600;color:#1f2937;font-size:13px}.seo-score-summary-card .analysis-section.content-analysis .analysis-grid .analysis-item .analysis-note{display:block;font-size:11px;color:#666;margin-top:2px;font-style:italic}.thinkrank-seo-results-tabs{margin-top:20px}.thinkrank-seo-results-tabs .components-tab-panel__tabs{display:flex;border-bottom:1px solid #ddd;margin-bottom:20px}.thinkrank-seo-results-tabs .components-tab-panel__tabs .components-button{border:none;border-bottom:2px solid rgba(0,0,0,0);border-radius:0;padding:12px 20px;font-weight:500;color:#666;background:none;transition:all .2s ease}.thinkrank-seo-results-tabs .components-tab-panel__tabs .components-button:hover{color:#0073aa;background-color:#f8f9fa}.thinkrank-seo-results-tabs .components-tab-panel__tabs .components-button.is-active{color:#0073aa;border-bottom-color:#0073aa;background-color:#fff}.thinkrank-seo-results-tabs .components-tab-panel__tabs .components-button .tab-title-with-badge{display:flex;align-items:center;gap:6px}.thinkrank-seo-results-tabs .components-tab-panel__tabs .components-button .tab-title-with-badge .suggestion-count-badge{background-color:#dc3545;color:#fff;font-size:11px;font-weight:600;padding:2px 6px;border-radius:10px;min-width:18px;text-align:center;line-height:1.2}.thinkrank-seo-results-tabs .tab-content{min-height:300px}.thinkrank-seo-results-tabs .tab-content .no-suggestions-message{text-align:center;padding:60px 20px}.thinkrank-seo-results-tabs .tab-content .no-suggestions-message .success-icon{font-size:48px;margin-bottom:16px}.thinkrank-seo-results-tabs .tab-content .no-suggestions-message h4{margin:0 0 8px 0;color:#10b981;font-size:18px}.thinkrank-seo-results-tabs .tab-content .no-suggestions-message p{color:#666;margin:0;font-size:14px}.thinkrank-suggestion-modal .modal-content{margin-bottom:20px}.thinkrank-suggestion-modal .modal-content .suggestion-quote{background-color:#f8f9fa;border-left:4px solid #0073aa;padding:12px 16px;margin:12px 0;font-style:italic;color:#1e1e1e}.thinkrank-suggestion-modal .modal-content .guidance-section{background-color:#e7f3ff;border:1px solid #b3d9ff;border-radius:6px;padding:12px;margin:12px 0}.thinkrank-suggestion-modal .modal-content .guidance-section p{margin:0;color:#0073aa;font-weight:500}.thinkrank-suggestion-modal .modal-actions{display:flex;gap:12px;justify-content:flex-end;padding-top:16px;border-top:1px solid #ddd}.serp-preview-controls{margin-bottom:20px}.serp-preview-controls .preview-label{display:block;font-weight:600;margin-bottom:8px;color:var(--thinkrank-text-primary)}.serp-preview-controls .preview-toggle{display:flex;gap:16px}.serp-preview-controls .preview-toggle .toggle-option{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:14px;color:var(--thinkrank-text-secondary);transition:color .2s ease}.serp-preview-controls .preview-toggle .toggle-option.active{color:var(--thinkrank-primary);font-weight:500}.serp-preview-controls .preview-toggle .toggle-option input[type=radio]{display:none}.serp-preview-controls .preview-toggle .toggle-option .radio-icon{width:16px;height:16px;border:2px solid var(--thinkrank-border);border-radius:50%;position:relative;transition:all .2s ease}.serp-preview-controls .preview-toggle .toggle-option .radio-icon::after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);width:8px;height:8px;border-radius:50%;background:var(--thinkrank-primary);opacity:0;transition:opacity .2s ease}.serp-preview-controls .preview-toggle .toggle-option.active .radio-icon{border-color:var(--thinkrank-primary)}.serp-preview-controls .preview-toggle .toggle-option.active .radio-icon::after{opacity:1}.serp-result-container{background:#f8f9fa;border:1px solid var(--thinkrank-border-light);border-radius:8px;padding:20px}.serp-result-container.mobile{max-width:375px;margin:0 auto}.serp-result-container.desktop{max-width:600px}.serp-result{background:#fff;border-radius:8px;padding:16px;box-shadow:0 1px 3px rgba(0,0,0,.1);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif}.serp-result .serp-site-info{display:flex;align-items:center;margin-bottom:8px;font-size:14px;color:#5f6368}.serp-result .serp-site-info .site-favicon{margin-right:8px}.serp-result .serp-site-info .site-favicon .favicon-image{width:16px;height:16px;background:#f1f3f4;border-radius:2px;position:relative}.serp-result .serp-site-info .site-favicon .favicon-image::after{content:"";position:absolute;top:2px;left:2px;right:2px;bottom:2px;background:#fff;border-radius:1px}.serp-result .serp-site-info .site-details{display:flex;align-items:center;flex:1}.serp-result .serp-site-info .site-details .site-name{font-weight:500}.serp-result .serp-site-info .site-details .breadcrumb-arrow{margin:0 4px;color:#9aa0a6}.serp-result .serp-site-info .site-details .page-path{color:#9aa0a6}.serp-result .serp-site-info .serp-menu{color:#9aa0a6;cursor:pointer;padding:4px;border-radius:4px}.serp-result .serp-site-info .serp-menu:hover{background:#f1f3f4}.serp-result .serp-title{font-size:20px;line-height:1.3;color:#1a0dab;margin-bottom:4px;cursor:pointer;text-decoration:none;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.serp-result .serp-title:hover{text-decoration:underline}.serp-result .serp-content{display:flex;align-items:flex-start;gap:12px}.serp-result .serp-content.serp-content-with-image .serp-meta{flex:1}.serp-result .serp-meta{font-size:14px;line-height:1.4;color:#4d5156}.serp-result .serp-meta .serp-date{color:#5f6368}.serp-result .serp-meta .serp-separator{color:#9aa0a6}.serp-result .serp-meta .serp-description{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.serp-result .serp-featured-image{flex-shrink:0}.serp-result .serp-featured-image .featured-image{width:80px;height:80px;object-fit:cover;border-radius:8px}.serp-result .serp-featured-image .image-placeholder{width:80px;height:80px;background:#f8f9fa;border:1px dashed #dadce0;border-radius:8px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#9aa0a6}.serp-result .serp-featured-image .image-placeholder .image-icon{font-size:16px}.serp-result-container.mobile .serp-result .serp-title{font-size:18px}.serp-result-container.mobile .serp-result .serp-meta{font-size:13px}.serp-result-container.mobile .serp-result .serp-featured-image .featured-image{width:72px;height:72px}.serp-result-container.mobile .serp-result .serp-featured-image .image-placeholder{width:72px;height:72px}.serp-result-container.mobile .serp-result .serp-featured-image .image-placeholder .image-icon{font-size:14px}.serp-result-container.desktop .serp-result .serp-content{display:block}.serp-result-container.desktop .serp-result .serp-featured-image{display:none}@media(max-width: 768px){.serp-preview-controls .preview-toggle{flex-direction:column;gap:12px}.serp-result-container.desktop{max-width:100%}}.thinkrank-metabox-tabs{margin:16px 0}.thinkrank-metabox-tabs .components-tab-panel__tabs{display:flex;border-bottom:1px solid #ddd;margin:0 0 20px 0;padding:0;background:#f9f9f9;border-radius:4px 4px 0 0}.thinkrank-metabox-tabs .components-tab-panel__tabs-item{background:rgba(0,0,0,0);border:none;border-bottom:2px solid rgba(0,0,0,0);color:#666;cursor:pointer;font-size:14px;font-weight:500;padding:12px 20px;text-decoration:none;transition:all .2s ease}.thinkrank-metabox-tabs .components-tab-panel__tabs-item:hover{background:#fff;color:#0073aa}.thinkrank-metabox-tabs .components-tab-panel__tabs-item.is-active{background:#fff;border-bottom-color:#0073aa;color:#0073aa;font-weight:600}.thinkrank-metabox-tabs .components-tab-panel__tabs-item:focus{box-shadow:0 0 0 1px #0073aa;outline:none}.thinkrank-metabox-tabs .components-tab-panel__tab-content{padding:0}.thinkrank-metabox-tabs .components-tab-panel__tab-content .thinkrank-metabox-seo-tab,.thinkrank-metabox-tabs .components-tab-panel__tab-content .thinkrank-metabox-schema-tab,.thinkrank-metabox-tabs .components-tab-panel__tab-content .thinkrank-metabox-social-tab{min-height:200px}.thinkrank-metabox-seo-tab .thinkrank-card{margin-bottom:20px}.thinkrank-metabox-seo-tab .thinkrank-card:last-child{margin-bottom:0}.thinkrank-metabox-seo-tab .thinkrank-ai-controls{margin-top:20px;padding-top:20px;border-top:1px solid #eee}.thinkrank-metabox-seo-tab .thinkrank-ai-controls .ai-controls-row{display:flex;gap:20px;margin-bottom:16px}@media(max-width: 782px){.thinkrank-metabox-seo-tab .thinkrank-ai-controls .ai-controls-row{flex-direction:column;gap:12px}}.thinkrank-metabox-seo-tab .thinkrank-ai-controls .ai-control-group{flex:1}.thinkrank-metabox-seo-tab .thinkrank-ai-controls .ai-control-group label{display:block;font-weight:600;margin-bottom:4px;color:#333}.thinkrank-metabox-seo-tab .thinkrank-ai-controls .ai-control-group select{width:100%;padding:6px 8px;border:1px solid #ddd;border-radius:3px;font-size:14px}.thinkrank-metabox-seo-tab .thinkrank-ai-controls .ai-control-group select:focus{border-color:#0073aa;box-shadow:0 0 0 1px #0073aa;outline:none}.thinkrank-metabox-seo-tab .thinkrank-ai-controls .ai-buttons{display:flex;gap:12px}@media(max-width: 782px){.thinkrank-metabox-seo-tab .thinkrank-ai-controls .ai-buttons{flex-direction:column}}.thinkrank-metabox-seo-tab .thinkrank-ai-controls .ai-buttons .button{display:flex;align-items:center;gap:6px}.thinkrank-metabox-seo-tab .thinkrank-ai-controls .ai-buttons .button .dashicons{font-size:16px;width:16px;height:16px}.thinkrank-metabox-seo-tab .thinkrank-ai-controls .ai-buttons .button .dashicons.spin{animation:spin 1s linear infinite}.thinkrank-metabox-schema-tab .thinkrank-card{margin-bottom:20px}.thinkrank-metabox-schema-tab .thinkrank-card:last-child{margin-bottom:0}.thinkrank-metabox-schema-tab .thinkrank-field{margin-bottom:16px}.thinkrank-metabox-schema-tab .thinkrank-field label{display:block;font-weight:600;margin-bottom:4px;color:#333}.thinkrank-metabox-schema-tab .thinkrank-field select{width:100%;padding:6px 8px;border:1px solid #ddd;border-radius:3px;font-size:14px}.thinkrank-metabox-schema-tab .thinkrank-field select:focus{border-color:#0073aa;box-shadow:0 0 0 1px #0073aa;outline:none}.thinkrank-metabox-schema-tab .thinkrank-field .description{margin-top:4px;color:#666;font-size:13px}.thinkrank-metabox-schema-tab .schema-actions{margin-top:16px;display:flex;gap:12px}.thinkrank-metabox-schema-tab .schema-actions .button{display:flex;align-items:center;gap:6px}.thinkrank-metabox-schema-tab .schema-actions .button .dashicons{font-size:16px;width:16px;height:16px}.thinkrank-metabox-schema-tab .schema-actions .button .dashicons.spin{animation:spin 1s linear infinite}.thinkrank-metabox-schema-tab .schema-status-notice{display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:8px;margin-bottom:16px;background:#e8f2fd}.thinkrank-metabox-schema-tab .schema-status-notice .dashicons{color:#12467b;margin-top:2px}.thinkrank-metabox-schema-tab .schema-status-notice p{font-size:14px;margin:0;color:#12467b}.thinkrank-metabox-schema-tab .schema-status-notice.success,.thinkrank-metabox-schema-tab .schema-status-notice.deployed{background:#ecfdf3}.thinkrank-metabox-schema-tab .schema-status-notice.success .dashicons,.thinkrank-metabox-schema-tab .schema-status-notice.deployed .dashicons{color:#027a48}.thinkrank-metabox-schema-tab .schema-status-notice.success p,.thinkrank-metabox-schema-tab .schema-status-notice.deployed p{color:#027a48}.thinkrank-metabox-schema-tab .schema-status-notice.warning{background:#fffaeb}.thinkrank-metabox-schema-tab .schema-status-notice.warning .dashicons{color:#b54708}.thinkrank-metabox-schema-tab .schema-status-notice.warning p{color:#b54708}.thinkrank-metabox-schema-tab .schema-types-generated{margin-bottom:20px}.thinkrank-metabox-schema-tab .schema-types-generated h5{margin:0 0 8px 0;font-size:14px;font-weight:600}.thinkrank-metabox-schema-tab .schema-types-generated .schema-type-badges{display:flex;gap:8px;flex-wrap:wrap}.thinkrank-metabox-schema-tab .schema-types-generated .schema-type-badge{background:#0073aa;color:#fff;padding:4px 8px;border-radius:3px;font-size:12px;font-weight:500}.thinkrank-metabox-schema-tab .schema-code-preview{margin-bottom:20px}.thinkrank-metabox-schema-tab .schema-code-preview h5{margin:0 0 12px 0;font-size:14px;font-weight:600}.thinkrank-metabox-schema-tab .schema-code-preview .schema-code-block{margin-bottom:16px}.thinkrank-metabox-schema-tab .schema-code-preview .schema-code-block h6{margin:0 0 8px 0;font-size:13px;font-weight:600;color:#666}.thinkrank-metabox-schema-tab .schema-code-preview .schema-json-preview{background:#f8f9fa;border:1px solid #dee2e6;border-radius:4px;padding:12px;font-size:12px;font-family:"Monaco","Menlo","Ubuntu Mono",monospace;overflow:auto;max-height:300px;white-space:pre-wrap;word-wrap:break-word}.thinkrank-metabox-schema-tab .schema-data-source h5{margin:0 0 8px 0;font-size:14px;font-weight:600}.thinkrank-metabox-schema-tab .schema-data-source ul{margin:0 0 12px 0;padding-left:20px}.thinkrank-metabox-schema-tab .schema-data-source ul li{margin-bottom:4px;font-size:13px;color:#333}.thinkrank-metabox-schema-tab .schema-data-source .description{color:#666;font-size:13px;margin:0}.thinkrank-metabox-social-tab .thinkrank-card{text-align:center;padding:40px 20px}.thinkrank-metabox-social-tab .thinkrank-card .thinkrank-card-header h4{margin-bottom:8px}.thinkrank-metabox-social-tab .thinkrank-card .description{color:#666;margin-bottom:0}.thinkrank-metabox-social-tab .thinkrank-card .thinkrank-card-body p{color:#999;font-style:italic}.thinkrank-social-preview-notice{display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:8px;margin-bottom:16px;background:#e8f2fd;font-size:14px}.thinkrank-social-preview-notice.warning{background:#fffaeb}.thinkrank-loading{display:flex;align-items:center;justify-content:center;gap:12px;padding:20px;background:#f9f9f9;border:1px solid #ddd;border-radius:4px;margin:16px 0}.thinkrank-loading .spinner{float:none;margin:0}.thinkrank-loading p{margin:0;color:#666;font-weight:500}@media(max-width: 782px){.thinkrank-metabox-tabs .components-tab-panel__tabs{flex-direction:column}.thinkrank-metabox-tabs .components-tab-panel__tabs-item{text-align:center;border-bottom:1px solid #ddd;border-radius:0}.thinkrank-metabox-tabs .components-tab-panel__tabs-item:last-child{border-bottom:none}.thinkrank-metabox-tabs .components-tab-panel__tabs-item.is-active{border-bottom-color:#ddd;border-left:3px solid #0073aa}}@keyframes spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}.thinkrank-social-tab .social-preview-placeholder{text-align:center;padding:40px 20px;background:#f9fafb;border:2px dashed #ddd;border-radius:8px;color:#666}.thinkrank-social-tab .social-preview-card{border:1px solid #ddd;border-radius:8px;overflow:hidden;background:#fff;max-width:500px;margin-bottom:20px}.thinkrank-social-tab .social-preview-card .preview-platform-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#f9f9f9;border-bottom:1px solid #ddd;font-size:14px}.thinkrank-social-tab .social-preview-card .preview-platform-header .preview-status.preview-valid{color:#00a32a}.thinkrank-social-tab .social-preview-card .preview-platform-header .preview-status.preview-invalid{color:#d63638}.thinkrank-social-tab .social-preview-card .preview-image{width:100%}.thinkrank-social-tab .social-preview-card .preview-image.preview-image-facebook,.thinkrank-social-tab .social-preview-card .preview-image.preview-image-linkedin{aspect-ratio:1.91/1}.thinkrank-social-tab .social-preview-card .preview-image.preview-image-twitter{aspect-ratio:2/1}.thinkrank-social-tab .social-preview-card .preview-image.preview-image-pinterest{aspect-ratio:2/3}.thinkrank-social-tab .social-preview-card .preview-image img{width:100%;height:100%;object-fit:cover}.thinkrank-social-tab .social-preview-card .preview-content{padding:16px}.thinkrank-social-tab .social-preview-card .preview-content .preview-title{margin:0 0 8px 0;font-size:16px;font-weight:600;line-height:1.4}.thinkrank-social-tab .social-preview-card .preview-content .preview-description{margin:0 0 12px 0;font-size:14px;color:#666}.thinkrank-social-tab .social-preview-card .preview-content .preview-meta{display:flex;justify-content:space-between;font-size:12px;color:#999}.thinkrank-social-tab .social-preview-card .preview-warnings{margin:16px;padding:12px;background:#fef3c7;border-radius:6px;font-size:12px;color:#92400e}.thinkrank-social-tab .data-source-info{padding:16px;background:#f9f9f9;border:1px solid #ddd;border-radius:8px;font-size:13px}.thinkrank-social-tab .data-source-info h4{margin:0 0 12px 0;font-size:14px}.thinkrank-social-tab .data-source-info ul{margin:0 0 12px 0;padding:0;list-style:none}.thinkrank-social-tab .data-source-info ul li{margin-bottom:6px;color:#666}.thinkrank-social-tab .data-source-info .help-text{margin:0;font-size:12px;color:#999;font-style:italic}@media(max-width: 768px){.thinkrank-social-tab .social-preview-card{max-width:100%}}:root{--thinkrank-primary: #4451FF;--thinkrank-text-primary: #1D1D1D;--thinkrank-text-secondary: #535353;--thinkrank-border: #D5D5DD;--thinkrank-border-light: #E2E6F1}#thinkrank-seo-metabox{display:none !important}.thinkrank-header-slot{display:inline-flex;align-items:center;margin-right:8px}.thinkrank-header-slot .tr-root{display:inline-flex;align-items:center}.thinkrank-header-launcher{line-height:1}.thinkrank-configure-seo__mark{position:relative;display:inline-flex;align-items:center;justify-content:center;line-height:0}.thinkrank-configure-seo__score{position:absolute;top:-6px;right:-8px;min-width:16px;height:16px;padding:0 3px;box-sizing:border-box;border-radius:8px;border:1.5px solid #fff;font-size:10px;font-weight:700;line-height:13px;text-align:center}.thinkrank-metabox-launcher{top:110px;left:50%;transform:translateX(-50%)}@media screen and (max-width: 782px){.thinkrank-metabox-launcher{top:92px}}.elementor-editor-active .thinkrank-metabox-launcher{top:auto;bottom:24px;left:auto;right:24px;transform:none}.thinkrank-metabox-drawer{height:82vh;max-height:82vh}.thinkrank-metabox-drawer select{width:100% !important;max-width:100% !important;box-sizing:border-box}@media screen and (max-width: 782px){.thinkrank-metabox-drawer{height:92vh;max-height:92vh}}.schema-form-container{margin:16px 0}.schema-form-container .components-card{box-shadow:none;border:1px solid #ddd}.schema-form-container .components-card .components-card-header{border-bottom:1px solid #ddd;padding:12px 16px}.schema-form-container .components-card .components-card-header h4{margin:0;font-size:14px;font-weight:600}.schema-form-container .components-card .components-card-body{padding:16px}.thinkrank-metabox .inside{margin:0 !important;padding:0 !important}.thinkrank-metabox-content{padding:20px;word-wrap:break-word;overflow-wrap:break-word;max-width:100%;box-sizing:border-box}.thinkrank-card{background:#fff;border:1px solid #ddd;border-radius:8px;margin-bottom:20px;box-shadow:0 1px 3px rgba(0,0,0,.1)}.thinkrank-card-header{padding:16px 20px;border-bottom:1px solid #eee;background:#f9f9f9;border-radius:8px 8px 0 0}.thinkrank-card-header h4{margin:0 0 8px 0;font-size:16px;font-weight:600;color:#23282d}.thinkrank-card-header .description{margin:0;color:#666;font-size:13px;line-height:1.4}.thinkrank-card-body{padding:20px}.thinkrank-metabox-header{padding:10px 20px;margin:0 20px;border:1px solid #eee;background:#f9f9f9;border-radius:8px}.thinkrank-metabox-header h4{margin:0 0 8px 0;font-size:16px;font-weight:600;color:#23282d}.thinkrank-metabox-header .description{margin:0;color:#666;font-size:13px;line-height:1.4}.thinkrank-metabox-content h4{margin:0 0 15px 0;font-size:14px;font-weight:600}.thinkrank-metabox-content p{margin:0 0 15px 0;color:#666;font-size:13px;line-height:1.4;word-wrap:break-word}.thinkrank-field{margin-bottom:20px}.thinkrank-field label{display:block;margin-bottom:5px;font-weight:600;font-size:13px}.thinkrank-field input[type=text],.thinkrank-field textarea,.thinkrank-field select{width:100%;padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:13px;line-height:1.4}.thinkrank-field textarea{resize:vertical;min-height:80px}.thinkrank-field .description{margin-top:5px;color:#666;font-size:12px;font-style:italic}.character-counter{float:right;font-size:11px;color:#666;margin-top:5px}.character-counter.over-limit{color:#d63638;font-weight:600}.ai-controls-row{display:flex;gap:15px;margin-bottom:20px;flex-wrap:wrap}.ai-control-group{flex:1;min-width:150px}.ai-control-group label{display:block;margin-bottom:5px;font-weight:600;font-size:13px}.ai-control-group select{width:100%;padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:13px}.ai-buttons{display:flex;gap:10px;margin-bottom:20px;flex-wrap:wrap}.ai-buttons .button{display:flex;align-items:center;gap:5px;padding:8px 16px;font-size:13px}.ai-buttons .button .dashicons{font-size:16px;width:16px;height:16px}.ai-buttons .button:disabled{opacity:.6;cursor:not-allowed}.spin{animation:spin 1s linear infinite}@keyframes spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}.thinkrank-analysis-results{margin-top:20px;padding:20px;background:#f9f9f9;border:1px solid #e0e0e0;border-radius:8px}.analysis-section{margin-bottom:25px}.analysis-section:last-child{margin-bottom:0}.analysis-section h4{margin:0 0 15px 0;font-size:14px;font-weight:600;color:#333;border-bottom:2px solid #0073aa;padding-bottom:5px}.analysis-section h5{margin:0 0 10px 0;font-size:13px;font-weight:600;color:#555}.analysis-grid{display:grid;grid-template-columns:repeat(auto-fit, minmax(150px, 1fr));gap:15px}.analysis-item{padding:15px;background:#fff;border:1px solid #ddd;border-radius:6px;text-align:center}.analysis-label{display:block;font-size:12px;color:#666;margin-bottom:5px;text-transform:uppercase;font-weight:600}.analysis-value{display:block;font-size:16px;font-weight:700;color:#333;text-transform:capitalize}.suggestions-list{margin:0;padding:0;list-style:none}.suggestions-list li{margin-bottom:10px;padding:12px 15px;background:#fff;border:1px solid #ddd;border-left:4px solid #0073aa;border-radius:4px;font-size:13px;line-height:1.4}.suggestions-list li:last-child{margin-bottom:0}.strengths-weaknesses{display:grid;grid-template-columns:1fr 1fr;gap:20px}.strengths-column,.weaknesses-column{padding:15px;background:#fff;border:1px solid #ddd;border-radius:6px}.strengths-list,.weaknesses-list{margin:0;padding:0;list-style:none}.strengths-list li,.weaknesses-list li{margin-bottom:8px;padding:8px 12px;border-radius:4px;font-size:12px;line-height:1.4}.strengths-list li{background:#e8f5e8;border-left:3px solid #00a32a;color:#155724}.weaknesses-list li{background:#f8e8e8;border-left:3px solid #d63638;color:#721c24}.strengths-list li:last-child,.weaknesses-list li:last-child{margin-bottom:0}@media(max-width: 782px){.ai-controls-row{flex-direction:column}.ai-buttons{flex-direction:column}.analysis-grid{grid-template-columns:1fr}.strengths-weaknesses{grid-template-columns:1fr}}.thinkrank-field.loading input,.thinkrank-field.loading textarea{opacity:.6;pointer-events:none}.thinkrank-field input:focus,.thinkrank-field textarea:focus,.thinkrank-field select:focus{border-color:#0073aa;box-shadow:0 0 0 1px #0073aa;outline:none}.hidden{display:none}.suggestion-content{display:flex;justify-content:space-between;align-items:center;gap:10px}.priority-badge{font-size:10px;padding:2px 6px;border-radius:3px;font-weight:600;text-transform:uppercase}.priority-badge.priority-high{background-color:#dc3545;color:#fff}.priority-badge.priority-medium{background-color:#ffc107;color:#212529}.priority-badge.priority-low{background-color:#28a745;color:#fff}.priority-badge.priority-critical{background-color:#6f42c1;color:#fff}.thinkrank-refresh-indicator{position:fixed;top:32px;right:20px;background:#fff;border:1px solid #ddd;border-radius:4px;padding:8px 12px;box-shadow:0 2px 8px rgba(0,0,0,.1);z-index:9999;display:flex;align-items:center;gap:8px;font-size:13px;color:#666}.thinkrank-refresh-indicator .spinner{float:none;margin:0;width:16px;height:16px}.thinkrank-refresh-indicator span:not(.spinner){white-space:nowrap}.thinkrank-metabox-schema-tab.is-refreshing{opacity:.7;pointer-events:none;transition:opacity .2s ease}.tr-root select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 16 16%27 fill=%27%2394a3b8%27%3E%3Cpath fill-rule=%27evenodd%27 d=%27M4.22 6.22a.75.75 0 0 1 1.06 0L8 8.94l2.72-2.72a.75.75 0 1 1 1.06 1.06l-3.25 3.25a.75.75 0 0 1-1.06 0L4.22 7.28a.75.75 0 0 1 0-1.06Z%27 clip-rule=%27evenodd%27/%3E%3C%2Fsvg%3E");background-position:right .5rem center;background-repeat:no-repeat;background-size:1rem 1rem;padding-right:1.75rem}.tr-root select:focus{outline:none !important;box-shadow:none !important}
1 +@keyframes spin{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}.thinkrank-seo-score-calculator .calculator-header{margin-bottom:20px;background:#f9f9f9;border-radius:8px;padding:10px 20px}.thinkrank-seo-score-calculator .calculator-header .header-content{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.thinkrank-seo-score-calculator .calculator-header .header-content h3{margin:0;font-size:18px;font-weight:600}.thinkrank-seo-score-calculator .calculator-header .last-calculated{font-size:12px;color:#666;font-style:italic}.thinkrank-seo-score-calculator .calculating-state{text-align:center;padding:40px 20px}.thinkrank-seo-score-calculator .calculating-state .components-spinner{margin-bottom:15px}.thinkrank-seo-score-calculator .calculating-state p{color:#666;margin:0}.thinkrank-seo-score-calculator .empty-state{text-align:center;padding:60px 20px}.thinkrank-seo-score-calculator .empty-state .empty-state-content{max-width:400px;margin:0 auto}.thinkrank-seo-score-calculator .empty-state .empty-state-content .empty-state-icon{font-size:48px;margin-bottom:20px}.thinkrank-seo-score-calculator .empty-state .empty-state-content h4{margin:0 0 10px 0;font-size:18px;color:#1e1e1e}.thinkrank-seo-score-calculator .empty-state .empty-state-content p{color:#666;line-height:1.5;margin:0}.thinkrank-score-breakdown .score-overview-card{margin-bottom:20px}.thinkrank-score-breakdown .score-overview-card .overall-score-display{display:flex;align-items:center;gap:20px}.thinkrank-score-breakdown .score-overview-card .overall-score-display .score-circle{width:80px;height:80px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;font-weight:700;position:relative}.thinkrank-score-breakdown .score-overview-card .overall-score-display .score-circle.score-excellent{background:linear-gradient(135deg, #10b981, #059669);color:#fff}.thinkrank-score-breakdown .score-overview-card .overall-score-display .score-circle.score-good{background:linear-gradient(135deg, #4451ff, #4451ff);color:#fff}.thinkrank-score-breakdown .score-overview-card .overall-score-display .score-circle.score-fair{background:linear-gradient(135deg, #b54708, #b54708);color:#fff}.thinkrank-score-breakdown .score-overview-card .overall-score-display .score-circle.score-poor{background:linear-gradient(135deg, #921c13, #921c13);color:#fff}.thinkrank-score-breakdown .score-overview-card .overall-score-display .score-circle .score-number{font-size:24px;line-height:1}.thinkrank-score-breakdown .score-overview-card .overall-score-display .score-circle .score-grade{font-size:12px;opacity:.9}.thinkrank-score-breakdown .score-overview-card .overall-score-display .score-info{flex:1}.thinkrank-score-breakdown .score-overview-card .overall-score-display .score-info .score-description{font-size:16px;font-weight:500;margin:0 0 5px 0;color:#1e1e1e}.thinkrank-score-breakdown .score-overview-card .overall-score-display .score-info .score-timestamp{font-size:12px;color:#666;margin:0}.thinkrank-score-breakdown .score-factors-card .score-factors-list .score-factor-item{border:1px solid #e5e7eb;border-radius:8px;margin-bottom:12px;overflow:hidden}.thinkrank-score-breakdown .score-factors-card .score-factors-list .score-factor-item .factor-header{padding:16px;cursor:pointer;transition:background-color .2s}.thinkrank-score-breakdown .score-factors-card .score-factors-list .score-factor-item .factor-header:hover{background-color:#f9fafb}.thinkrank-score-breakdown .score-factors-card .score-factors-list .score-factor-item .factor-header .components-flex{width:100%;align-items:center}.thinkrank-score-breakdown .score-factors-card .score-factors-list .score-factor-item .factor-header .components-flex .components-flex-item:first-child{flex:1}.thinkrank-score-breakdown .score-factors-card .score-factors-list .score-factor-item .factor-header .components-flex .components-flex-item.factor-score-container{flex:0 0 auto;min-width:80px;text-align:right}.thinkrank-score-breakdown .score-factors-card .score-factors-list .score-factor-item .factor-header .components-flex .components-flex-item:last-child{flex:0 0 auto;margin-left:8px}.thinkrank-score-breakdown .score-factors-card .score-factors-list .score-factor-item .factor-header .factor-info{display:flex;align-items:center;gap:12px;flex:1}.thinkrank-score-breakdown .score-factors-card .score-factors-list .score-factor-item .factor-header .factor-info .factor-icon{font-size:20px}.thinkrank-score-breakdown .score-factors-card .score-factors-list .score-factor-item .factor-header .factor-info .factor-text .factor-label{display:block;font-weight:500;color:#1e1e1e;margin-bottom:2px}.thinkrank-score-breakdown .score-factors-card .score-factors-list .score-factor-item .factor-header .factor-info .factor-text .factor-description{display:block;font-size:12px;color:#666}.thinkrank-score-breakdown .score-factors-card .score-factors-list .score-factor-item .factor-header .factor-score{text-align:right}.thinkrank-score-breakdown .score-factors-card .score-factors-list .score-factor-item .factor-header .factor-score .score-value{display:block;font-weight:600;margin-bottom:4px;color:#1e1e1e}.thinkrank-score-breakdown .score-factors-card .score-factors-list .score-factor-item .factor-header .factor-score .score-bar{width:100px;height:6px;background-color:#e5e7eb;border-radius:3px;overflow:hidden}.thinkrank-score-breakdown .score-factors-card .score-factors-list .score-factor-item .factor-header .factor-score .score-bar .score-bar-fill{height:100%;transition:width .3s ease}.thinkrank-score-breakdown .score-factors-card .score-factors-list .score-factor-item .factor-header .factor-score .score-bar .score-bar-fill.score-excellent{background-color:#10b981}.thinkrank-score-breakdown .score-factors-card .score-factors-list .score-factor-item .factor-header .factor-score .score-bar .score-bar-fill.score-good{background-color:#4451ff}.thinkrank-score-breakdown .score-factors-card .score-factors-list .score-factor-item .factor-header .factor-score .score-bar .score-bar-fill.score-fair{background-color:#b54708}.thinkrank-score-breakdown .score-factors-card .score-factors-list .score-factor-item .factor-header .factor-score .score-bar .score-bar-fill.score-poor{background-color:#921c13}.thinkrank-score-breakdown .score-factors-card .score-factors-list .score-factor-item .factor-details{padding:16px;background-color:#f9fafb;border-top:1px solid #e5e7eb}.thinkrank-score-breakdown .score-factors-card .score-factors-list .score-factor-item .factor-details .factor-suggestions{margin-bottom:16px}.thinkrank-score-breakdown .score-factors-card .score-factors-list .score-factor-item .factor-details .factor-suggestions h5{margin:0 0 8px 0;font-size:14px;font-weight:600;color:#1e1e1e}.thinkrank-score-breakdown .score-factors-card .score-factors-list .score-factor-item .factor-details .factor-suggestions ul{margin:0;padding-left:20px}.thinkrank-score-breakdown .score-factors-card .score-factors-list .score-factor-item .factor-details .factor-suggestions ul li{margin-bottom:4px;color:#374151;font-size:14px}.thinkrank-score-breakdown .score-factors-card .score-factors-list .score-factor-item .factor-details .factor-technical-details{margin-top:16px;padding:12px;background:#f8f9fa;border-radius:4px;border-left:3px solid #007cba}.thinkrank-score-breakdown .score-factors-card .score-factors-list .score-factor-item .factor-details .factor-technical-details h5{margin:0 0 8px 0;font-size:13px;font-weight:600;color:#1e1e1e}.thinkrank-score-breakdown .score-factors-card .score-factors-list .score-factor-item .factor-details .factor-technical-details .details-list .detail-item{display:flex;align-items:center;padding:6px 0;font-size:13px;color:#374151}.thinkrank-score-breakdown .score-factors-card .score-factors-list .score-factor-item .factor-details .factor-technical-details .details-list .detail-item::before{content:"";width:4px;height:4px;background:#007cba;border-radius:50%;margin-right:8px;flex-shrink:0}.thinkrank-score-breakdown .score-factors-card .score-factors-list .score-factor-item .factor-details .factor-technical-details .details-list .detail-item:not(:last-child){margin-bottom:2px}.improvement-suggestions-card{margin-bottom:20px}.improvement-suggestions-card .suggestions-header{display:flex;align-items:center;gap:8px}.improvement-suggestions-card .suggestions-header .suggestions-icon{font-size:20px}.improvement-suggestions-card .suggestions-header h4{margin:0;font-size:16px;font-weight:600}.improvement-suggestions-card .suggestions-count{font-size:12px;color:#666;background-color:#f3f4f6;padding:4px 8px;border-radius:12px}.improvement-suggestions-card .no-suggestions{text-align:center;padding:40px 20px}.improvement-suggestions-card .no-suggestions .success-icon{font-size:48px;margin-bottom:16px}.improvement-suggestions-card .no-suggestions h4{margin:0 0 8px 0;color:#10b981;font-size:18px}.improvement-suggestions-card .no-suggestions p{color:#666;margin:0}.improvement-suggestions-card .suggestions-list .priority-group{margin-bottom:24px}.improvement-suggestions-card .suggestions-list .priority-group .priority-header{display:flex;align-items:center;gap:8px;margin:0 0 12px 0;font-size:14px;font-weight:600}.improvement-suggestions-card .suggestions-list .priority-group .priority-header .priority-icon{font-size:12px}.improvement-suggestions-card .suggestions-list .priority-group .priority-header .priority-count{font-size:12px;color:#666;font-weight:400}.improvement-suggestions-card .suggestions-list .priority-group.priority-high .priority-header{color:#921c13}.improvement-suggestions-card .suggestions-list .priority-group.priority-medium .priority-header{color:#b54708}.improvement-suggestions-card .suggestions-list .priority-group.priority-low .priority-header{color:#059669}.improvement-suggestions-card .suggestions-list .priority-group .suggestions-in-group .suggestion-item{border:1px solid #e5e7eb;border-radius:8px;margin-bottom:8px}.improvement-suggestions-card .suggestions-list .priority-group .suggestions-in-group .suggestion-item.priority-high{border-left:4px solid #921c13}.improvement-suggestions-card .suggestions-list .priority-group .suggestions-in-group .suggestion-item.priority-medium{border-left:4px solid #b54708}.improvement-suggestions-card .suggestions-list .priority-group .suggestions-in-group .suggestion-item.priority-low{border-left:4px solid #059669}.improvement-suggestions-card .suggestions-list .priority-group .suggestions-in-group .suggestion-item .suggestion-content{padding:16px;display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.improvement-suggestions-card .suggestions-list .priority-group .suggestions-in-group .suggestion-item .suggestion-content .suggestion-text{flex:1;display:flex;flex-direction:column;gap:8px}.improvement-suggestions-card .suggestions-list .priority-group .suggestions-in-group .suggestion-item .suggestion-content .suggestion-text .category-badge{display:inline-block;background-color:#f3f4f6;color:#374151;font-size:10px;font-weight:500;text-transform:uppercase;padding:2px 6px;border-radius:3px;align-self:flex-start}.improvement-suggestions-card .suggestions-list .priority-group .suggestions-in-group .suggestion-item .suggestion-content .suggestion-text .suggestion-message{font-size:14px;line-height:1.5;color:#374151}.improvement-suggestions-card .suggestions-list .priority-group .suggestions-in-group .suggestion-item .suggestion-content .suggestion-text .priority-badge{display:inline-block;font-size:10px;font-weight:600;text-transform:uppercase;padding:3px 8px;align-self:flex-start;border-radius:4px;margin-right:8px}.improvement-suggestions-card .suggestions-list .priority-group .suggestions-in-group .suggestion-item .suggestion-content .suggestion-text .priority-badge.priority-high{background-color:#fef2f2;color:#921c13;border:1px solid #fecaca}.improvement-suggestions-card .suggestions-list .priority-group .suggestions-in-group .suggestion-item .suggestion-content .suggestion-text .priority-badge.priority-medium{background-color:#fffbeb;color:#b54708;border:1px solid #fed7aa}.improvement-suggestions-card .suggestions-list .priority-group .suggestions-in-group .suggestion-item .suggestion-content .suggestion-text .priority-badge.priority-low{background-color:#f0fdf4;color:#059669;border:1px solid #bbf7d0}.improvement-suggestions-card .suggestions-list .priority-group .suggestions-in-group .suggestion-item .suggestion-content .suggestion-actions{display:flex;gap:8px;flex-shrink:0}.improvement-suggestions-card .dismissed-suggestions-notice{margin-top:16px}@media(max-width: 768px){.thinkrank-score-breakdown .score-overview-card .overall-score-display{flex-direction:column;text-align:center;gap:16px}.thinkrank-score-breakdown .score-factors-card .score-factors-list .score-factor-item .factor-header .factor-score{min-width:auto}.thinkrank-score-breakdown .score-factors-card .score-factors-list .score-factor-item .factor-header .factor-score .score-bar{width:80px}.improvement-suggestions-card .suggestions-list .priority-group .suggestions-in-group .suggestion-item .suggestion-content{flex-direction:column;gap:12px}.improvement-suggestions-card .suggestions-list .priority-group .suggestions-in-group .suggestion-item .suggestion-content .suggestion-actions{align-self:flex-end}.seo-score-summary-card .analysis-section.score-section{flex-direction:column;text-align:center;gap:20px}.seo-score-summary-card .analysis-section.score-section .score-circle{width:100px;height:100px}.seo-score-summary-card .analysis-section.score-section .score-circle .score-number{font-size:28px}.seo-score-summary-card .analysis-section.score-section .score-circle .score-grade{font-size:16px}.seo-score-summary-card .analysis-section.score-section .score-breakdown{width:100%}.seo-score-summary-card .analysis-section.score-section .score-breakdown .score-item{flex-direction:column;text-align:center;gap:8px}.seo-score-summary-card .analysis-section.score-section .score-breakdown .score-item .score-label{font-size:13px}.seo-score-summary-card .analysis-section.score-section .score-breakdown .score-item .score-value{font-size:13px}.seo-score-summary-card .analysis-section.content-analysis .analysis-grid{grid-template-columns:1fr;gap:12px}.seo-score-summary-card .analysis-section.content-analysis .analysis-grid .analysis-item{flex-direction:column;text-align:center;gap:6px}.seo-score-summary-card .analysis-section.content-analysis .analysis-grid .analysis-item .analysis-label{font-size:12px}.seo-score-summary-card .analysis-section.content-analysis .analysis-grid .analysis-item .analysis-value{font-size:12px}}@media(max-width: 480px){.seo-score-summary-card .analysis-section.score-section{padding:16px}.seo-score-summary-card .analysis-section.score-section .score-circle{width:80px;height:80px}.seo-score-summary-card .analysis-section.score-section .score-circle .score-number{font-size:24px}.seo-score-summary-card .analysis-section.score-section .score-circle .score-grade{font-size:14px}.seo-score-summary-card .analysis-section.score-section .score-circle .score-label{font-size:10px}.seo-score-summary-card .analysis-section.content-analysis{padding:16px}.seo-score-summary-card .analysis-section.content-analysis h4{font-size:14px}.improvement-suggestions-card .suggestions-list .priority-group .suggestions-in-group .suggestion-item .suggestion-content .suggestion-text .suggestion-message{font-size:13px}.improvement-suggestions-card .suggestions-list .priority-group .suggestions-in-group .suggestion-item .suggestion-content .suggestion-text .priority-badge{font-size:9px;padding:2px 6px}}.seo-score-summary-card{margin-bottom:20px}.seo-score-summary-card .analysis-section.score-section{display:flex;align-items:center;gap:24px;margin-bottom:24px;padding:20px;background:linear-gradient(135deg, #f8fafc 0%, #e2e8f0 100%);border-radius:12px;border:1px solid #e2e8f0}.seo-score-summary-card .analysis-section.score-section .score-circle{display:flex;flex-direction:column;align-items:center;justify-content:center;width:120px;height:120px;border-radius:50%;border:4px solid;background:#fff;box-shadow:0 4px 12px rgba(0,0,0,.1);flex-shrink:0}.seo-score-summary-card .analysis-section.score-section .score-circle .score-number{font-size:32px;font-weight:700;line-height:1;margin-bottom:4px}.seo-score-summary-card .analysis-section.score-section .score-circle .score-grade{font-size:18px;font-weight:600;line-height:1;margin-bottom:4px}.seo-score-summary-card .analysis-section.score-section .score-circle .score-label{font-size:12px;font-weight:500;text-transform:uppercase;letter-spacing:.5px;opacity:.8}.seo-score-summary-card .analysis-section.score-section .score-circle.score-high{border-color:#10b981;color:#10b981;background:linear-gradient(135deg, #ecfdf5 0%, #d1fae5 100%)}.seo-score-summary-card .analysis-section.score-section .score-circle.score-medium{border-color:#b54708;color:#b54708;background:linear-gradient(135deg, #fffbeb 0%, #fef3c7 100%)}.seo-score-summary-card .analysis-section.score-section .score-circle.score-low{border-color:#921c13;color:#921c13;background:linear-gradient(135deg, #fef2f2 0%, #fecaca 100%)}.seo-score-summary-card .analysis-section.score-section .score-breakdown{flex:1;display:grid;grid-template-columns:1fr;gap:16px}.seo-score-summary-card .analysis-section.score-section .score-breakdown .score-item{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#fff;border-radius:8px;border:1px solid #e5e7eb;box-shadow:0 1px 3px rgba(0,0,0,.05)}.seo-score-summary-card .analysis-section.score-section .score-breakdown .score-item .score-label{font-weight:600;color:#374151;font-size:14px}.seo-score-summary-card .analysis-section.score-section .score-breakdown .score-item .score-value{font-weight:500;color:#1f2937;font-size:14px;padding:4px 8px;background:#f9fafb;border-radius:4px;border:1px solid #e5e7eb}.seo-score-summary-card .analysis-section.content-analysis{padding:20px;background:#f9fafb;border-radius:8px;border:1px solid #e5e7eb}.seo-score-summary-card .analysis-section.content-analysis h4{margin:0 0 16px 0;font-size:16px;font-weight:600;color:#1f2937;display:flex;align-items:center;gap:8px}.seo-score-summary-card .analysis-section.content-analysis h4::before{content:"📊";font-size:18px}.seo-score-summary-card .analysis-section.content-analysis .analysis-grid{display:grid;grid-template-columns:repeat(auto-fit, minmax(200px, 1fr));gap:16px}.seo-score-summary-card .analysis-section.content-analysis .analysis-grid .analysis-item{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#fff;border-radius:6px;border:1px solid #e5e7eb}.seo-score-summary-card .analysis-section.content-analysis .analysis-grid .analysis-item .analysis-label{font-weight:500;color:#6b7280;font-size:13px}.seo-score-summary-card .analysis-section.content-analysis .analysis-grid .analysis-item .analysis-value{font-weight:600;color:#1f2937;font-size:13px}.seo-score-summary-card .analysis-section.content-analysis .analysis-grid .analysis-item .analysis-note{display:block;font-size:11px;color:#666;margin-top:2px;font-style:italic}.thinkrank-seo-results-tabs{margin-top:20px}.thinkrank-seo-results-tabs .components-tab-panel__tabs{display:flex;border-bottom:1px solid #ddd;margin-bottom:20px}.thinkrank-seo-results-tabs .components-tab-panel__tabs .components-button{border:none;border-bottom:2px solid rgba(0,0,0,0);border-radius:0;padding:12px 20px;font-weight:500;color:#666;background:none;transition:all .2s ease}.thinkrank-seo-results-tabs .components-tab-panel__tabs .components-button:hover{color:#0073aa;background-color:#f8f9fa}.thinkrank-seo-results-tabs .components-tab-panel__tabs .components-button.is-active{color:#0073aa;border-bottom-color:#0073aa;background-color:#fff}.thinkrank-seo-results-tabs .components-tab-panel__tabs .components-button .tab-title-with-badge{display:flex;align-items:center;gap:6px}.thinkrank-seo-results-tabs .components-tab-panel__tabs .components-button .tab-title-with-badge .suggestion-count-badge{background-color:#dc3545;color:#fff;font-size:11px;font-weight:600;padding:2px 6px;border-radius:10px;min-width:18px;text-align:center;line-height:1.2}.thinkrank-seo-results-tabs .tab-content{min-height:300px}.thinkrank-seo-results-tabs .tab-content .no-suggestions-message{text-align:center;padding:60px 20px}.thinkrank-seo-results-tabs .tab-content .no-suggestions-message .success-icon{font-size:48px;margin-bottom:16px}.thinkrank-seo-results-tabs .tab-content .no-suggestions-message h4{margin:0 0 8px 0;color:#10b981;font-size:18px}.thinkrank-seo-results-tabs .tab-content .no-suggestions-message p{color:#666;margin:0;font-size:14px}.thinkrank-suggestion-modal .modal-content{margin-bottom:20px}.thinkrank-suggestion-modal .modal-content .suggestion-quote{background-color:#f8f9fa;border-left:4px solid #0073aa;padding:12px 16px;margin:12px 0;font-style:italic;color:#1e1e1e}.thinkrank-suggestion-modal .modal-content .guidance-section{background-color:#e7f3ff;border:1px solid #b3d9ff;border-radius:6px;padding:12px;margin:12px 0}.thinkrank-suggestion-modal .modal-content .guidance-section p{margin:0;color:#0073aa;font-weight:500}.thinkrank-suggestion-modal .modal-actions{display:flex;gap:12px;justify-content:flex-end;padding-top:16px;border-top:1px solid #ddd}.serp-preview-controls{margin-bottom:20px}.serp-preview-controls .preview-label{display:block;font-weight:600;margin-bottom:8px;color:var(--thinkrank-text-primary)}.serp-preview-controls .preview-toggle{display:flex;gap:16px}.serp-preview-controls .preview-toggle .toggle-option{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:14px;color:var(--thinkrank-text-secondary);transition:color .2s ease}.serp-preview-controls .preview-toggle .toggle-option.active{color:var(--thinkrank-primary);font-weight:500}.serp-preview-controls .preview-toggle .toggle-option input[type=radio]{display:none}.serp-preview-controls .preview-toggle .toggle-option .radio-icon{width:16px;height:16px;border:2px solid var(--thinkrank-border);border-radius:50%;position:relative;transition:all .2s ease}.serp-preview-controls .preview-toggle .toggle-option .radio-icon::after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);width:8px;height:8px;border-radius:50%;background:var(--thinkrank-primary);opacity:0;transition:opacity .2s ease}.serp-preview-controls .preview-toggle .toggle-option.active .radio-icon{border-color:var(--thinkrank-primary)}.serp-preview-controls .preview-toggle .toggle-option.active .radio-icon::after{opacity:1}.serp-result-container{background:#f8f9fa;border:1px solid var(--thinkrank-border-light);border-radius:8px;padding:20px}.serp-result-container.mobile{max-width:375px;margin:0 auto}.serp-result-container.desktop{max-width:600px}.serp-result{background:#fff;border-radius:8px;padding:16px;box-shadow:0 1px 3px rgba(0,0,0,.1);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif}.serp-result .serp-site-info{display:flex;align-items:center;margin-bottom:8px;font-size:14px;color:#5f6368}.serp-result .serp-site-info .site-favicon{margin-right:8px}.serp-result .serp-site-info .site-favicon .favicon-image{width:16px;height:16px;background:#f1f3f4;border-radius:2px;position:relative}.serp-result .serp-site-info .site-favicon .favicon-image::after{content:"";position:absolute;top:2px;left:2px;right:2px;bottom:2px;background:#fff;border-radius:1px}.serp-result .serp-site-info .site-details{display:flex;align-items:center;flex:1}.serp-result .serp-site-info .site-details .site-name{font-weight:500}.serp-result .serp-site-info .site-details .breadcrumb-arrow{margin:0 4px;color:#9aa0a6}.serp-result .serp-site-info .site-details .page-path{color:#9aa0a6}.serp-result .serp-site-info .serp-menu{color:#9aa0a6;cursor:pointer;padding:4px;border-radius:4px}.serp-result .serp-site-info .serp-menu:hover{background:#f1f3f4}.serp-result .serp-title{font-size:20px;line-height:1.3;color:#1a0dab;margin-bottom:4px;cursor:pointer;text-decoration:none;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.serp-result .serp-title:hover{text-decoration:underline}.serp-result .serp-content{display:flex;align-items:flex-start;gap:12px}.serp-result .serp-content.serp-content-with-image .serp-meta{flex:1}.serp-result .serp-meta{font-size:14px;line-height:1.4;color:#4d5156}.serp-result .serp-meta .serp-date{color:#5f6368}.serp-result .serp-meta .serp-separator{color:#9aa0a6}.serp-result .serp-meta .serp-description{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.serp-result .serp-featured-image{flex-shrink:0}.serp-result .serp-featured-image .featured-image{width:80px;height:80px;object-fit:cover;border-radius:8px}.serp-result .serp-featured-image .image-placeholder{width:80px;height:80px;background:#f8f9fa;border:1px dashed #dadce0;border-radius:8px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#9aa0a6}.serp-result .serp-featured-image .image-placeholder .image-icon{font-size:16px}.serp-result-container.mobile .serp-result .serp-title{font-size:18px}.serp-result-container.mobile .serp-result .serp-meta{font-size:13px}.serp-result-container.mobile .serp-result .serp-featured-image .featured-image{width:72px;height:72px}.serp-result-container.mobile .serp-result .serp-featured-image .image-placeholder{width:72px;height:72px}.serp-result-container.mobile .serp-result .serp-featured-image .image-placeholder .image-icon{font-size:14px}.serp-result-container.desktop .serp-result .serp-content{display:block}.serp-result-container.desktop .serp-result .serp-featured-image{display:none}@media(max-width: 768px){.serp-preview-controls .preview-toggle{flex-direction:column;gap:12px}.serp-result-container.desktop{max-width:100%}}.thinkrank-metabox-tabs{margin:16px 0}.thinkrank-metabox-tabs .components-tab-panel__tabs{display:flex;border-bottom:1px solid #ddd;margin:0 0 20px 0;padding:0;background:#f9f9f9;border-radius:4px 4px 0 0}.thinkrank-metabox-tabs .components-tab-panel__tabs-item{background:rgba(0,0,0,0);border:none;border-bottom:2px solid rgba(0,0,0,0);color:#666;cursor:pointer;font-size:14px;font-weight:500;padding:12px 20px;text-decoration:none;transition:all .2s ease}.thinkrank-metabox-tabs .components-tab-panel__tabs-item:hover{background:#fff;color:#0073aa}.thinkrank-metabox-tabs .components-tab-panel__tabs-item.is-active{background:#fff;border-bottom-color:#0073aa;color:#0073aa;font-weight:600}.thinkrank-metabox-tabs .components-tab-panel__tabs-item:focus{box-shadow:0 0 0 1px #0073aa;outline:none}.thinkrank-metabox-tabs .components-tab-panel__tab-content{padding:0}.thinkrank-metabox-tabs .components-tab-panel__tab-content .thinkrank-metabox-seo-tab,.thinkrank-metabox-tabs .components-tab-panel__tab-content .thinkrank-metabox-schema-tab,.thinkrank-metabox-tabs .components-tab-panel__tab-content .thinkrank-metabox-social-tab{min-height:200px}.thinkrank-metabox-seo-tab .thinkrank-card{margin-bottom:20px}.thinkrank-metabox-seo-tab .thinkrank-card:last-child{margin-bottom:0}.thinkrank-metabox-seo-tab .thinkrank-ai-controls{margin-top:20px;padding-top:20px;border-top:1px solid #eee}.thinkrank-metabox-seo-tab .thinkrank-ai-controls .ai-controls-row{display:flex;gap:20px;margin-bottom:16px}@media(max-width: 782px){.thinkrank-metabox-seo-tab .thinkrank-ai-controls .ai-controls-row{flex-direction:column;gap:12px}}.thinkrank-metabox-seo-tab .thinkrank-ai-controls .ai-control-group{flex:1}.thinkrank-metabox-seo-tab .thinkrank-ai-controls .ai-control-group label{display:block;font-weight:600;margin-bottom:4px;color:#333}.thinkrank-metabox-seo-tab .thinkrank-ai-controls .ai-control-group select{width:100%;padding:6px 8px;border:1px solid #ddd;border-radius:3px;font-size:14px}.thinkrank-metabox-seo-tab .thinkrank-ai-controls .ai-control-group select:focus{border-color:#0073aa;box-shadow:0 0 0 1px #0073aa;outline:none}.thinkrank-metabox-seo-tab .thinkrank-ai-controls .ai-buttons{display:flex;gap:12px}@media(max-width: 782px){.thinkrank-metabox-seo-tab .thinkrank-ai-controls .ai-buttons{flex-direction:column}}.thinkrank-metabox-seo-tab .thinkrank-ai-controls .ai-buttons .button{display:flex;align-items:center;gap:6px}.thinkrank-metabox-seo-tab .thinkrank-ai-controls .ai-buttons .button .dashicons{font-size:16px;width:16px;height:16px}.thinkrank-metabox-seo-tab .thinkrank-ai-controls .ai-buttons .button .dashicons.spin{animation:spin 1s linear infinite}.thinkrank-metabox-schema-tab .thinkrank-card{margin-bottom:20px}.thinkrank-metabox-schema-tab .thinkrank-card:last-child{margin-bottom:0}.thinkrank-metabox-schema-tab .thinkrank-field{margin-bottom:16px}.thinkrank-metabox-schema-tab .thinkrank-field label{display:block;font-weight:600;margin-bottom:4px;color:#333}.thinkrank-metabox-schema-tab .thinkrank-field select{width:100%;padding:6px 8px;border:1px solid #ddd;border-radius:3px;font-size:14px}.thinkrank-metabox-schema-tab .thinkrank-field select:focus{border-color:#0073aa;box-shadow:0 0 0 1px #0073aa;outline:none}.thinkrank-metabox-schema-tab .thinkrank-field .description{margin-top:4px;color:#666;font-size:13px}.thinkrank-metabox-schema-tab .schema-actions{margin-top:16px;display:flex;gap:12px}.thinkrank-metabox-schema-tab .schema-actions .button{display:flex;align-items:center;gap:6px}.thinkrank-metabox-schema-tab .schema-actions .button .dashicons{font-size:16px;width:16px;height:16px}.thinkrank-metabox-schema-tab .schema-actions .button .dashicons.spin{animation:spin 1s linear infinite}.thinkrank-metabox-schema-tab .schema-status-notice{display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:8px;margin-bottom:16px;background:#e8f2fd}.thinkrank-metabox-schema-tab .schema-status-notice .dashicons{color:#12467b;margin-top:2px}.thinkrank-metabox-schema-tab .schema-status-notice p{font-size:14px;margin:0;color:#12467b}.thinkrank-metabox-schema-tab .schema-status-notice.success,.thinkrank-metabox-schema-tab .schema-status-notice.deployed{background:#ecfdf3}.thinkrank-metabox-schema-tab .schema-status-notice.success .dashicons,.thinkrank-metabox-schema-tab .schema-status-notice.deployed .dashicons{color:#027a48}.thinkrank-metabox-schema-tab .schema-status-notice.success p,.thinkrank-metabox-schema-tab .schema-status-notice.deployed p{color:#027a48}.thinkrank-metabox-schema-tab .schema-status-notice.warning{background:#fffaeb}.thinkrank-metabox-schema-tab .schema-status-notice.warning .dashicons{color:#b54708}.thinkrank-metabox-schema-tab .schema-status-notice.warning p{color:#b54708}.thinkrank-metabox-schema-tab .schema-types-generated{margin-bottom:20px}.thinkrank-metabox-schema-tab .schema-types-generated h5{margin:0 0 8px 0;font-size:14px;font-weight:600}.thinkrank-metabox-schema-tab .schema-types-generated .schema-type-badges{display:flex;gap:8px;flex-wrap:wrap}.thinkrank-metabox-schema-tab .schema-types-generated .schema-type-badge{background:#0073aa;color:#fff;padding:4px 8px;border-radius:3px;font-size:12px;font-weight:500}.thinkrank-metabox-schema-tab .schema-code-preview{margin-bottom:20px}.thinkrank-metabox-schema-tab .schema-code-preview h5{margin:0 0 12px 0;font-size:14px;font-weight:600}.thinkrank-metabox-schema-tab .schema-code-preview .schema-code-block{margin-bottom:16px}.thinkrank-metabox-schema-tab .schema-code-preview .schema-code-block h6{margin:0 0 8px 0;font-size:13px;font-weight:600;color:#666}.thinkrank-metabox-schema-tab .schema-code-preview .schema-json-preview{background:#f8f9fa;border:1px solid #dee2e6;border-radius:4px;padding:12px;font-size:12px;font-family:Monaco,Menlo,"Ubuntu Mono",monospace;overflow:auto;max-height:300px;white-space:pre-wrap;word-wrap:break-word}.thinkrank-metabox-schema-tab .schema-data-source h5{margin:0 0 8px 0;font-size:14px;font-weight:600}.thinkrank-metabox-schema-tab .schema-data-source ul{margin:0 0 12px 0;padding-left:20px}.thinkrank-metabox-schema-tab .schema-data-source ul li{margin-bottom:4px;font-size:13px;color:#333}.thinkrank-metabox-schema-tab .schema-data-source .description{color:#666;font-size:13px;margin:0}.thinkrank-metabox-social-tab .thinkrank-card{text-align:center;padding:40px 20px}.thinkrank-metabox-social-tab .thinkrank-card .thinkrank-card-header h4{margin-bottom:8px}.thinkrank-metabox-social-tab .thinkrank-card .description{color:#666;margin-bottom:0}.thinkrank-metabox-social-tab .thinkrank-card .thinkrank-card-body p{color:#999;font-style:italic}.thinkrank-social-preview-notice{display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:8px;margin-bottom:16px;background:#e8f2fd;font-size:14px}.thinkrank-social-preview-notice.warning{background:#fffaeb}.thinkrank-loading{display:flex;align-items:center;justify-content:center;gap:12px;padding:20px;background:#f9f9f9;border:1px solid #ddd;border-radius:4px;margin:16px 0}.thinkrank-loading .spinner{float:none;margin:0}.thinkrank-loading p{margin:0;color:#666;font-weight:500}@media(max-width: 782px){.thinkrank-metabox-tabs .components-tab-panel__tabs{flex-direction:column}.thinkrank-metabox-tabs .components-tab-panel__tabs-item{text-align:center;border-bottom:1px solid #ddd;border-radius:0}.thinkrank-metabox-tabs .components-tab-panel__tabs-item:last-child{border-bottom:none}.thinkrank-metabox-tabs .components-tab-panel__tabs-item.is-active{border-bottom-color:#ddd;border-left:3px solid #0073aa}}@keyframes spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}.thinkrank-social-tab .social-preview-placeholder{text-align:center;padding:40px 20px;background:#f9fafb;border:2px dashed #ddd;border-radius:8px;color:#666}.thinkrank-social-tab .social-preview-card{border:1px solid #ddd;border-radius:8px;overflow:hidden;background:#fff;max-width:500px;margin-bottom:20px}.thinkrank-social-tab .social-preview-card .preview-platform-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#f9f9f9;border-bottom:1px solid #ddd;font-size:14px}.thinkrank-social-tab .social-preview-card .preview-platform-header .preview-status.preview-valid{color:#00a32a}.thinkrank-social-tab .social-preview-card .preview-platform-header .preview-status.preview-invalid{color:#d63638}.thinkrank-social-tab .social-preview-card .preview-image{width:100%}.thinkrank-social-tab .social-preview-card .preview-image.preview-image-facebook,.thinkrank-social-tab .social-preview-card .preview-image.preview-image-linkedin{aspect-ratio:1.91/1}.thinkrank-social-tab .social-preview-card .preview-image.preview-image-twitter{aspect-ratio:2/1}.thinkrank-social-tab .social-preview-card .preview-image.preview-image-pinterest{aspect-ratio:2/3}.thinkrank-social-tab .social-preview-card .preview-image img{width:100%;height:100%;object-fit:cover}.thinkrank-social-tab .social-preview-card .preview-content{padding:16px}.thinkrank-social-tab .social-preview-card .preview-content .preview-title{margin:0 0 8px 0;font-size:16px;font-weight:600;line-height:1.4}.thinkrank-social-tab .social-preview-card .preview-content .preview-description{margin:0 0 12px 0;font-size:14px;color:#666}.thinkrank-social-tab .social-preview-card .preview-content .preview-meta{display:flex;justify-content:space-between;font-size:12px;color:#999}.thinkrank-social-tab .social-preview-card .preview-warnings{margin:16px;padding:12px;background:#fef3c7;border-radius:6px;font-size:12px;color:#92400e}.thinkrank-social-tab .data-source-info{padding:16px;background:#f9f9f9;border:1px solid #ddd;border-radius:8px;font-size:13px}.thinkrank-social-tab .data-source-info h4{margin:0 0 12px 0;font-size:14px}.thinkrank-social-tab .data-source-info ul{margin:0 0 12px 0;padding:0;list-style:none}.thinkrank-social-tab .data-source-info ul li{margin-bottom:6px;color:#666}.thinkrank-social-tab .data-source-info .help-text{margin:0;font-size:12px;color:#999;font-style:italic}@media(max-width: 768px){.thinkrank-social-tab .social-preview-card{max-width:100%}}:root{--thinkrank-primary: #4451ff;--thinkrank-text-primary: #1d1d1d;--thinkrank-text-secondary: #535353;--thinkrank-border: #d5d5dd;--thinkrank-border-light: #e2e6f1}.thinkrank-header-slot{display:inline-flex;align-items:center;margin-right:8px}.thinkrank-header-slot .tr-root{display:inline-flex;align-items:center}.thinkrank-header-launcher{line-height:1}.thinkrank-configure-seo__mark{position:relative;display:inline-flex;align-items:center;justify-content:center;line-height:0}.thinkrank-configure-seo__score{position:absolute;top:-6px;right:-8px;min-width:16px;height:16px;padding:0 3px;box-sizing:border-box;border-radius:8px;border:1.5px solid #fff;font-size:10px;font-weight:700;line-height:13px;text-align:center}.thinkrank-metabox-launcher{top:110px;left:50%;transform:translateX(-50%)}@media screen and (max-width: 782px){.thinkrank-metabox-launcher{top:92px}}.elementor-editor-active .thinkrank-metabox-launcher{top:auto;bottom:24px;left:auto;right:24px;transform:none}.thinkrank-metabox-drawer{height:82vh;max-height:82vh}.thinkrank-metabox-drawer select{width:100% !important;max-width:100% !important;box-sizing:border-box}@media screen and (max-width: 782px){.thinkrank-metabox-drawer{height:92vh;max-height:92vh}}.schema-form-container{margin:16px 0}.schema-form-container .components-card{box-shadow:none;border:1px solid #ddd}.schema-form-container .components-card .components-card-header{border-bottom:1px solid #ddd;padding:12px 16px}.schema-form-container .components-card .components-card-header h4{margin:0;font-size:14px;font-weight:600}.schema-form-container .components-card .components-card-body{padding:16px}.thinkrank-metabox .inside{margin:0 !important;padding:0 !important}.thinkrank-metabox-content{padding:20px;word-wrap:break-word;overflow-wrap:break-word;max-width:100%;box-sizing:border-box}.thinkrank-card{background:#fff;border:1px solid #ddd;border-radius:8px;margin-bottom:20px;box-shadow:0 1px 3px rgba(0,0,0,.1)}.thinkrank-card-header{padding:16px 20px;border-bottom:1px solid #eee;background:#f9f9f9;border-radius:8px 8px 0 0}.thinkrank-card-header h4{margin:0 0 8px 0;font-size:16px;font-weight:600;color:#23282d}.thinkrank-card-header .description{margin:0;color:#666;font-size:13px;line-height:1.4}.thinkrank-card-body{padding:20px}.thinkrank-metabox-header{padding:10px 20px;margin:0 20px;border:1px solid #eee;background:#f9f9f9;border-radius:8px}.thinkrank-metabox-header h4{margin:0 0 8px 0;font-size:16px;font-weight:600;color:#23282d}.thinkrank-metabox-header .description{margin:0;color:#666;font-size:13px;line-height:1.4}.thinkrank-metabox-content h4{margin:0 0 15px 0;font-size:14px;font-weight:600}.thinkrank-metabox-content p{margin:0 0 15px 0;color:#666;font-size:13px;line-height:1.4;word-wrap:break-word}.thinkrank-field{margin-bottom:20px}.thinkrank-field label{display:block;margin-bottom:5px;font-weight:600;font-size:13px}.thinkrank-field input[type=text],.thinkrank-field textarea,.thinkrank-field select{width:100%;padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:13px;line-height:1.4}.thinkrank-field textarea{resize:vertical;min-height:80px}.thinkrank-field .description{margin-top:5px;color:#666;font-size:12px;font-style:italic}.character-counter{float:right;font-size:11px;color:#666;margin-top:5px}.character-counter.over-limit{color:#d63638;font-weight:600}.ai-controls-row{display:flex;gap:15px;margin-bottom:20px;flex-wrap:wrap}.ai-control-group{flex:1;min-width:150px}.ai-control-group label{display:block;margin-bottom:5px;font-weight:600;font-size:13px}.ai-control-group select{width:100%;padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:13px}.ai-buttons{display:flex;gap:10px;margin-bottom:20px;flex-wrap:wrap}.ai-buttons .button{display:flex;align-items:center;gap:5px;padding:8px 16px;font-size:13px}.ai-buttons .button .dashicons{font-size:16px;width:16px;height:16px}.ai-buttons .button:disabled{opacity:.6;cursor:not-allowed}.spin{animation:spin 1s linear infinite}@keyframes spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}.thinkrank-analysis-results{margin-top:20px;padding:20px;background:#f9f9f9;border:1px solid #e0e0e0;border-radius:8px}.analysis-section{margin-bottom:25px}.analysis-section:last-child{margin-bottom:0}.analysis-section h4{margin:0 0 15px 0;font-size:14px;font-weight:600;color:#333;border-bottom:2px solid #0073aa;padding-bottom:5px}.analysis-section h5{margin:0 0 10px 0;font-size:13px;font-weight:600;color:#555}.analysis-grid{display:grid;grid-template-columns:repeat(auto-fit, minmax(150px, 1fr));gap:15px}.analysis-item{padding:15px;background:#fff;border:1px solid #ddd;border-radius:6px;text-align:center}.analysis-label{display:block;font-size:12px;color:#666;margin-bottom:5px;text-transform:uppercase;font-weight:600}.analysis-value{display:block;font-size:16px;font-weight:700;color:#333;text-transform:capitalize}.suggestions-list{margin:0;padding:0;list-style:none}.suggestions-list li{margin-bottom:10px;padding:12px 15px;background:#fff;border:1px solid #ddd;border-left:4px solid #0073aa;border-radius:4px;font-size:13px;line-height:1.4}.suggestions-list li:last-child{margin-bottom:0}.strengths-weaknesses{display:grid;grid-template-columns:1fr 1fr;gap:20px}.strengths-column,.weaknesses-column{padding:15px;background:#fff;border:1px solid #ddd;border-radius:6px}.strengths-list,.weaknesses-list{margin:0;padding:0;list-style:none}.strengths-list li,.weaknesses-list li{margin-bottom:8px;padding:8px 12px;border-radius:4px;font-size:12px;line-height:1.4}.strengths-list li{background:#e8f5e8;border-left:3px solid #00a32a;color:#155724}.weaknesses-list li{background:#f8e8e8;border-left:3px solid #d63638;color:#721c24}.strengths-list li:last-child,.weaknesses-list li:last-child{margin-bottom:0}@media(max-width: 782px){.ai-controls-row{flex-direction:column}.ai-buttons{flex-direction:column}.analysis-grid{grid-template-columns:1fr}.strengths-weaknesses{grid-template-columns:1fr}}.thinkrank-field.loading input,.thinkrank-field.loading textarea{opacity:.6;pointer-events:none}.thinkrank-field input:focus,.thinkrank-field textarea:focus,.thinkrank-field select:focus{border-color:#0073aa;box-shadow:0 0 0 1px #0073aa;outline:none}.hidden{display:none}.suggestion-content{display:flex;justify-content:space-between;align-items:center;gap:10px}.priority-badge{font-size:10px;padding:2px 6px;border-radius:3px;font-weight:600;text-transform:uppercase}.priority-badge.priority-high{background-color:#dc3545;color:#fff}.priority-badge.priority-medium{background-color:#ffc107;color:#212529}.priority-badge.priority-low{background-color:#28a745;color:#fff}.priority-badge.priority-critical{background-color:#6f42c1;color:#fff}.thinkrank-refresh-indicator{position:fixed;top:32px;right:20px;background:#fff;border:1px solid #ddd;border-radius:4px;padding:8px 12px;box-shadow:0 2px 8px rgba(0,0,0,.1);z-index:9999;display:flex;align-items:center;gap:8px;font-size:13px;color:#666}.thinkrank-refresh-indicator .spinner{float:none;margin:0;width:16px;height:16px}.thinkrank-refresh-indicator span:not(.spinner){white-space:nowrap}.thinkrank-metabox-schema-tab.is-refreshing{opacity:.7;pointer-events:none;transition:opacity .2s ease}.tr-root select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 16 16%27 fill=%27%2394a3b8%27%3E%3Cpath fill-rule=%27evenodd%27 d=%27M4.22 6.22a.75.75 0 0 1 1.06 0L8 8.94l2.72-2.72a.75.75 0 1 1 1.06 1.06l-3.25 3.25a.75.75 0 0 1-1.06 0L4.22 7.28a.75.75 0 0 1 0-1.06Z%27 clip-rule=%27evenodd%27/%3E%3C%2Fsvg%3E");background-position:right .5rem center;background-repeat:no-repeat;background-size:1rem 1rem;padding-right:1.75rem}.tr-root select:focus{outline:none !important;box-shadow:none !important}.thinkrank-metabox-panel-card{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding:4px 0}.thinkrank-metabox-panel-card .thinkrank-metabox-panel-card-text{display:flex;flex-direction:column;gap:2px;min-width:0}.thinkrank-metabox-panel-card .thinkrank-metabox-panel-card-text strong{font-size:13px;line-height:1.4}.thinkrank-metabox-panel-card .thinkrank-metabox-panel-card-text span{font-size:12px;color:#646970;line-height:1.4}.thinkrank-metabox-panel-card .thinkrank-metabox-panel-card-actions{display:flex;align-items:center;gap:10px;flex-shrink:0}.thinkrank-metabox-panel-card .thinkrank-metabox-panel-card-score{font-size:15px;font-weight:600;line-height:1;color:#1e1e1e;white-space:nowrap}.thinkrank-metabox-panel-card .thinkrank-metabox-panel-card-score small{font-size:11px;font-weight:400;color:#646970}
3 2 /* Full-page WP chrome takeover — applied when ThinkRank admin UI is active */
4 3
5 4 #wpcontent:has(#thinkrank-root) {
6 5 padding-left: 0;
@@ -54,8 +53,9 @@
54 53 and normal WP screens are untouched; `min-width: 783px` avoids WP's
55 54 off-canvas mobile menu; no `!important`, so WP's own inline pin styles still
56 55 win for a taller-than-viewport menu. */
57 56 @media screen and (min-width: 783px) {
57 +
58 58 body:has(#thinkrank-root) #adminmenuwrap {
59 59 position: fixed;
60 60 top: var(--wp-admin--admin-bar--height, 32px);
61 61 bottom: 0;
@@ -60,8 +60,9 @@
60 60 top: var(--wp-admin--admin-bar--height, 32px);
61 61 bottom: 0;
62 62 overflow-x: hidden;
63 63 overflow-y: auto;
64 +
64 65 /* Keep the menu scrollable for taller-than-viewport menus, but hide the
65 66 scrollbar so the sidebar stays clean (Firefox / IE / WebKit). */
66 67 scrollbar-width: none;
67 68 -ms-overflow-style: none;
@@ -90,16 +91,18 @@
90 91
91 92 /* Ensure Inter font applies inside both admin shell and metabox */
92 93 #thinkrank-root,
93 94 .tr-root {
94 - font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
95 + font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
95 96 -webkit-font-smoothing: antialiased;
96 97 -moz-osx-font-smoothing: grayscale;
97 98 }
98 99
99 100 /* ─── Reduced-motion ────────────────────────────────────────────────────────── */
101 +
100 102 /* Honour the user's OS-level preference; collapse all durations to near-zero */
101 103 @media (prefers-reduced-motion: reduce) {
104 +
102 105 .tr-root *,
103 106 .tr-root *::before,
104 107 .tr-root *::after {
105 108 animation-duration: 0.01ms !important;
@@ -109,59 +112,68 @@
109 112 }
110 113 }
111 114
112 115 /* ─── CSS Custom Properties — Design Token Layer ───────────────────────────── */
116 +
113 117 /* These mirror the Tailwind palette and serve as a hook for a future dark-mode */
118 +
114 119 /* toggle. Dark-mode overrides are intentionally empty until the toggle ships. */
115 120 :root {
121 +
116 122 /* Brand */
117 - --tr-color-brand: #4451FF;
118 - --tr-color-brand-500: #4451FF;
119 - --tr-color-brand-bg: #EEF0FF;
123 + --tr-color-brand: #4451ff;
124 + --tr-color-brand-500: #4451ff;
125 + --tr-color-brand-bg: #eef0ff;
120 126
121 127 /* Semantic */
122 - --tr-color-success: #027A48;
123 - --tr-color-success-bg: #ECFDF3;
124 - --tr-color-warning: #B54708;
125 - --tr-color-warning-bg: #FFFAEB;
126 - --tr-color-danger: #921C13;
127 - --tr-color-danger-bg: #FEF3F2;
128 + --tr-color-success: #027a48;
129 + --tr-color-success-bg: #ecfdf3;
130 + --tr-color-warning: #b54708;
131 + --tr-color-warning-bg: #fffaeb;
132 + --tr-color-danger: #921c13;
133 + --tr-color-danger-bg: #fef3f2;
128 134
129 135 /* Semantic surfaces */
130 - --tr-bg-canvas: #FFFFFF;
131 - --tr-bg-surface: #FFFFFF;
132 - --tr-bg-elevated: #FFFFFF;
136 + --tr-bg-canvas: #fff;
137 + --tr-bg-surface: #fff;
138 + --tr-bg-elevated: #fff;
133 139
134 140 /* Text */
135 - --tr-text-primary: #1D1D1D;
141 + --tr-text-primary: #1d1d1d;
136 142 --tr-text-secondary: #535353;
137 - --tr-text-tertiary: #5A5C5E;
138 - --tr-text-muted: #5A5C5E;
143 + --tr-text-tertiary: #5a5c5e;
144 + --tr-text-muted: #5a5c5e;
139 145
140 146 /* Borders */
141 - --tr-border-primary: #D5D5DD;
142 - --tr-border-secondary: #E2E6F1;
143 - --tr-border-base: #D5D5DD;
144 - --tr-border-subtle: #E2E6F1;
147 + --tr-border-primary: #d5d5dd;
148 + --tr-border-secondary: #e2e6f1;
149 + --tr-border-base: #d5d5dd;
150 + --tr-border-subtle: #e2e6f1;
145 151
146 152 /* Focus ring */
147 - --tr-ring-color: #4451FF;
153 + --tr-ring-color: #4451ff;
148 154 --tr-ring-width: 2px;
149 155
150 156 /* Transition */
151 - --tr-duration-fast: 150ms;
157 + --tr-duration-fast: 150ms;
152 158 --tr-duration-normal: 200ms;
153 - --tr-easing: ease-in-out;
159 + --tr-easing: ease-in-out;
154 160 }
155 161
156 162 /* Dark mode hook — intentionally a no-op until the toggle feature ships */
163 +
157 164 /* @media (prefers-color-scheme: dark) { :root { ... } } */
158 165
159 166 /* ─── WP Admin Color Scheme Isolation ──────────────────────────────────────── */
167 +
160 168 /* WP ships 6 admin color schemes that override link colour, menu highlight etc. */
169 +
161 170 /* Our plugin UI is fully self-contained inside .tr-root so these bleed-throughs */
171 +
162 172 /* are neutralised by Tailwind's important:.tr-root specificity. */
173 +
163 174 /* The rule below prevents WP's focus outline colour from leaking into our shell. */
175 +
164 176 /* Suppress WP is-busy button stripe animation — our plugin uses text-only loading states */
165 177 .tr-root .components-button.is-busy,
166 178 .tr-root .components-button.is-busy:hover,
167 179 .tr-root .components-button.is-busy:disabled,
@@ -180,63 +192,42 @@
180 192 outline: none;
181 193 box-shadow: none;
182 194 }
183 195
184 -*, ::before, ::after{
185 - --tw-border-spacing-x: 0;
186 - --tw-border-spacing-y: 0;
187 - --tw-translate-x: 0;
188 - --tw-translate-y: 0;
189 - --tw-rotate: 0;
190 - --tw-skew-x: 0;
191 - --tw-skew-y: 0;
192 - --tw-scale-x: 1;
193 - --tw-scale-y: 1;
194 - --tw-pan-x: ;
195 - --tw-pan-y: ;
196 - --tw-pinch-zoom: ;
197 - --tw-scroll-snap-strictness: proximity;
198 - --tw-gradient-from-position: ;
199 - --tw-gradient-via-position: ;
200 - --tw-gradient-to-position: ;
201 - --tw-ordinal: ;
202 - --tw-slashed-zero: ;
203 - --tw-numeric-figure: ;
204 - --tw-numeric-spacing: ;
205 - --tw-numeric-fraction: ;
206 - --tw-ring-inset: ;
207 - --tw-ring-offset-width: 0px;
208 - --tw-ring-offset-color: #fff;
209 - --tw-ring-color: rgb(59 130 246 / 0.5);
210 - --tw-ring-offset-shadow: 0 0 #0000;
211 - --tw-ring-shadow: 0 0 #0000;
212 - --tw-shadow: 0 0 #0000;
213 - --tw-shadow-colored: 0 0 #0000;
214 - --tw-blur: ;
215 - --tw-brightness: ;
216 - --tw-contrast: ;
217 - --tw-grayscale: ;
218 - --tw-hue-rotate: ;
219 - --tw-invert: ;
220 - --tw-saturate: ;
221 - --tw-sepia: ;
222 - --tw-drop-shadow: ;
223 - --tw-backdrop-blur: ;
224 - --tw-backdrop-brightness: ;
225 - --tw-backdrop-contrast: ;
226 - --tw-backdrop-grayscale: ;
227 - --tw-backdrop-hue-rotate: ;
228 - --tw-backdrop-invert: ;
229 - --tw-backdrop-opacity: ;
230 - --tw-backdrop-saturate: ;
231 - --tw-backdrop-sepia: ;
232 - --tw-contain-size: ;
233 - --tw-contain-layout: ;
234 - --tw-contain-paint: ;
235 - --tw-contain-style: ;
196 +/*
197 + * Inter, self-hosted.
198 + *
199 + * Bundled from @fontsource-variable/inter (SIL OFL 1.1) instead of loading
200 + * from Google Fonts, so no ThinkRank screen makes a third-party request.
201 + * Latin and Latin Extended only; other scripts fall back to the system font
202 + * stack that every `font-family: Inter, …` declaration already lists.
203 + *
204 + * Declared as `Inter` (not fontsource's `Inter Variable`) so the existing
205 + * font stacks, Tailwind config and canvas fonts keep working unchanged.
206 + */
207 +
208 +@font-face {
209 + font-family: Inter;
210 + font-style: normal;
211 + font-display: swap;
212 + font-weight: 100 900;
213 + src: url(fonts/inter-latin-ext-wght-normal.8bff79fb.woff2) format("woff2-variations");
214 + unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
236 215 }
237 216
238 -::backdrop{
217 +@font-face {
218 + font-family: Inter;
219 + font-style: normal;
220 + font-display: swap;
221 + font-weight: 100 900;
222 + src: url(fonts/inter-latin-wght-normal.4f2981d8.woff2) format("woff2-variations");
223 + unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
224 +}
225 +
226 +:where(.tr-root),
227 +:where(.tr-root) *,
228 +:where(.tr-root) ::before,
229 +:where(.tr-root) ::after{
239 230 --tw-border-spacing-x: 0;
240 231 --tw-border-spacing-y: 0;
241 232 --tw-translate-x: 0;
242 233 --tw-translate-y: 0;
@@ -287,32 +278,28 @@
287 278 --tw-contain-layout: ;
288 279 --tw-contain-paint: ;
289 280 --tw-contain-style: ;
290 281 }
291 -
292 282 /*
293 283 ! tailwindcss v3.4.19 | MIT License | https://tailwindcss.com
294 284 */
295 -
296 285 /*
297 286 1. Prevent padding and border from affecting element width. (https://github.com/mozdevs/cssremedy/issues/4)
298 287 2. Allow adding a border to an element by just adding a border-width. (https://github.com/tailwindcss/tailwindcss/pull/116)
299 288 */
300 -
301 -*,
302 -::before,
303 -::after {
289 +:where(.tr-root),
290 +:where(.tr-root) *,
291 +:where(.tr-root) ::before,
292 +:where(.tr-root) ::after {
304 293 box-sizing: border-box; /* 1 */
305 294 border-width: 0; /* 2 */
306 295 border-style: solid; /* 2 */
307 296 border-color: #D5D5DD; /* 2 */
308 297 }
309 -
310 -::before,
311 -::after {
298 +:where(.tr-root) ::before,
299 +:where(.tr-root) ::after {
312 300 --tw-content: '';
313 301 }
314 -
315 302 /*
316 303 1. Use a consistent sensible line-height in all browsers.
317 304 2. Prevent adjustments of font size after orientation changes in iOS.
318 305 3. Use a more readable tab size.
@@ -320,11 +307,9 @@
320 307 5. Use the user's configured `sans` font-feature-settings by default.
321 308 6. Use the user's configured `sans` font-variation-settings by default.
322 309 7. Disable tap highlights on iOS
323 310 */
324 -
325 -html,
326 -:host {
311 +:where(.tr-root) {
327 312 line-height: 1.5; /* 1 */
328 313 -webkit-text-size-adjust: 100%; /* 2 */ /* 3 */
329 314 tab-size: 4; /* 3 */
330 315 font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; /* 4 */
@@ -331,72 +316,59 @@
331 316 font-feature-settings: normal; /* 5 */
332 317 font-variation-settings: normal; /* 6 */
333 318 -webkit-tap-highlight-color: transparent; /* 7 */
334 319 }
335 -
336 320 /*
337 321 1. Remove the margin in all browsers.
338 322 2. Inherit line-height from `html` so users can set them as a class directly on the `html` element.
339 323 */
340 -
341 -body {
324 +:where(.tr-root) body {
342 325 margin: 0; /* 1 */
343 326 line-height: inherit; /* 2 */
344 327 }
345 -
346 328 /*
347 329 1. Add the correct height in Firefox.
348 330 2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655)
349 331 3. Ensure horizontal rules are visible by default.
350 332 */
351 -
352 -hr {
333 +:where(.tr-root) hr {
353 334 height: 0; /* 1 */
354 335 color: inherit; /* 2 */
355 336 border-top-width: 1px; /* 3 */
356 337 }
357 -
358 338 /*
359 339 Add the correct text decoration in Chrome, Edge, and Safari.
360 340 */
361 -
362 -abbr:where([title]) {
341 +:where(.tr-root) abbr:where([title]) {
363 342 -webkit-text-decoration: underline dotted;
364 343 text-decoration: underline dotted;
365 344 }
366 -
367 345 /*
368 346 Remove the default font size and weight for headings.
369 347 */
370 -
371 -h1,
372 -h2,
373 -h3,
374 -h4,
375 -h5,
376 -h6 {
348 +:where(.tr-root) h1,
349 +:where(.tr-root) h2,
350 +:where(.tr-root) h3,
351 +:where(.tr-root) h4,
352 +:where(.tr-root) h5,
353 +:where(.tr-root) h6 {
377 354 font-size: inherit;
378 355 font-weight: inherit;
379 356 }
380 -
381 357 /*
382 358 Reset links to optimize for opt-in styling instead of opt-out.
383 359 */
384 -
385 -a {
360 +:where(.tr-root) a {
386 361 color: inherit;
387 362 text-decoration: inherit;
388 363 }
389 -
390 364 /*
391 365 Add the correct font weight in Edge and Safari.
392 366 */
393 -
394 -b,
395 -strong {
367 +:where(.tr-root) b,
368 +:where(.tr-root) strong {
396 369 font-weight: bolder;
397 370 }
398 -
399 371 /*
400 372 1. Use the user's configured `mono` font-family by default.
401 373 2. Use the user's configured `mono` font-feature-settings by default.
402 374 3. Use the user's configured `mono` font-variation-settings by default.
@@ -401,70 +373,59 @@
401 373 2. Use the user's configured `mono` font-feature-settings by default.
402 374 3. Use the user's configured `mono` font-variation-settings by default.
403 375 4. Correct the odd `em` font sizing in all browsers.
404 376 */
405 -
406 -code,
407 -kbd,
408 -samp,
409 -pre {
377 +:where(.tr-root) code,
378 +:where(.tr-root) kbd,
379 +:where(.tr-root) samp,
380 +:where(.tr-root) pre {
410 381 font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; /* 1 */
411 382 font-feature-settings: normal; /* 2 */
412 383 font-variation-settings: normal; /* 3 */
413 384 font-size: 1em; /* 4 */
414 385 }
415 -
416 386 /*
417 387 Add the correct font size in all browsers.
418 388 */
419 -
420 -small {
389 +:where(.tr-root) small {
421 390 font-size: 80%;
422 391 }
423 -
424 392 /*
425 393 Prevent `sub` and `sup` elements from affecting the line height in all browsers.
426 394 */
427 -
428 -sub,
429 -sup {
395 +:where(.tr-root) sub,
396 +:where(.tr-root) sup {
430 397 font-size: 75%;
431 398 line-height: 0;
432 399 position: relative;
433 400 vertical-align: baseline;
434 401 }
435 -
436 -sub {
402 +:where(.tr-root) sub {
437 403 bottom: -0.25em;
438 404 }
439 -
440 -sup {
405 +:where(.tr-root) sup {
441 406 top: -0.5em;
442 407 }
443 -
444 408 /*
445 409 1. Remove text indentation from table contents in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=999088, https://bugs.webkit.org/show_bug.cgi?id=201297)
446 410 2. Correct table border color inheritance in all Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=935729, https://bugs.webkit.org/show_bug.cgi?id=195016)
447 411 3. Remove gaps between table borders by default.
448 412 */
449 -
450 -table {
413 +:where(.tr-root) table {
451 414 text-indent: 0; /* 1 */
452 415 border-color: inherit; /* 2 */
453 416 border-collapse: collapse; /* 3 */
454 417 }
455 -
456 418 /*
457 419 1. Change the font styles in all browsers.
458 420 2. Remove the margin in Firefox and Safari.
459 421 3. Remove default padding in all browsers.
460 422 */
461 -
462 -button,
463 -input,
464 -optgroup,
465 -select,
466 -textarea {
423 +:where(.tr-root) button,
424 +:where(.tr-root) input,
425 +:where(.tr-root) optgroup,
426 +:where(.tr-root) select,
427 +:where(.tr-root) textarea {
467 428 font-family: inherit; /* 1 */
468 429 font-feature-settings: inherit; /* 1 */
469 430 font-variation-settings: inherit; /* 1 */
470 431 font-size: 100%; /* 1 */
@@ -474,213 +435,172 @@
474 435 color: inherit; /* 1 */
475 436 margin: 0; /* 2 */
476 437 padding: 0; /* 3 */
477 438 }
478 -
479 439 /*
480 440 Remove the inheritance of text transform in Edge and Firefox.
481 441 */
482 -
483 -button,
484 -select {
442 +:where(.tr-root) button,
443 +:where(.tr-root) select {
485 444 text-transform: none;
486 445 }
487 -
488 446 /*
489 447 1. Correct the inability to style clickable types in iOS and Safari.
490 448 2. Remove default button styles.
491 449 */
492 -
493 -button,
494 -input:where([type='button']),
495 -input:where([type='reset']),
496 -input:where([type='submit']) {
450 +:where(.tr-root) button,
451 +:where(.tr-root) input:where([type='button']),
452 +:where(.tr-root) input:where([type='reset']),
453 +:where(.tr-root) input:where([type='submit']) {
497 454 -webkit-appearance: button; /* 1 */
498 455 background-color: transparent; /* 2 */
499 456 background-image: none; /* 2 */
500 457 }
501 -
502 458 /*
503 459 Use the modern Firefox focus style for all focusable elements.
504 460 */
505 -
506 -:-moz-focusring {
461 +:where(.tr-root) :-moz-focusring {
507 462 outline: auto;
508 463 }
509 -
510 464 /*
511 465 Remove the additional `:invalid` styles in Firefox. (https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737)
512 466 */
513 -
514 -:-moz-ui-invalid {
467 +:where(.tr-root) :-moz-ui-invalid {
515 468 box-shadow: none;
516 469 }
517 -
518 470 /*
519 471 Add the correct vertical alignment in Chrome and Firefox.
520 472 */
521 -
522 -progress {
473 +:where(.tr-root) progress {
523 474 vertical-align: baseline;
524 475 }
525 -
526 476 /*
527 477 Correct the cursor style of increment and decrement buttons in Safari.
528 478 */
529 -
530 -::-webkit-inner-spin-button,
531 -::-webkit-outer-spin-button {
479 +:where(.tr-root) ::-webkit-inner-spin-button,
480 +:where(.tr-root) ::-webkit-outer-spin-button {
532 481 height: auto;
533 482 }
534 -
535 483 /*
536 484 1. Correct the odd appearance in Chrome and Safari.
537 485 2. Correct the outline style in Safari.
538 486 */
539 -
540 -[type='search'] {
487 +:where(.tr-root) [type='search'] {
541 488 -webkit-appearance: textfield; /* 1 */
542 489 outline-offset: -2px; /* 2 */
543 490 }
544 -
545 491 /*
546 492 Remove the inner padding in Chrome and Safari on macOS.
547 493 */
548 -
549 -::-webkit-search-decoration {
494 +:where(.tr-root) ::-webkit-search-decoration {
550 495 -webkit-appearance: none;
551 496 }
552 -
553 497 /*
554 498 1. Correct the inability to style clickable types in iOS and Safari.
555 499 2. Change font properties to `inherit` in Safari.
556 500 */
557 -
558 -::-webkit-file-upload-button {
501 +:where(.tr-root) ::-webkit-file-upload-button {
559 502 -webkit-appearance: button; /* 1 */
560 503 font: inherit; /* 2 */
561 504 }
562 -
563 505 /*
564 506 Add the correct display in Chrome and Safari.
565 507 */
566 -
567 -summary {
508 +:where(.tr-root) summary {
568 509 display: list-item;
569 510 }
570 -
571 511 /*
572 512 Removes the default spacing and border for appropriate elements.
573 513 */
574 -
575 -blockquote,
576 -dl,
577 -dd,
578 -h1,
579 -h2,
580 -h3,
581 -h4,
582 -h5,
583 -h6,
584 -hr,
585 -figure,
586 -p,
587 -pre {
514 +:where(.tr-root) blockquote,
515 +:where(.tr-root) dl,
516 +:where(.tr-root) dd,
517 +:where(.tr-root) h1,
518 +:where(.tr-root) h2,
519 +:where(.tr-root) h3,
520 +:where(.tr-root) h4,
521 +:where(.tr-root) h5,
522 +:where(.tr-root) h6,
523 +:where(.tr-root) hr,
524 +:where(.tr-root) figure,
525 +:where(.tr-root) p,
526 +:where(.tr-root) pre {
588 527 margin: 0;
589 528 }
590 -
591 -fieldset {
529 +:where(.tr-root) fieldset {
592 530 margin: 0;
593 531 padding: 0;
594 532 }
595 -
596 -legend {
533 +:where(.tr-root) legend {
597 534 padding: 0;
598 535 }
599 -
600 -ol,
601 -ul,
602 -menu {
536 +:where(.tr-root) ol,
537 +:where(.tr-root) ul,
538 +:where(.tr-root) menu {
603 539 list-style: none;
604 540 margin: 0;
605 541 padding: 0;
606 542 }
607 -
608 543 /*
609 544 Reset default styling for dialogs.
610 545 */
611 -
612 -dialog {
546 +:where(.tr-root) dialog {
613 547 padding: 0;
614 548 }
615 -
616 549 /*
617 550 Prevent resizing textareas horizontally by default.
618 551 */
619 -
620 -textarea {
552 +:where(.tr-root) textarea {
621 553 resize: vertical;
622 554 }
623 -
624 555 /*
625 556 1. Reset the default placeholder opacity in Firefox. (https://github.com/tailwindlabs/tailwindcss/issues/3300)
626 557 2. Set the default placeholder color to the user's configured gray 400 color.
627 558 */
628 -
629 -input::placeholder,
630 -textarea::placeholder {
559 +:where(.tr-root) input::placeholder,
560 +:where(.tr-root) textarea::placeholder {
631 561 opacity: 1; /* 1 */
632 562 color: #9ca3af; /* 2 */
633 563 }
634 -
635 564 /*
636 565 Set the default cursor for buttons.
637 566 */
638 -
639 -button,
640 -[role="button"] {
567 +:where(.tr-root) button,
568 +:where(.tr-root) [role="button"] {
641 569 cursor: pointer;
642 570 }
643 -
644 571 /*
645 572 Make sure disabled buttons don't get the pointer cursor.
646 573 */
647 -
648 -:disabled {
574 +:where(.tr-root) :disabled {
649 575 cursor: default;
650 576 }
651 -
652 577 /*
653 578 1. Make replaced elements `display: block` by default. (https://github.com/mozdevs/cssremedy/issues/14)
654 579 2. Add `vertical-align: middle` to align replaced elements more sensibly by default. (https://github.com/jensimmons/cssremedy/issues/14#issuecomment-634934210)
655 580 This can trigger a poorly considered lint error in some tools but is included by design.
656 581 */
657 -
658 -img,
659 -svg,
660 -video,
661 -canvas,
662 -audio,
663 -iframe,
664 -embed,
665 -object {
582 +:where(.tr-root) img,
583 +:where(.tr-root) svg,
584 +:where(.tr-root) video,
585 +:where(.tr-root) canvas,
586 +:where(.tr-root) audio,
587 +:where(.tr-root) iframe,
588 +:where(.tr-root) embed,
589 +:where(.tr-root) object {
666 590 display: block; /* 1 */
667 591 vertical-align: middle; /* 2 */
668 592 }
669 -
670 593 /*
671 594 Constrain images and videos to the parent width and preserve their intrinsic aspect ratio. (https://github.com/mozdevs/cssremedy/issues/14)
672 595 */
673 -
674 -img,
675 -video {
596 +:where(.tr-root) img,
597 +:where(.tr-root) video {
676 598 max-width: 100%;
677 599 height: auto;
678 600 }
679 -
680 601 /* Make elements with the HTML hidden attribute stay hidden by default */
681 -
682 -[hidden]:where(:not([hidden="until-found"])) {
602 +:where(.tr-root) [hidden]:where(:not([hidden="until-found"])) {
683 603 display: none;
684 604 }
685 605 .tr-root .tr-pointer-events-none{
686 606 pointer-events: none;
@@ -693,8 +613,11 @@
693 613 }
694 614 .tr-root .tr-relative{
695 615 position: relative;
696 616 }
617 +.tr-root .tr-sticky{
618 + position: sticky;
619 +}
697 620 .tr-root .tr-inset-0{
698 621 inset: 0px;
699 622 }
700 623 .tr-root .tr-inset-x-0{
@@ -746,8 +669,11 @@
746 669 }
747 670 .tr-root .tr-left-full{
748 671 left: 100%;
749 672 }
673 +.tr-root .tr-right-1{
674 + right: 0.25rem;
675 +}
750 676 .tr-root .tr-right-2{
751 677 right: 0.5rem;
752 678 }
753 679 .tr-root .tr-right-3{
@@ -752,8 +678,11 @@
752 678 }
753 679 .tr-root .tr-right-3{
754 680 right: 0.75rem;
755 681 }
682 +.tr-root .tr-right-8{
683 + right: 2rem;
684 +}
756 685 .tr-root .tr-right-\[-2rem\]{
757 686 right: -2rem;
758 687 }
759 688 .tr-root .tr-right-full{
@@ -758,8 +687,14 @@
758 687 }
759 688 .tr-root .tr-right-full{
760 689 right: 100%;
761 690 }
691 +.tr-root .tr-top-0{
692 + top: 0px;
693 +}
694 +.tr-root .tr-top-1{
695 + top: 0.25rem;
696 +}
762 697 .tr-root .tr-top-1\.5{
763 698 top: 0.375rem;
764 699 }
765 700 .tr-root .tr-top-1\/2{
@@ -776,8 +711,11 @@
776 711 }
777 712 .tr-root .tr-top-full{
778 713 top: 100%;
779 714 }
715 +.tr-root .tr-z-10{
716 + z-index: 10;
717 +}
780 718 .tr-root .tr-z-50{
781 719 z-index: 50;
782 720 }
783 721 .tr-root .tr-z-\[99990\]{
@@ -987,8 +925,11 @@
987 925 }
988 926 .tr-root .tr-h-2\.5{
989 927 height: 0.625rem;
990 928 }
929 +.tr-root .tr-h-20{
930 + height: 5rem;
931 +}
991 932 .tr-root .tr-h-3{
992 933 height: 0.75rem;
993 934 }
994 935 .tr-root .tr-h-3\.5{
@@ -1023,10 +964,10 @@
1023 964 }
1024 965 .tr-root .tr-h-\[22px\]{
1025 966 height: 22px;
1026 967 }
1027 -.tr-root .tr-h-auto{
1028 - height: auto;
968 +.tr-root .tr-h-\[72px\]{
969 + height: 72px;
1029 970 }
1030 971 .tr-root .tr-h-full{
1031 972 height: 100%;
1032 973 }
@@ -1032,8 +973,17 @@
1032 973 }
1033 974 .tr-root .tr-h-px{
1034 975 height: 1px;
1035 976 }
977 +.tr-root .tr-max-h-80{
978 + max-height: 20rem;
979 +}
980 +.tr-root .tr-max-h-\[70vh\]{
981 + max-height: 70vh;
982 +}
983 +.tr-root .tr-max-h-full{
984 + max-height: 100%;
985 +}
1036 986 .tr-root .tr-min-h-0{
1037 987 min-height: 0px;
1038 988 }
1039 989 .tr-root .tr-min-h-10{
@@ -1059,8 +1009,14 @@
1059 1009 }
1060 1010 .tr-root .tr-w-11{
1061 1011 width: 2.75rem;
1062 1012 }
1013 +.tr-root .tr-w-12{
1014 + width: 3rem;
1015 +}
1016 +.tr-root .tr-w-14{
1017 + width: 3.5rem;
1018 +}
1063 1019 .tr-root .tr-w-16{
1064 1020 width: 4rem;
1065 1021 }
1066 1022 .tr-root .tr-w-2{
@@ -1071,8 +1027,14 @@
1071 1027 }
1072 1028 .tr-root .tr-w-2\/3{
1073 1029 width: 66.666667%;
1074 1030 }
1031 +.tr-root .tr-w-20{
1032 + width: 5rem;
1033 +}
1034 +.tr-root .tr-w-24{
1035 + width: 6rem;
1036 +}
1075 1037 .tr-root .tr-w-3{
1076 1038 width: 0.75rem;
1077 1039 }
1078 1040 .tr-root .tr-w-3\.5{
@@ -1095,11 +1057,20 @@
1095 1057 }
1096 1058 .tr-root .tr-w-44{
1097 1059 width: 11rem;
1098 1060 }
1061 +.tr-root .tr-w-48{
1062 + width: 12rem;
1063 +}
1099 1064 .tr-root .tr-w-5{
1100 1065 width: 1.25rem;
1101 1066 }
1067 +.tr-root .tr-w-52{
1068 + width: 13rem;
1069 +}
1070 +.tr-root .tr-w-56{
1071 + width: 14rem;
1072 +}
1102 1073 .tr-root .tr-w-6{
1103 1074 width: 1.5rem;
1104 1075 }
1105 1076 .tr-root .tr-w-7{
@@ -1116,11 +1087,17 @@
1116 1087 }
1117 1088 .tr-root .tr-w-\[18px\]{
1118 1089 width: 18px;
1119 1090 }
1091 +.tr-root .tr-w-\[200px\]{
1092 + width: 200px;
1093 +}
1120 1094 .tr-root .tr-w-\[22px\]{
1121 1095 width: 22px;
1122 1096 }
1097 +.tr-root .tr-w-\[260px\]{
1098 + width: 260px;
1099 +}
1123 1100 .tr-root .tr-w-full{
1124 1101 width: 100%;
1125 1102 }
1126 1103 .tr-root .tr-w-max{
@@ -1143,14 +1120,23 @@
1143 1120 }
1144 1121 .tr-root .tr-min-w-\[16px\]{
1145 1122 min-width: 16px;
1146 1123 }
1124 +.tr-root .tr-min-w-\[170px\]{
1125 + min-width: 170px;
1126 +}
1147 1127 .tr-root .tr-min-w-\[18px\]{
1148 1128 min-width: 18px;
1149 1129 }
1130 +.tr-root .tr-min-w-\[200px\]{
1131 + min-width: 200px;
1132 +}
1150 1133 .tr-root .tr-min-w-\[20px\]{
1151 1134 min-width: 20px;
1152 1135 }
1136 +.tr-root .tr-min-w-\[260px\]{
1137 + min-width: 260px;
1138 +}
1153 1139 .tr-root .tr-max-w-2xl{
1154 1140 max-width: 42rem;
1155 1141 }
1156 1142 .tr-root .tr-max-w-4xl{
@@ -1164,8 +1150,11 @@
1164 1150 }
1165 1151 .tr-root .tr-max-w-\[480px\]{
1166 1152 max-width: 480px;
1167 1153 }
1154 +.tr-root .tr-max-w-full{
1155 + max-width: 100%;
1156 +}
1168 1157 .tr-root .tr-max-w-lg{
1169 1158 max-width: 32rem;
1170 1159 }
1171 1160 .tr-root .tr-max-w-md{
@@ -1232,9 +1221,8 @@
1232 1221 .tr-root .tr-animate-\[fadeIn_150ms_ease-out\]{
1233 1222 animation: fadeIn 150ms ease-out;
1234 1223 }
1235 1224 @keyframes tr-pulse{
1236 -
1237 1225 50%{
1238 1226 opacity: .5;
1239 1227 }
1240 1228 }
@@ -1241,13 +1229,11 @@
1241 1229 .tr-root .tr-animate-pulse{
1242 1230 animation: tr-pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
1243 1231 }
1244 1232 @keyframes tr-skeleton-pulse{
1245 -
1246 1233 0%, 100%{
1247 1234 opacity: 1;
1248 1235 }
1249 -
1250 1236 50%{
1251 1237 opacity: 0.4;
1252 1238 }
1253 1239 }
@@ -1254,9 +1240,8 @@
1254 1240 .tr-root .tr-animate-skeleton-pulse{
1255 1241 animation: tr-skeleton-pulse 1.5s ease-in-out infinite;
1256 1242 }
1257 1243 @keyframes tr-spin{
1258 -
1259 1244 to{
1260 1245 transform: rotate(360deg);
1261 1246 }
1262 1247 }
@@ -1392,14 +1377,43 @@
1392 1377 }
1393 1378 .tr-root .tr-gap-px{
1394 1379 gap: 1px;
1395 1380 }
1381 +.tr-root .tr-gap-x-10{
1382 + column-gap: 2.5rem;
1383 +}
1384 +.tr-root .tr-gap-x-2{
1385 + column-gap: 0.5rem;
1386 +}
1396 1387 .tr-root .tr-gap-x-5{
1397 1388 column-gap: 1.25rem;
1398 1389 }
1390 +.tr-root .tr-gap-x-6{
1391 + column-gap: 1.5rem;
1392 +}
1393 +.tr-root .tr-gap-x-8{
1394 + column-gap: 2rem;
1395 +}
1396 +.tr-root .tr-gap-y-1{
1397 + row-gap: 0.25rem;
1398 +}
1399 1399 .tr-root .tr-gap-y-2{
1400 1400 row-gap: 0.5rem;
1401 1401 }
1402 +.tr-root .tr-gap-y-2\.5{
1403 + row-gap: 0.625rem;
1404 +}
1405 +.tr-root .tr-gap-y-4{
1406 + row-gap: 1rem;
1407 +}
1408 +.tr-root .tr-gap-y-5{
1409 + row-gap: 1.25rem;
1410 +}
1411 +.tr-root :is(.tr-space-y-1 > :not([hidden]) ~ :not([hidden])){
1412 + --tw-space-y-reverse: 0;
1413 + margin-top: calc(0.25rem * calc(1 - var(--tw-space-y-reverse)));
1414 + margin-bottom: calc(0.25rem * var(--tw-space-y-reverse));
1415 +}
1402 1416 .tr-root :is(.tr-divide-y > :not([hidden]) ~ :not([hidden])){
1403 1417 --tw-divide-y-reverse: 0;
1404 1418 border-top-width: calc(1px * calc(1 - var(--tw-divide-y-reverse)));
1405 1419 border-bottom-width: calc(1px * var(--tw-divide-y-reverse));
@@ -1407,11 +1421,18 @@
1407 1421 .tr-root :is(.tr-divide-line-2 > :not([hidden]) ~ :not([hidden])){
1408 1422 --tw-divide-opacity: 1;
1409 1423 border-color: rgb(226 230 241 / var(--tw-divide-opacity, 1));
1410 1424 }
1425 +.tr-root :is(.tr-divide-secondary > :not([hidden]) ~ :not([hidden])){
1426 + --tw-divide-opacity: 1;
1427 + border-color: rgb(226 230 241 / var(--tw-divide-opacity, 1));
1428 +}
1411 1429 .tr-root .tr-self-start{
1412 1430 align-self: flex-start;
1413 1431 }
1432 +.tr-root .tr-overflow-auto{
1433 + overflow: auto;
1434 +}
1414 1435 .tr-root .tr-overflow-hidden{
1415 1436 overflow: hidden;
1416 1437 }
1417 1438 .tr-root .tr-overflow-x-auto{
@@ -1427,8 +1448,11 @@
1427 1448 }
1428 1449 .tr-root .tr-whitespace-nowrap{
1429 1450 white-space: nowrap;
1430 1451 }
1452 +.tr-root .tr-whitespace-pre{
1453 + white-space: pre;
1454 +}
1431 1455 .tr-root .tr-whitespace-pre-wrap{
1432 1456 white-space: pre-wrap;
1433 1457 }
1434 1458 .tr-root .tr-break-words{
@@ -1485,8 +1509,11 @@
1485 1509 }
1486 1510 .tr-root .tr-border-l-4{
1487 1511 border-left-width: 4px;
1488 1512 }
1513 +.tr-root .tr-border-r{
1514 + border-right-width: 1px;
1515 +}
1489 1516 .tr-root .tr-border-t{
1490 1517 border-top-width: 1px;
1491 1518 }
1492 1519 .tr-root .tr-border-solid{
@@ -1494,12 +1521,20 @@
1494 1521 }
1495 1522 .tr-root .tr-border-dashed{
1496 1523 border-style: dashed;
1497 1524 }
1525 +.tr-root .tr-border-amber-200{
1526 + --tw-border-opacity: 1;
1527 + border-color: rgb(253 230 138 / var(--tw-border-opacity, 1));
1528 +}
1498 1529 .tr-root .tr-border-blue-100{
1499 1530 --tw-border-opacity: 1;
1500 1531 border-color: rgb(219 234 254 / var(--tw-border-opacity, 1));
1501 1532 }
1533 +.tr-root .tr-border-blue-200{
1534 + --tw-border-opacity: 1;
1535 + border-color: rgb(191 219 254 / var(--tw-border-opacity, 1));
1536 +}
1502 1537 .tr-root .tr-border-brand{
1503 1538 --tw-border-opacity: 1;
1504 1539 border-color: rgb(68 81 255 / var(--tw-border-opacity, 1));
1505 1540 }
@@ -1505,11 +1540,8 @@
1505 1540 }
1506 1541 .tr-root .tr-border-brand\/30{
1507 1542 border-color: rgb(68 81 255 / 0.3);
1508 1543 }
1509 -.tr-root .tr-border-brand\/40{
1510 - border-color: rgb(68 81 255 / 0.4);
1511 -}
1512 1544 .tr-root .tr-border-danger{
1513 1545 --tw-border-opacity: 1;
1514 1546 border-color: rgb(146 28 19 / var(--tw-border-opacity, 1));
1515 1547 }
@@ -1515,8 +1547,12 @@
1515 1547 }
1516 1548 .tr-root .tr-border-danger\/30{
1517 1549 border-color: rgb(146 28 19 / 0.3);
1518 1550 }
1551 +.tr-root .tr-border-emerald-200{
1552 + --tw-border-opacity: 1;
1553 + border-color: rgb(167 243 208 / var(--tw-border-opacity, 1));
1554 +}
1519 1555 .tr-root .tr-border-line{
1520 1556 --tw-border-opacity: 1;
1521 1557 border-color: rgb(213 213 221 / var(--tw-border-opacity, 1));
1522 1558 }
@@ -1552,8 +1588,12 @@
1552 1588 }
1553 1589 .tr-root .tr-border-transparent{
1554 1590 border-color: transparent;
1555 1591 }
1592 +.tr-root .tr-border-violet-200{
1593 + --tw-border-opacity: 1;
1594 + border-color: rgb(221 214 254 / var(--tw-border-opacity, 1));
1595 +}
1556 1596 .tr-root .tr-border-warning{
1557 1597 --tw-border-opacity: 1;
1558 1598 border-color: rgb(181 71 8 / var(--tw-border-opacity, 1));
1559 1599 }
@@ -1585,8 +1625,12 @@
1585 1625 .tr-root .tr-bg-\[\#F2F3F5\]{
1586 1626 --tw-bg-opacity: 1;
1587 1627 background-color: rgb(242 243 245 / var(--tw-bg-opacity, 1));
1588 1628 }
1629 +.tr-root .tr-bg-\[\#F5F6FA\]{
1630 + --tw-bg-opacity: 1;
1631 + background-color: rgb(245 246 250 / var(--tw-bg-opacity, 1));
1632 +}
1589 1633 .tr-root .tr-bg-\[\#F6F7FB\]{
1590 1634 --tw-bg-opacity: 1;
1591 1635 background-color: rgb(246 247 251 / var(--tw-bg-opacity, 1));
1592 1636 }
@@ -1593,8 +1637,12 @@
1593 1637 .tr-root .tr-bg-\[\#F7F8FB\]{
1594 1638 --tw-bg-opacity: 1;
1595 1639 background-color: rgb(247 248 251 / var(--tw-bg-opacity, 1));
1596 1640 }
1641 +.tr-root .tr-bg-\[\#FAFBFC\]{
1642 + --tw-bg-opacity: 1;
1643 + background-color: rgb(250 251 252 / var(--tw-bg-opacity, 1));
1644 +}
1597 1645 .tr-root .tr-bg-\[\#ecfdf3\]{
1598 1646 --tw-bg-opacity: 1;
1599 1647 background-color: rgb(236 253 243 / var(--tw-bg-opacity, 1));
1600 1648 }
@@ -1638,17 +1686,14 @@
1638 1686 .tr-root .tr-bg-brand-bg{
1639 1687 --tw-bg-opacity: 1;
1640 1688 background-color: rgb(238 240 255 / var(--tw-bg-opacity, 1));
1641 1689 }
1690 +.tr-root .tr-bg-brand-bg\/30{
1691 + background-color: rgb(238 240 255 / 0.3);
1692 +}
1642 1693 .tr-root .tr-bg-brand-bg\/40{
1643 1694 background-color: rgb(238 240 255 / 0.4);
1644 1695 }
1645 -.tr-root .tr-bg-brand\/15{
1646 - background-color: rgb(68 81 255 / 0.15);
1647 -}
1648 -.tr-root .tr-bg-brand\/5{
1649 - background-color: rgb(68 81 255 / 0.05);
1650 -}
1651 1696 .tr-root .tr-bg-cyan-50{
1652 1697 --tw-bg-opacity: 1;
1653 1698 background-color: rgb(236 254 255 / var(--tw-bg-opacity, 1));
1654 1699 }
@@ -1663,8 +1708,12 @@
1663 1708 .tr-root .tr-bg-emerald-50{
1664 1709 --tw-bg-opacity: 1;
1665 1710 background-color: rgb(236 253 245 / var(--tw-bg-opacity, 1));
1666 1711 }
1712 +.tr-root .tr-bg-gray-50{
1713 + --tw-bg-opacity: 1;
1714 + background-color: rgb(249 250 251 / var(--tw-bg-opacity, 1));
1715 +}
1667 1716 .tr-root .tr-bg-green-100{
1668 1717 --tw-bg-opacity: 1;
1669 1718 background-color: rgb(220 252 231 / var(--tw-bg-opacity, 1));
1670 1719 }
@@ -1678,8 +1727,12 @@
1678 1727 }
1679 1728 .tr-root .tr-bg-ink-2\/40{
1680 1729 background-color: rgb(83 83 83 / 0.4);
1681 1730 }
1731 +.tr-root .tr-bg-line{
1732 + --tw-bg-opacity: 1;
1733 + background-color: rgb(213 213 221 / var(--tw-bg-opacity, 1));
1734 +}
1682 1735 .tr-root .tr-bg-line-2{
1683 1736 --tw-bg-opacity: 1;
1684 1737 background-color: rgb(226 230 241 / var(--tw-bg-opacity, 1));
1685 1738 }
@@ -1694,8 +1747,12 @@
1694 1747 .tr-root .tr-bg-red-100{
1695 1748 --tw-bg-opacity: 1;
1696 1749 background-color: rgb(254 226 226 / var(--tw-bg-opacity, 1));
1697 1750 }
1751 +.tr-root .tr-bg-slate-50{
1752 + --tw-bg-opacity: 1;
1753 + background-color: rgb(248 250 252 / var(--tw-bg-opacity, 1));
1754 +}
1698 1755 .tr-root .tr-bg-success{
1699 1756 --tw-bg-opacity: 1;
1700 1757 background-color: rgb(2 122 72 / var(--tw-bg-opacity, 1));
1701 1758 }
@@ -1708,8 +1765,12 @@
1708 1765 }
1709 1766 .tr-root .tr-bg-transparent{
1710 1767 background-color: transparent;
1711 1768 }
1769 +.tr-root .tr-bg-violet-50{
1770 + --tw-bg-opacity: 1;
1771 + background-color: rgb(245 243 255 / var(--tw-bg-opacity, 1));
1772 +}
1712 1773 .tr-root .tr-bg-warning{
1713 1774 --tw-bg-opacity: 1;
1714 1775 background-color: rgb(181 71 8 / var(--tw-bg-opacity, 1));
1715 1776 }
@@ -1732,8 +1793,11 @@
1732 1793 }
1733 1794 .tr-root .tr-bg-white\/5{
1734 1795 background-color: rgb(255 255 255 / 0.05);
1735 1796 }
1797 +.tr-root .tr-bg-white\/90{
1798 + background-color: rgb(255 255 255 / 0.9);
1799 +}
1736 1800 .tr-root .tr-bg-yellow-100{
1737 1801 --tw-bg-opacity: 1;
1738 1802 background-color: rgb(254 249 195 / var(--tw-bg-opacity, 1));
1739 1803 }
@@ -1743,8 +1807,11 @@
1743 1807 }
1744 1808 .tr-root .tr-bg-\[linear-gradient\(90deg\,\#4c4cff_58\%\,\#3535b0_118\%\)\]{
1745 1809 background-image: linear-gradient(90deg,#4c4cff 58%,#3535b0 118%);
1746 1810 }
1811 +.tr-root .tr-object-contain{
1812 + object-fit: contain;
1813 +}
1747 1814 .tr-root .tr-object-cover{
1748 1815 object-fit: cover;
1749 1816 }
1750 1817 .tr-root .tr-p-0{
@@ -1864,8 +1931,12 @@
1864 1931 .tr-root .tr-py-6{
1865 1932 padding-top: 1.5rem;
1866 1933 padding-bottom: 1.5rem;
1867 1934 }
1935 +.tr-root .tr-py-7{
1936 + padding-top: 1.75rem;
1937 + padding-bottom: 1.75rem;
1938 +}
1868 1939 .tr-root .tr-py-8{
1869 1940 padding-top: 2rem;
1870 1941 padding-bottom: 2rem;
1871 1942 }
@@ -1872,8 +1943,14 @@
1872 1943 .tr-root .tr-py-px{
1873 1944 padding-top: 1px;
1874 1945 padding-bottom: 1px;
1875 1946 }
1947 +.tr-root .tr-pb-0{
1948 + padding-bottom: 0px;
1949 +}
1950 +.tr-root .tr-pb-2{
1951 + padding-bottom: 0.5rem;
1952 +}
1876 1953 .tr-root .tr-pb-3{
1877 1954 padding-bottom: 0.75rem;
1878 1955 }
1879 1956 .tr-root .tr-pb-4{
@@ -1893,8 +1970,11 @@
1893 1970 }
1894 1971 .tr-root .tr-pl-1\.5{
1895 1972 padding-left: 0.375rem;
1896 1973 }
1974 +.tr-root .tr-pl-2{
1975 + padding-left: 0.5rem;
1976 +}
1897 1977 .tr-root .tr-pl-3{
1898 1978 padding-left: 0.75rem;
1899 1979 }
1900 1980 .tr-root .tr-pl-4{
@@ -1914,11 +1994,17 @@
1914 1994 }
1915 1995 .tr-root .tr-pr-1\.5{
1916 1996 padding-right: 0.375rem;
1917 1997 }
1998 +.tr-root .tr-pr-10{
1999 + padding-right: 2.5rem;
2000 +}
1918 2001 .tr-root .tr-pr-14{
1919 2002 padding-right: 3.5rem;
1920 2003 }
2004 +.tr-root .tr-pr-16{
2005 + padding-right: 4rem;
2006 +}
1921 2007 .tr-root .tr-pr-2{
1922 2008 padding-right: 0.5rem;
1923 2009 }
1924 2010 .tr-root .tr-pr-3{
@@ -1986,8 +2072,14 @@
1986 2072 }
1987 2073 .tr-root .tr-text-\[11px\]{
1988 2074 font-size: 11px;
1989 2075 }
2076 +.tr-root .tr-text-\[13px\]{
2077 + font-size: 13px;
2078 +}
2079 +.tr-root .tr-text-\[18px\]{
2080 + font-size: 18px;
2081 +}
1990 2082 .tr-root .tr-text-\[9px\]{
1991 2083 font-size: 9px;
1992 2084 }
1993 2085 .tr-root .tr-text-base{
@@ -2061,8 +2153,12 @@
2061 2153 }
2062 2154 .tr-root .tr-tracking-wide{
2063 2155 letter-spacing: 0.025em;
2064 2156 }
2157 +.tr-root .tr-text-\[\#006621\]{
2158 + --tw-text-opacity: 1;
2159 + color: rgb(0 102 33 / var(--tw-text-opacity, 1));
2160 +}
2065 2161 .tr-root .tr-text-\[\#1a0dab\]{
2066 2162 --tw-text-opacity: 1;
2067 2163 color: rgb(26 13 171 / var(--tw-text-opacity, 1));
2068 2164 }
@@ -2110,8 +2206,12 @@
2110 2206 .tr-root .tr-text-emerald-600{
2111 2207 --tw-text-opacity: 1;
2112 2208 color: rgb(5 150 105 / var(--tw-text-opacity, 1));
2113 2209 }
2210 +.tr-root .tr-text-emerald-700{
2211 + --tw-text-opacity: 1;
2212 + color: rgb(4 120 87 / var(--tw-text-opacity, 1));
2213 +}
2114 2214 .tr-root .tr-text-green-700{
2115 2215 --tw-text-opacity: 1;
2116 2216 color: rgb(21 128 61 / var(--tw-text-opacity, 1));
2117 2217 }
@@ -2126,8 +2226,12 @@
2126 2226 .tr-root .tr-text-primary{
2127 2227 --tw-text-opacity: 1;
2128 2228 color: rgb(29 29 29 / var(--tw-text-opacity, 1));
2129 2229 }
2230 +.tr-root .tr-text-red-600{
2231 + --tw-text-opacity: 1;
2232 + color: rgb(220 38 38 / var(--tw-text-opacity, 1));
2233 +}
2130 2234 .tr-root .tr-text-red-700{
2131 2235 --tw-text-opacity: 1;
2132 2236 color: rgb(185 28 28 / var(--tw-text-opacity, 1));
2133 2237 }
@@ -2134,8 +2238,12 @@
2134 2238 .tr-root .tr-text-secondary{
2135 2239 --tw-text-opacity: 1;
2136 2240 color: rgb(83 83 83 / var(--tw-text-opacity, 1));
2137 2241 }
2242 +.tr-root .tr-text-slate-300{
2243 + --tw-text-opacity: 1;
2244 + color: rgb(203 213 225 / var(--tw-text-opacity, 1));
2245 +}
2138 2246 .tr-root .tr-text-slate-400{
2139 2247 --tw-text-opacity: 1;
2140 2248 color: rgb(148 163 184 / var(--tw-text-opacity, 1));
2141 2249 }
@@ -2172,8 +2280,12 @@
2172 2280 .tr-root .tr-text-tertiary{
2173 2281 --tw-text-opacity: 1;
2174 2282 color: rgb(90 92 94 / var(--tw-text-opacity, 1));
2175 2283 }
2284 +.tr-root .tr-text-violet-700{
2285 + --tw-text-opacity: 1;
2286 + color: rgb(109 40 217 / var(--tw-text-opacity, 1));
2287 +}
2176 2288 .tr-root .tr-text-warning{
2177 2289 --tw-text-opacity: 1;
2178 2290 color: rgb(181 71 8 / var(--tw-text-opacity, 1));
2179 2291 }
@@ -2257,8 +2369,12 @@
2257 2369 --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
2258 2370 --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
2259 2371 box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
2260 2372 }
2373 +.tr-root .tr-ring-brand-500{
2374 + --tw-ring-opacity: 1;
2375 + --tw-ring-color: rgb(68 81 255 / var(--tw-ring-opacity, 1));
2376 +}
2261 2377 .tr-root .tr-ring-white{
2262 2378 --tw-ring-opacity: 1;
2263 2379 --tw-ring-color: rgb(255 255 255 / var(--tw-ring-opacity, 1));
2264 2380 }
@@ -2318,13 +2434,15 @@
2318 2434 .tr-root .tr-ease-out{
2319 2435 transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
2320 2436 }
2321 2437 @media (prefers-reduced-motion: reduce) {
2438 +
2322 2439 .tr-root .tr-animate-skeleton-pulse,
2323 2440 .tr-root .tr-animate-spin,
2324 2441 .tr-root .tr-animate-score-spin {
2325 2442 animation: none !important;
2326 2443 }
2444 +
2327 2445 .tr-root .tr-transition,
2328 2446 .tr-root .tr-transition-colors,
2329 2447 .tr-root .tr-transition-transform,
2330 2448 .tr-root .tr-transition-opacity,
@@ -2330,13 +2448,15 @@
2330 2448 .tr-root .tr-transition-opacity,
2331 2449 .tr-root .tr-transition-all {
2332 2450 transition: none !important;
2333 2451 }
2452 +
2334 2453 .tr-root .tr-animate-skeleton-pulse,
2335 2454 .tr-root .tr-animate-spin,
2336 2455 .tr-root .tr-animate-score-spin {
2337 2456 animation: none !important;
2338 2457 }
2458 +
2339 2459 .tr-root .tr-transition,
2340 2460 .tr-root .tr-transition-colors,
2341 2461 .tr-root .tr-transition-transform,
2342 2462 .tr-root .tr-transition-opacity,
@@ -2342,13 +2462,15 @@
2342 2462 .tr-root .tr-transition-opacity,
2343 2463 .tr-root .tr-transition-all {
2344 2464 transition: none !important;
2345 2465 }
2466 +
2346 2467 .tr-root .tr-animate-skeleton-pulse,
2347 2468 .tr-root .tr-animate-spin,
2348 2469 .tr-root .tr-animate-score-spin {
2349 2470 animation: none !important;
2350 2471 }
2472 +
2351 2473 .tr-root .tr-transition,
2352 2474 .tr-root .tr-transition-colors,
2353 2475 .tr-root .tr-transition-transform,
2354 2476 .tr-root .tr-transition-opacity,
@@ -2354,13 +2476,15 @@
2354 2476 .tr-root .tr-transition-opacity,
2355 2477 .tr-root .tr-transition-all {
2356 2478 transition: none !important;
2357 2479 }
2480 +
2358 2481 .tr-root .tr-animate-skeleton-pulse,
2359 2482 .tr-root .tr-animate-spin,
2360 2483 .tr-root .tr-animate-score-spin {
2361 2484 animation: none !important;
2362 2485 }
2486 +
2363 2487 .tr-root .tr-transition,
2364 2488 .tr-root .tr-transition-colors,
2365 2489 .tr-root .tr-transition-transform,
2366 2490 .tr-root .tr-transition-opacity,
@@ -2366,13 +2490,15 @@
2366 2490 .tr-root .tr-transition-opacity,
2367 2491 .tr-root .tr-transition-all {
2368 2492 transition: none !important;
2369 2493 }
2494 +
2370 2495 .tr-root .tr-animate-skeleton-pulse,
2371 2496 .tr-root .tr-animate-spin,
2372 2497 .tr-root .tr-animate-score-spin {
2373 2498 animation: none !important;
2374 2499 }
2500 +
2375 2501 .tr-root .tr-transition,
2376 2502 .tr-root .tr-transition-colors,
2377 2503 .tr-root .tr-transition-transform,
2378 2504 .tr-root .tr-transition-opacity,
@@ -2378,13 +2504,15 @@
2378 2504 .tr-root .tr-transition-opacity,
2379 2505 .tr-root .tr-transition-all {
2380 2506 transition: none !important;
2381 2507 }
2508 +
2382 2509 .tr-root .tr-animate-skeleton-pulse,
2383 2510 .tr-root .tr-animate-spin,
2384 2511 .tr-root .tr-animate-score-spin {
2385 2512 animation: none !important;
2386 2513 }
2514 +
2387 2515 .tr-root .tr-transition,
2388 2516 .tr-root .tr-transition-colors,
2389 2517 .tr-root .tr-transition-transform,
2390 2518 .tr-root .tr-transition-opacity,
@@ -2393,27 +2521,33 @@
2393 2521 }
2394 2522 }
2395 2523
2396 2524 /*
2397 - * Fix: Tailwind Preflight (@tailwind base) emits UNSCOPED global resets —
2398 - * `img, svg, video, canvas { display: block }` and `img { max-width: 100% }` —
2399 - * that leak past our React root into WordPress admin chrome on any page where
2400 - * this bundle loads (ThinkRank pages, the post-editor metabox, etc.).
2525 + * Tailwind Preflight (@tailwind base) emits UNSCOPED global resets — e.g.
2526 + * `img, svg, video, canvas { display: block }` and `*, ::before, ::after`
2527 + * box-sizing/border. Left as-is they leak past our React root into WordPress
2528 + * admin chrome and page builders (Divi/Elementor/Oxygen), breaking host UI
2529 + * (e.g. Divi's Visual Builder breadcrumb stacked vertically — issue #275).
2401 2530 *
2402 - * WordPress centers image-based admin-menu icons with `text-align: center` on
2403 - * `#adminmenu div.wp-menu-image` and an inline <img>. Preflight's `display:block`
2404 - * defeats that centering, shoving other plugins' menu icons flush-left (looks
2405 - * "broken"). Restore native rendering for admin-menu icons. Kept unlayered so it
2406 - * always beats Preflight's `@layer base` rules; only display/alignment is set so
2407 - * WP's own padding/opacity on the icon are preserved.
2531 + * The scoping now happens at BUILD TIME in `build/postcss-scope-preflight.js`,
2532 + * which rewrites every Preflight selector to live under `.tr-root` (where the
2533 + * `tr-*` utilities already live). That removes the leak at the source, so the
2534 + * old per-symptom overrides here (e.g. restoring `#adminmenu` icon centering)
2535 + * are no longer needed.
2536 + *
2537 + * Do NOT add unscoped bare element selectors to this file — they would leak the
2538 + * same way and defeat the build-time scoping.
2408 2539 */
2409 -#adminmenu .wp-menu-image img,
2410 -#adminmenu .wp-menu-image svg {
2411 - display: inline-block;
2412 - vertical-align: middle;
2540 +
2541 +/* Ensure Tailwind's animate-* skeleton pulse respects reduced-motion */
2542 +
2543 +.tr-root :is(.marker\:tr-hidden *)::marker{
2544 + display: none;
2413 2545 }
2414 2546
2415 -/* Ensure Tailwind's animate-* skeleton pulse respects reduced-motion */
2547 +.tr-root .marker\:tr-hidden::marker{
2548 + display: none;
2549 +}
2416 2550
2417 2551 .tr-root .placeholder\:tr-text-tertiary::placeholder{
2418 2552 --tw-text-opacity: 1;
2419 2553 color: rgb(90 92 94 / var(--tw-text-opacity, 1));
@@ -2512,8 +2646,13 @@
2512 2646 --tw-border-opacity: 1;
2513 2647 border-color: rgb(169 174 192 / var(--tw-border-opacity, 1));
2514 2648 }
2515 2649
2650 +.tr-root .hover\:tr-border-brand:hover{
2651 + --tw-border-opacity: 1;
2652 + border-color: rgb(68 81 255 / var(--tw-border-opacity, 1));
2653 +}
2654 +
2516 2655 .tr-root .hover\:tr-border-danger:hover{
2517 2656 --tw-border-opacity: 1;
2518 2657 border-color: rgb(146 28 19 / var(--tw-border-opacity, 1));
2519 2658 }
@@ -2532,8 +2671,13 @@
2532 2671 --tw-bg-opacity: 1;
2533 2672 background-color: rgb(247 248 251 / var(--tw-bg-opacity, 1));
2534 2673 }
2535 2674
2675 +.tr-root .hover\:tr-bg-\[\#FAFBFC\]:hover{
2676 + --tw-bg-opacity: 1;
2677 + background-color: rgb(250 251 252 / var(--tw-bg-opacity, 1));
2678 +}
2679 +
2536 2680 .tr-root .hover\:tr-bg-brand:hover{
2537 2681 --tw-bg-opacity: 1;
2538 2682 background-color: rgb(68 81 255 / var(--tw-bg-opacity, 1));
2539 2683 }
@@ -2581,8 +2725,13 @@
2581 2725 --tw-text-opacity: 1;
2582 2726 color: rgb(68 81 255 / var(--tw-text-opacity, 1));
2583 2727 }
2584 2728
2729 +.tr-root .hover\:tr-text-danger:hover{
2730 + --tw-text-opacity: 1;
2731 + color: rgb(146 28 19 / var(--tw-text-opacity, 1));
2732 +}
2733 +
2585 2734 .tr-root .hover\:tr-text-primary:hover{
2586 2735 --tw-text-opacity: 1;
2587 2736 color: rgb(29 29 29 / var(--tw-text-opacity, 1));
2588 2737 }
@@ -2710,30 +2859,37 @@
2710 2859 .tr-root .disabled\:tr-opacity-50:disabled{
2711 2860 opacity: 0.5;
2712 2861 }
2713 2862
2863 +.tr-root .disabled\:tr-opacity-60:disabled{
2864 + opacity: 0.6;
2865 +}
2866 +
2714 2867 .tr-root .disabled\:tr-opacity-70:disabled{
2715 2868 opacity: 0.7;
2716 2869 }
2717 2870
2871 +.tr-root :is(.tr-group[open] .group-open\:tr-rotate-90){
2872 + --tw-rotate: 90deg;
2873 + transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
2874 +}
2875 +
2718 2876 @media (min-width: 640px){
2719 -
2720 2877 .tr-root .sm\:tr-block{
2721 2878 display: block;
2722 2879 }
2723 -
2880 + .tr-root .sm\:tr-w-80{
2881 + width: 20rem;
2882 + }
2724 2883 .tr-root .sm\:tr-flex-1{
2725 2884 flex: 1 1 0%;
2726 2885 }
2727 -
2728 2886 .tr-root .sm\:tr-grid-cols-2{
2729 2887 grid-template-columns: repeat(2, minmax(0, 1fr));
2730 2888 }
2731 -
2732 2889 .tr-root .sm\:tr-grid-cols-4{
2733 2890 grid-template-columns: repeat(4, minmax(0, 1fr));
2734 2891 }
2735 -
2736 2892 .tr-root .sm\:tr-flex-row{
2737 2893 flex-direction: row;
2738 2894 }
2739 2895 }
@@ -2738,103 +2894,82 @@
2738 2894 }
2739 2895 }
2740 2896
2741 2897 @media (min-width: 768px){
2742 -
2743 2898 .tr-root .md\:tr-sticky{
2744 2899 position: sticky;
2745 2900 }
2746 -
2747 2901 .tr-root .md\:tr-top-0{
2748 2902 top: 0px;
2749 2903 }
2750 -
2751 2904 .tr-root .md\:tr-top-4{
2752 2905 top: 1rem;
2753 2906 }
2754 -
2755 2907 .tr-root .md\:tr-block{
2756 2908 display: block;
2757 2909 }
2758 -
2759 2910 .tr-root .md\:tr-inline-flex{
2760 2911 display: inline-flex;
2761 2912 }
2762 -
2763 2913 .tr-root .md\:tr-w-44{
2764 2914 width: 11rem;
2765 2915 }
2766 -
2767 2916 .tr-root .md\:tr-w-52{
2768 2917 width: 13rem;
2769 2918 }
2770 -
2771 2919 .tr-root .md\:tr-w-56{
2772 2920 width: 14rem;
2773 2921 }
2774 -
2775 2922 .tr-root .md\:tr-w-full{
2776 2923 width: 100%;
2777 2924 }
2778 -
2779 2925 .tr-root .md\:tr-shrink-0{
2780 2926 flex-shrink: 0;
2781 2927 }
2782 -
2783 2928 .tr-root .md\:tr-grid-cols-2{
2784 2929 grid-template-columns: repeat(2, minmax(0, 1fr));
2785 2930 }
2786 -
2787 2931 .tr-root .md\:tr-grid-cols-3{
2788 2932 grid-template-columns: repeat(3, minmax(0, 1fr));
2789 2933 }
2790 -
2934 + .tr-root .md\:tr-grid-cols-4{
2935 + grid-template-columns: repeat(4, minmax(0, 1fr));
2936 + }
2791 2937 .tr-root .md\:tr-flex-row{
2792 2938 flex-direction: row;
2793 2939 }
2794 -
2795 2940 .tr-root .md\:tr-flex-col{
2796 2941 flex-direction: column;
2797 2942 }
2798 -
2799 2943 .tr-root .md\:tr-items-stretch{
2800 2944 align-items: stretch;
2801 2945 }
2802 -
2803 2946 .tr-root .md\:tr-self-stretch{
2804 2947 align-self: stretch;
2805 2948 }
2806 -
2807 2949 .tr-root .md\:tr-overflow-visible{
2808 2950 overflow: visible;
2809 2951 }
2810 -
2811 2952 .tr-root .md\:tr-overflow-x-visible{
2812 2953 overflow-x: visible;
2813 2954 }
2814 -
2815 2955 .tr-root .md\:tr-border-b-0{
2816 2956 border-bottom-width: 0px;
2817 2957 }
2818 -
2819 2958 .tr-root .md\:tr-border-r{
2820 2959 border-right-width: 1px;
2821 2960 }
2822 -
2823 2961 .tr-root .md\:tr-p-6{
2824 2962 padding: 1.5rem;
2825 2963 }
2826 -
2827 2964 .tr-root .md\:tr-px-3{
2828 2965 padding-left: 0.75rem;
2829 2966 padding-right: 0.75rem;
2830 2967 }
2831 -
2832 2968 .tr-root .md\:tr-px-8{
2833 2969 padding-left: 2rem;
2834 2970 padding-right: 2rem;
2835 2971 }
2836 -
2837 2972 .tr-root .md\:tr-text-sm{
2838 2973 font-size: 0.875rem;
2839 2974 line-height: 1.5;
2840 2975 }
@@ -2840,69 +2975,53 @@
2840 2975 }
2841 2976 }
2842 2977
2843 2978 @media (min-width: 1024px){
2844 -
2845 2979 .tr-root .lg\:tr-absolute{
2846 2980 position: absolute;
2847 2981 }
2848 -
2849 2982 .tr-root .lg\:tr-inset-0{
2850 2983 inset: 0px;
2851 2984 }
2852 -
2853 2985 .tr-root .lg\:tr-col-span-2{
2854 2986 grid-column: span 2 / span 2;
2855 2987 }
2856 -
2857 2988 .tr-root .lg\:tr-col-span-3{
2858 2989 grid-column: span 3 / span 3;
2859 2990 }
2860 -
2861 2991 .tr-root .lg\:tr-flex{
2862 2992 display: flex;
2863 2993 }
2864 -
2865 2994 .tr-root .lg\:tr-inline-flex{
2866 2995 display: inline-flex;
2867 2996 }
2868 -
2869 2997 .tr-root .lg\:tr-w-56{
2870 2998 width: 14rem;
2871 2999 }
2872 -
2873 3000 .tr-root .lg\:tr-grid-cols-2{
2874 3001 grid-template-columns: repeat(2, minmax(0, 1fr));
2875 3002 }
2876 -
2877 3003 .tr-root .lg\:tr-grid-cols-3{
2878 3004 grid-template-columns: repeat(3, minmax(0, 1fr));
2879 3005 }
2880 -
2881 3006 .tr-root .lg\:tr-grid-cols-4{
2882 3007 grid-template-columns: repeat(4, minmax(0, 1fr));
2883 3008 }
2884 -
2885 3009 .tr-root .lg\:tr-grid-cols-5{
2886 3010 grid-template-columns: repeat(5, minmax(0, 1fr));
2887 3011 }
2888 -
2889 3012 .tr-root .lg\:tr-grid-cols-\[minmax\(0\2c 1fr\)_minmax\(0\2c 2fr\)\]{
2890 3013 grid-template-columns: minmax(0,1fr) minmax(0,2fr);
2891 3014 }
2892 -
2893 3015 .tr-root .lg\:tr-gap-6{
2894 3016 gap: 1.5rem;
2895 3017 }
2896 -
2897 3018 .tr-root .lg\:tr-gap-8{
2898 3019 gap: 2rem;
2899 3020 }
2900 -
2901 3021 .tr-root .lg\:tr-p-8{
2902 3022 padding: 2rem;
2903 3023 }
2904 -
2905 3024 .tr-root .lg\:tr-pt-2\.5{
2906 3025 padding-top: 0.625rem;
2907 3026 }
2908 3027 }
@@ -2907,19 +3026,37 @@
2907 3026 }
2908 3027 }
2909 3028
2910 3029 @media (min-width: 1280px){
2911 -
2912 3030 .tr-root .xl\:tr-col-span-2{
2913 3031 grid-column: span 2 / span 2;
2914 3032 }
2915 -
2916 3033 .tr-root .xl\:tr-block{
2917 3034 display: block;
2918 3035 }
2919 -
2920 3036 .tr-root .xl\:tr-grid-cols-3{
2921 3037 grid-template-columns: repeat(3, minmax(0, 1fr));
2922 3038 }
2923 3039 }
2924 3040
2925 -.thinkrank-metabox-drawer{z-index:2147483000 !important}body>.tr-root>[aria-hidden=true]{z-index:2147482999 !important}
3041 +.tr-root :is(.\[\&_p\:last-child\]\:tr-mb-0 p:last-child){
3042 + margin-bottom: 0px;
3043 +}
3044 +
3045 +.tr-root :is(.\[\&_p\]\:tr-mb-3 p){
3046 + margin-bottom: 0.75rem;
3047 +}
3048 +
3049 +.tr-root :is(.\[\&_p\]\:tr-mt-0 p){
3050 + margin-top: 0px;
3051 +}
3052 +
3053 +.tr-root :is(.\[\&_strong\]\:tr-font-semibold strong){
3054 + font-weight: 600;
3055 +}
3056 +
3057 +.tr-root :is(.\[\&_strong\]\:tr-text-primary strong){
3058 + --tw-text-opacity: 1;
3059 + color: rgb(29 29 29 / var(--tw-text-opacity, 1));
3060 +}
3061 +
3062 +.thinkrank-metabox-drawer{z-index:2147483000 !important}body>.tr-root>[aria-hidden=true]{z-index:2147482999 !important}.tr-root *,.tr-root *::before,.tr-root *::after{border-style:solid}