Files
roi-theme/wp-content/themes/apus-theme/assets/css/theme.css
FrankZamora ce4f31b4b1 Fix share buttons: Excluir btn-outline de estilos theme.css
PROBLEMA:
- Los botones de compartir se mostraban con fondo azul sólido en lugar de outline
- theme.css aplicaba background-color: var(--primary-color) a TODOS los .btn

SOLUCIÓN:
- Modificar selector en theme.css para excluir botones con "outline" en clase
- Usar :not([class*="outline"]) para preservar estilos Bootstrap outline

Fixes #124

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-07 11:45:06 -06:00

710 lines
12 KiB
CSS

/**
* Theme Styles
*
* Main theme styles, colors, and custom components
* @package Apus_Theme
* @since 1.0.0
*/
:root {
/* Primary Colors */
--primary-color: #0d6efd;
--secondary-color: #6c757d;
--success-color: #198754;
--danger-color: #dc3545;
--warning-color: #ffc107;
--info-color: #0dcaf0;
--light-color: #f8f9fa;
--dark-color: #212529;
/* Brand Colors */
--brand-primary: #0d6efd;
--brand-secondary: #6c757d;
/* Neutral Colors */
--white: #ffffff;
--black: #000000;
--gray-100: #f8f9fa;
--gray-200: #e9ecef;
--gray-300: #dee2e6;
--gray-400: #ced4da;
--gray-500: #adb5bd;
--gray-600: #6c757d;
--gray-700: #495057;
--gray-800: #343a40;
--gray-900: #212529;
/* Spacing */
--spacing-xs: 0.25rem;
--spacing-sm: 0.5rem;
--spacing-md: 1rem;
--spacing-lg: 1.5rem;
--spacing-xl: 2rem;
--spacing-2xl: 3rem;
--spacing-3xl: 4rem;
/* Font family */
--font-family-base: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
--font-family-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
--font-family-serif: Georgia, "Times New Roman", serif;
/* Font sizes */
--font-size-base: 16px;
--font-size-sm: 14px;
--font-size-lg: 18px;
--font-size-xl: 20px;
--font-size-2xl: 24px;
--font-size-3xl: 32px;
/* Line height */
--line-height-base: 1.5;
--line-height-sm: 1.25;
--line-height-lg: 1.75;
/* Border radius */
--border-radius: 0.25rem;
--border-radius-sm: 0.125rem;
--border-radius-lg: 0.5rem;
/* Box shadow */
--box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
--box-shadow-sm: 0 0.0625rem 0.125rem rgba(0, 0, 0, 0.075);
--box-shadow-lg: 0 1rem 3rem rgba(0, 0, 0, 0.175);
/* Transition */
--transition-base: all 0.3s ease-in-out;
--transition-fade: opacity 0.15s linear;
--transition-collapse: height 0.35s ease;
/* Z-index */
--z-dropdown: 1000;
--z-sticky: 1020;
--z-fixed: 1030;
--z-modal-backdrop: 1040;
--z-modal: 1050;
--z-popover: 1060;
--z-tooltip: 1070;
}
/* Global styles */
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}
*::before,
*::after {
box-sizing: border-box;
}
html {
font-size: 16px;
scroll-behavior: smooth;
}
body {
font-family: var(--font-family-base);
font-size: var(--font-size-base);
line-height: var(--line-height-base);
color: var(--gray-900);
background-color: var(--white);
transition: var(--transition-base);
}
/* Typography */
h1,
h2,
h3,
h4,
h5,
h6 {
margin-bottom: var(--spacing-md);
font-weight: 700;
line-height: 1.2;
color: var(--gray-900);
}
h1 {
font-size: var(--font-size-3xl);
}
h2 {
font-size: var(--font-size-2xl);
}
h3 {
font-size: var(--font-size-xl);
}
h4 {
font-size: var(--font-size-lg);
}
h5 {
font-size: var(--font-size-base);
}
h6 {
font-size: var(--font-size-sm);
}
p {
margin-bottom: var(--spacing-md);
}
a {
color: var(--primary-color);
text-decoration: none;
transition: var(--transition-base);
}
a:hover {
color: #0b5ed7;
text-decoration: underline;
}
a:focus {
outline: 2px solid var(--primary-color);
outline-offset: 2px;
}
/* Lists */
ul,
ol {
margin-bottom: var(--spacing-md);
padding-left: 2rem;
}
ul ul,
ul ol,
ol ul,
ol ol {
margin-bottom: 0;
}
li {
margin-bottom: 0.25rem;
}
/* Code */
code,
pre {
font-family: var(--font-family-monospace);
color: var(--gray-900);
background-color: var(--gray-100);
border-radius: var(--border-radius-lg);
}
code {
padding: 0.25rem 0.5rem;
font-size: 0.875em;
}
pre {
padding: var(--spacing-md);
margin-bottom: var(--spacing-md);
overflow-x: auto;
}
pre code {
padding: 0;
font-size: inherit;
background-color: transparent;
}
/* Blockquote */
blockquote {
margin-bottom: var(--spacing-md);
padding-left: var(--spacing-md);
border-left: 4px solid var(--gray-300);
color: var(--gray-700);
}
blockquote p:last-child {
margin-bottom: 0;
}
/* Images */
img {
max-width: 100%;
height: auto;
display: block;
}
figure {
margin-bottom: var(--spacing-md);
}
figcaption {
font-size: var(--font-size-sm);
color: var(--gray-600);
margin-top: 0.5rem;
}
/* Tables */
table {
width: 100%;
margin-bottom: var(--spacing-md);
border-collapse: collapse;
background-color: transparent;
}
table th,
table td {
padding: 0.75rem;
border-bottom: 1px solid var(--gray-300);
text-align: left;
vertical-align: top;
}
table thead th {
background-color: var(--gray-100);
font-weight: 700;
border-bottom: 2px solid var(--gray-300);
}
table tbody tr:hover {
background-color: var(--gray-50);
}
table tbody tr:nth-child(even) {
background-color: var(--gray-50);
}
/* Forms */
.form-group {
margin-bottom: var(--spacing-md);
}
label {
display: inline-block;
margin-bottom: 0.5rem;
font-weight: 500;
}
input,
textarea,
select,
.form-control {
width: 100%;
padding: 0.5rem 0.75rem;
font-family: inherit;
font-size: inherit;
line-height: var(--line-height-base);
color: var(--gray-900);
background-color: var(--white);
border: 1px solid var(--gray-300);
border-radius: var(--border-radius-lg);
transition: var(--transition-base);
}
input:focus,
textarea:focus,
select:focus,
.form-control:focus {
outline: none;
border-color: var(--primary-color);
box-shadow: 0 0 0 0.2rem rgba(13, 110, 253, 0.25);
}
textarea {
min-height: 120px;
resize: vertical;
}
/* Buttons */
button:not([class*="outline"]),
.btn:not([class*="outline"]):not(.btn-close),
input[type="button"]:not([class*="outline"]),
input[type="submit"]:not([class*="outline"]),
input[type="reset"]:not([class*="outline"]) {
display: inline-block;
padding: 0.5rem 1rem;
font-family: inherit;
font-size: var(--font-size-base);
font-weight: 500;
line-height: var(--line-height-base);
text-align: center;
white-space: nowrap;
vertical-align: middle;
cursor: pointer;
user-select: none;
border: 1px solid transparent;
border-radius: var(--border-radius-lg);
background-color: var(--primary-color);
color: var(--white);
text-decoration: none;
transition: var(--transition-base);
}
button:not([class*="outline"]):hover,
.btn:not([class*="outline"]):not(.btn-close):hover,
input[type="button"]:not([class*="outline"]):hover,
input[type="submit"]:not([class*="outline"]):hover,
input[type="reset"]:hover {
background-color: #0b5ed7;
text-decoration: none;
}
button:focus,
.btn:focus,
input[type="button"]:focus,
input[type="submit"]:focus,
input[type="reset"]:focus {
outline: none;
box-shadow: 0 0 0 0.2rem rgba(13, 110, 253, 0.5);
}
button:disabled,
.btn:disabled,
input[type="button"]:disabled,
input[type="submit"]:disabled,
input[type="reset"]:disabled {
opacity: 0.65;
cursor: not-allowed;
}
/* Button variants */
.btn-secondary {
background-color: var(--secondary-color);
color: var(--white);
}
.btn-secondary:hover {
background-color: #5a6268;
}
.btn-success {
background-color: var(--success-color);
color: var(--white);
}
.btn-success:hover {
background-color: #157347;
}
.btn-danger {
background-color: var(--danger-color);
color: var(--white);
}
.btn-danger:hover {
background-color: #bb2d3b;
}
.btn-warning {
background-color: var(--warning-color);
color: var(--gray-900);
}
.btn-warning:hover {
background-color: #ffbb33;
}
.btn-info {
background-color: var(--info-color);
color: var(--white);
}
.btn-info:hover {
background-color: #0aa8cc;
}
.btn-light {
background-color: var(--light-color);
color: var(--gray-900);
border-color: var(--gray-300);
}
.btn-light:hover {
background-color: #e2e6ea;
}
.btn-dark {
background-color: var(--dark-color);
color: var(--white);
}
.btn-dark:hover {
background-color: #1a1e21;
}
/* Button sizes */
.btn-sm {
padding: 0.25rem 0.5rem;
font-size: var(--font-size-sm);
}
.btn-lg {
padding: 0.75rem 1.5rem;
font-size: var(--font-size-lg);
}
/* Alerts */
.alert {
padding: var(--spacing-md);
margin-bottom: var(--spacing-md);
border: 1px solid transparent;
border-radius: var(--border-radius-lg);
}
.alert-primary {
background-color: #cfe2ff;
border-color: #b6d4fe;
color: #084298;
}
.alert-secondary {
background-color: #e2e3e5;
border-color: #d3d6d8;
color: #41464b;
}
.alert-success {
background-color: #d1e7dd;
border-color: #badbcc;
color: #0f5132;
}
.alert-danger {
background-color: #f8d7da;
border-color: #f5c2c7;
color: #842029;
}
.alert-warning {
background-color: #fff3cd;
border-color: #ffecb5;
color: #664d03;
}
.alert-info {
background-color: #d1ecf1;
border-color: #bee5eb;
color: #0c5460;
}
/* Cards */
.card {
display: flex;
flex-direction: column;
background-color: var(--white);
border: 1px solid var(--gray-300);
border-radius: var(--border-radius-lg);
overflow: hidden;
box-shadow: var(--box-shadow);
transition: var(--transition-base);
}
.card:hover {
box-shadow: var(--box-shadow-lg);
}
.card-header {
padding: var(--spacing-md);
background-color: var(--gray-100);
border-bottom: 1px solid var(--gray-300);
font-weight: 600;
}
.card-body {
padding: var(--spacing-md);
flex: 1;
}
.card-footer {
padding: var(--spacing-md);
background-color: var(--gray-100);
border-top: 1px solid var(--gray-300);
}
.card-title {
margin-bottom: 0.5rem;
font-size: var(--font-size-lg);
font-weight: 600;
}
.card-text {
margin-bottom: 0;
color: var(--gray-700);
}
/* Badges */
.badge {
display: inline-block;
padding: 0.25rem 0.5rem;
font-size: 0.75rem;
font-weight: 600;
line-height: 1;
text-align: center;
white-space: nowrap;
vertical-align: baseline;
border-radius: var(--border-radius);
background-color: var(--primary-color);
color: var(--white);
}
.badge-secondary {
background-color: var(--secondary-color);
}
.badge-success {
background-color: var(--success-color);
}
.badge-danger {
background-color: var(--danger-color);
}
.badge-warning {
background-color: var(--warning-color);
color: var(--gray-900);
}
.badge-info {
background-color: var(--info-color);
}
.badge-light {
background-color: var(--light-color);
color: var(--gray-900);
}
.badge-dark {
background-color: var(--dark-color);
}
/* Helpers */
.text-primary {
color: var(--primary-color) !important;
}
.text-secondary {
color: var(--secondary-color) !important;
}
.text-success {
color: var(--success-color) !important;
}
.text-danger {
color: var(--danger-color) !important;
}
.text-warning {
color: var(--warning-color) !important;
}
.text-info {
color: var(--info-color) !important;
}
.text-light {
color: var(--light-color) !important;
}
.text-dark {
color: var(--dark-color) !important;
}
.text-muted {
color: var(--gray-600) !important;
}
.bg-primary {
background-color: var(--primary-color) !important;
}
.bg-secondary {
background-color: var(--secondary-color) !important;
}
.bg-success {
background-color: var(--success-color) !important;
}
.bg-danger {
background-color: var(--danger-color) !important;
}
.bg-warning {
background-color: var(--warning-color) !important;
}
.bg-info {
background-color: var(--info-color) !important;
}
.bg-light {
background-color: var(--light-color) !important;
}
.bg-dark {
background-color: var(--dark-color) !important;
}
.bg-white {
background-color: var(--white) !important;
}
/* Margin and Padding */
.m-0 {
margin: 0 !important;
}
.mt-0 {
margin-top: 0 !important;
}
.mb-0 {
margin-bottom: 0 !important;
}
.ml-0 {
margin-left: 0 !important;
}
.mr-0 {
margin-right: 0 !important;
}
.p-0 {
padding: 0 !important;
}
.pt-0 {
padding-top: 0 !important;
}
.pb-0 {
padding-bottom: 0 !important;
}
.pl-0 {
padding-left: 0 !important;
}
.pr-0 {
padding-right: 0 !important;
}
/* Dividers */
hr {
border: 0;
border-top: 1px solid var(--gray-300);
margin: var(--spacing-lg) 0;
}
/* Focus visible */
:focus-visible {
outline: 2px solid var(--primary-color);
outline-offset: 2px;
}
/* Selection */
::selection {
background-color: var(--primary-color);
color: var(--white);
}