monorepo/native/wordpress/maple-icons-wp/assets/admin.css
2026-02-02 14:17:16 -05:00

294 lines
4.4 KiB
CSS

/**
* Maple Icons - Admin Styles
*
* @package MapleIcons
*/
/* Admin page wrapper */
.mi-admin-wrap {
max-width: 1200px;
}
.mi-admin-intro {
background: #fff;
border: 1px solid #c3c4c7;
border-left: 4px solid #2271b1;
padding: 12px 16px;
margin: 20px 0;
}
.mi-admin-intro p {
margin: 0;
font-size: 14px;
}
/* Icon sets grid */
.mi-sets-grid {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
gap: 20px;
margin: 20px 0;
}
/* Individual set card */
.mi-set-card {
background: #fff;
border: 1px solid #c3c4c7;
border-radius: 4px;
padding: 20px;
position: relative;
transition: border-color 0.2s, box-shadow 0.2s;
}
.mi-set-card:hover {
border-color: #2271b1;
}
.mi-set-card.mi-set-active {
border-color: #00a32a;
box-shadow: 0 0 0 1px #00a32a;
}
.mi-set-card.mi-set-downloading {
opacity: 0.8;
pointer-events: none;
}
/* Card header */
.mi-set-header {
display: flex;
align-items: center;
justify-content: space-between;
margin-bottom: 12px;
}
.mi-set-name {
margin: 0;
font-size: 16px;
font-weight: 600;
color: #1d2327;
}
/* Badges */
.mi-badge {
display: inline-block;
padding: 2px 8px;
font-size: 11px;
font-weight: 600;
text-transform: uppercase;
border-radius: 3px;
}
.mi-badge-active {
background: #00a32a;
color: #fff;
}
.mi-badge-downloaded {
background: #dcdcde;
color: #50575e;
}
/* Set metadata */
.mi-set-meta {
display: flex;
flex-direction: column;
gap: 4px;
margin-bottom: 12px;
font-size: 13px;
color: #50575e;
}
.mi-set-count {
font-weight: 600;
color: #1d2327;
}
/* External link */
.mi-set-link {
display: inline-block;
margin-bottom: 16px;
font-size: 13px;
text-decoration: none;
}
.mi-set-link:hover {
text-decoration: underline;
}
/* Action buttons */
.mi-set-actions {
display: flex;
gap: 8px;
flex-wrap: wrap;
}
.mi-set-actions .button {
flex: 1;
text-align: center;
}
.mi-delete-btn {
color: #d63638 !important;
border-color: #d63638 !important;
}
.mi-delete-btn:hover {
background: #d63638 !important;
color: #fff !important;
}
/* Progress bar */
.mi-set-progress {
margin-top: 16px;
}
.mi-progress-bar {
height: 8px;
background: #dcdcde;
border-radius: 4px;
overflow: hidden;
margin-bottom: 8px;
}
.mi-progress-fill {
height: 100%;
background: #2271b1;
border-radius: 4px;
width: 0;
transition: width 0.3s ease;
}
.mi-progress-text {
font-size: 12px;
color: #50575e;
}
/* Messages */
.mi-set-message {
margin-top: 12px;
padding: 8px 12px;
border-radius: 4px;
font-size: 13px;
}
.mi-set-message.mi-message-success {
background: #edfaef;
border: 1px solid #00a32a;
color: #00450c;
}
.mi-set-message.mi-message-error {
background: #fcf0f1;
border: 1px solid #d63638;
color: #8a1f22;
}
.mi-set-message.mi-message-info {
background: #f0f6fc;
border: 1px solid #2271b1;
color: #135e96;
}
/* Usage section */
.mi-admin-usage,
.mi-admin-info {
background: #fff;
border: 1px solid #c3c4c7;
border-radius: 4px;
padding: 20px;
margin: 20px 0;
}
.mi-admin-usage h2,
.mi-admin-info h2 {
margin-top: 0;
font-size: 16px;
border-bottom: 1px solid #c3c4c7;
padding-bottom: 10px;
}
.mi-admin-usage ol {
margin: 16px 0 0;
padding-left: 24px;
}
.mi-admin-usage li {
margin-bottom: 8px;
font-size: 14px;
}
.mi-admin-info p {
font-size: 14px;
margin-bottom: 12px;
}
.mi-admin-info p:last-child {
margin-bottom: 0;
}
.mi-admin-info code {
background: #f0f0f1;
padding: 2px 6px;
border-radius: 3px;
font-size: 12px;
}
/* Loading spinner */
.mi-spinner {
display: inline-block;
width: 16px;
height: 16px;
border: 2px solid #c3c4c7;
border-top-color: #2271b1;
border-radius: 50%;
animation: mi-spin 0.8s linear infinite;
margin-right: 8px;
vertical-align: middle;
}
@keyframes mi-spin {
to {
transform: rotate(360deg);
}
}
/* Button loading state */
.button.mi-loading {
position: relative;
color: transparent !important;
}
.button.mi-loading::after {
content: '';
position: absolute;
top: 50%;
left: 50%;
width: 14px;
height: 14px;
margin: -7px 0 0 -7px;
border: 2px solid currentColor;
border-top-color: transparent;
border-radius: 50%;
animation: mi-spin 0.8s linear infinite;
}
.button-primary.mi-loading::after {
border-color: rgba(255, 255, 255, 0.3);
border-top-color: #fff;
}
/* Responsive adjustments */
@media screen and (max-width: 782px) {
.mi-sets-grid {
grid-template-columns: 1fr;
}
.mi-set-actions {
flex-direction: column;
}
.mi-set-actions .button {
width: 100%;
}
}