/* Priority Badge Styles for Requirements Documentation */

/* ========================================
   ICON CONFIGURATION (Easy to Change!)
   ========================================
   To change an icon:
   1. Find your new icon at https://primer.style/foundations/icons
   2. Copy the SVG code
   3. Replace the SVG path in the custom property below
   ======================================== */

:root {
    /* Draft - Paintbrush icon (Octicons paintbrush-16) */
    --status-icon--draft: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16"><path d="M11.134 1.535c.7-.509 1.416-.942 2.076-1.155.649-.21 1.463-.267 2.069.34.603.601.568 1.411.368 2.07-.202.668-.624 1.39-1.125 2.096-1.011 1.424-2.496 2.987-3.775 4.249-1.098 1.084-2.132 1.839-3.04 2.3a3.744 3.744 0 0 1-1.055 3.217c-.431.431-1.065.691-1.657.861-.614.177-1.294.287-1.914.357A21.151 21.151 0 0 1 .797 16H.743l.007-.75H.749L.742 16a.75.75 0 0 1-.743-.742l.743-.008-.742.007v-.054a21.25 21.25 0 0 1 .13-2.284c.067-.647.187-1.287.358-1.914.17-.591.43-1.226.86-1.657a3.746 3.746 0 0 1 3.227-1.054c.466-.893 1.225-1.907 2.314-2.982 1.271-1.255 2.833-2.75 4.245-3.777ZM1.62 13.089c-.051.464-.086.929-.104 1.395.466-.018.932-.053 1.396-.104a10.511 10.511 0 0 0 1.668-.309c.526-.151.856-.325 1.011-.48a2.25 2.25 0 1 0-3.182-3.182c-.155.155-.329.485-.48 1.01a10.515 10.515 0 0 0-.309 1.67Zm10.396-10.34c-1.224.89-2.605 2.189-3.822 3.384l1.718 1.718c1.21-1.205 2.51-2.597 3.387-3.833.47-.662.78-1.227.912-1.662.134-.444.032-.551.009-.575h-.001V1.78c-.014-.014-.113-.113-.548.027-.432.14-.995.462-1.655.942Zm-4.832 7.266-.001.001a9.859 9.859 0 0 0 1.63-1.142L7.155 7.216a9.7 9.7 0 0 0-1.161 1.607c.482.302.889.71 1.19 1.192Z"/></svg>');
    /* Original: Pencil icon (Octicons pencil-24) */
    /* --status-icon--draft: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M17.263 2.177a1.75 1.75 0 0 1 2.474 0l2.586 2.586a1.75 1.75 0 0 1 0 2.474L19.53 10.03l-.012.013L8.69 20.378a1.753 1.753 0 0 1-.699.409l-5.523 1.68a.748.748 0 0 1-.747-.188.748.748 0 0 1-.188-.747l1.68-5.523a1.75 1.75 0 0 1 .409-.699L14.45 4.482a2.75 2.75 0 0 1-.443.497l-9.193 9.192a.253.253 0 0 0-.059.1l-1.68 5.523 5.523-1.68a.253.253 0 0 0 .1-.059l9.192-9.193a2.75 2.75 0 0 1 .497-.443L17.263 2.177Z"/></svg>'); */

    /* In Review - People icon (Octicons people-24) */
    --status-icon--in-review: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M3.5 8a5.5 5.5 0 1 1 8.596 4.547 9.005 9.005 0 0 1 5.9 8.18.751.751 0 0 1-1.5.045 7.5 7.5 0 0 0-14.993 0 .75.75 0 0 1-1.499-.044 9.005 9.005 0 0 1 5.9-8.181A5.496 5.496 0 0 1 3.5 8ZM9 4a4 4 0 1 0 0 8 4 4 0 0 0 0-8Zm8.29 4c-.148 0-.292.01-.434.03a.75.75 0 1 1-.212-1.484 4.53 4.53 0 0 1 3.38 8.097 6.69 6.69 0 0 1 3.956 6.107.75.75 0 0 1-1.5 0 5.193 5.193 0 0 0-3.696-4.972l-.534-.16v-1.676l.41-.209A3.03 3.03 0 0 0 17.29 8Z"/></svg>');
    /* Previous: Star icon (Octicons star-16) */
    /* --status-icon--in-review: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16"><path d="M8 .25a.75.75 0 0 1 .673.418l1.882 3.815 4.21.612a.75.75 0 0 1 .416 1.279l-3.046 2.97.719 4.192a.751.751 0 0 1-1.088.791L8 12.347l-3.766 1.98a.75.75 0 0 1-1.088-.79l.72-4.194L.818 6.374a.75.75 0 0 1 .416-1.28l4.21-.611L7.327.668A.75.75 0 0 1 8 .25Zm0 2.445L6.615 5.5a.75.75 0 0 1-.564.41l-3.097.45 2.24 2.184a.75.75 0 0 1 .216.664l-.528 3.084 2.769-1.456a.75.75 0 0 1 .698 0l2.77 1.456-.53-3.084a.75.75 0 0 1 .216-.664l2.24-2.183-3.096-.45a.75.75 0 0 1-.564-.41L8 2.694Z"/></svg>'); */
    /* Original: Eye icon (Octicons eye-24) */
    /* --status-icon--in-review: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M15.5 12a3.5 3.5 0 1 1-7 0 3.5 3.5 0 0 1 7 0Z"/><path d="M12 3.5c3.432 0 6.125 1.534 8.054 3.241 1.926 1.703 3.132 3.61 3.616 4.46a1.6 1.6 0 0 1 0 1.598c-.484.85-1.69 2.757-3.616 4.461-1.929 1.706-4.622 3.24-8.054 3.24-3.432 0-6.125-1.534-8.054-3.24C2.02 15.558.814 13.65.33 12.8a1.6 1.6 0 0 1 0-1.598c.484-.85 1.69-2.757 3.616-4.462C5.875 5.034 8.568 3.5 12 3.5ZM1.633 11.945a.115.115 0 0 0-.017.055c.001.021.006.039.017.056.441.774 1.551 2.527 3.307 4.08C6.691 17.685 9.045 19 12 19c2.955 0 5.309-1.315 7.06-2.864 1.756-1.553 2.866-3.306 3.307-4.08a.111.111 0 0 0 .017-.056.111.111 0 0 0-.017-.056c-.441-.773-1.551-2.527-3.307-4.08C17.309 6.315 14.955 5 12 5 9.045 5 6.691 6.315 4.94 7.864c-1.756 1.553-2.866 3.307-3.307 4.08Z"/></svg>'); */

    /* Approved - Verified icon (Octicons verified-24) */
    --status-icon--approved: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M17.03 9.78a.75.75 0 0 0-1.06-1.06l-5.47 5.47-2.47-2.47a.75.75 0 0 0-1.06 1.06l3 3a.75.75 0 0 0 1.06 0l6-6Z"/><path d="m14.136 1.2 1.375 1.01c.274.201.593.333.929.384l1.687.259a3.61 3.61 0 0 1 3.02 3.021l.259 1.686c.051.336.183.655.384.929l1.01 1.375a3.61 3.61 0 0 1 0 4.272l-1.01 1.375a2.106 2.106 0 0 0-.384.929l-.259 1.687a3.61 3.61 0 0 1-3.021 3.02l-1.686.259a2.106 2.106 0 0 0-.929.384l-1.375 1.01a3.61 3.61 0 0 1-4.272 0l-1.375-1.01a2.106 2.106 0 0 0-.929-.384l-1.687-.259a3.61 3.61 0 0 1-3.02-3.021l-.259-1.686a2.117 2.117 0 0 0-.384-.929L1.2 14.136a3.61 3.61 0 0 1 0-4.272l1.01-1.375c.201-.274.333-.593.384-.929l.259-1.687a3.61 3.61 0 0 1 3.021-3.02l1.686-.259c.336-.051.655-.183.929-.384L9.864 1.2a3.61 3.61 0 0 1 4.272 0Zm-3.384 1.209-1.375 1.01a3.614 3.614 0 0 1-1.59.658l-1.686.258a2.111 2.111 0 0 0-1.766 1.766l-.258 1.686a3.61 3.61 0 0 1-.658 1.589l-1.01 1.376a2.11 2.11 0 0 0 0 2.496l1.01 1.375c.344.469.57 1.015.658 1.59l.258 1.686c.14.911.855 1.626 1.766 1.766l1.686.258a3.61 3.61 0 0 1 1.589.658l1.376 1.01a2.11 2.11 0 0 0 2.496 0l1.375-1.01a3.613 3.613 0 0 1 1.59-.657l1.686-.26a2.11 2.11 0 0 0 1.766-1.765l.258-1.686a3.61 3.61 0 0 1 .658-1.589l1.01-1.376a2.11 2.11 0 0 0 0-2.496l-1.01-1.375a3.613 3.613 0 0 1-.657-1.59l-.26-1.686a2.11 2.11 0 0 0-1.765-1.766l-1.686-.258a3.61 3.61 0 0 1-1.589-.658l-1.376-1.01a2.11 2.11 0 0 0-2.496 0Z"/></svg>');
    /* Original: Check circle icon (Octicons check-circle-24) */
    /* --status-icon--approved: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M17.28 9.28a.75.75 0 0 0-1.06-1.06l-5.97 5.97-2.47-2.47a.75.75 0 0 0-1.06 1.06l3 3a.75.75 0 0 0 1.06 0l6.5-6.5Z"/><path d="M12 1c6.075 0 11 4.925 11 11s-4.925 11-11 11S1 18.075 1 12 5.925 1 12 1ZM2.5 12a9.5 9.5 0 0 0 9.5 9.5 9.5 9.5 0 0 0 9.5-9.5A9.5 9.5 0 0 0 12 2.5 9.5 9.5 0 0 0 2.5 12Z"/></svg>'); */

    /* Implemented - Rocket icon (Octicons rocket-16) */
    --status-icon--implemented: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16"><path d="M14.064 0h.186C15.216 0 16 .784 16 1.75v.186a8.752 8.752 0 0 1-2.564 6.186l-.458.459c-.314.314-.641.616-.979.904v3.207c0 .608-.315 1.172-.833 1.49l-2.774 1.707a.749.749 0 0 1-1.11-.418l-.954-3.102a1.214 1.214 0 0 1-.145-.125L3.754 9.816a1.218 1.218 0 0 1-.124-.145L.528 8.717a.749.749 0 0 1-.418-1.11l1.71-2.774A1.748 1.748 0 0 1 3.31 4h3.204c.288-.338.59-.665.904-.979l.459-.458A8.749 8.749 0 0 1 14.064 0ZM8.938 3.623h-.002l-.458.458c-.76.76-1.437 1.598-2.02 2.5l-1.5 2.317 2.143 2.143 2.317-1.5c.902-.583 1.74-1.26 2.499-2.02l.459-.458a7.25 7.25 0 0 0 2.123-5.127V1.75a.25.25 0 0 0-.25-.25h-.186a7.249 7.249 0 0 0-5.125 2.123ZM3.56 14.56c-.732.732-2.334 1.045-3.005 1.148a.234.234 0 0 1-.201-.064.234.234 0 0 1-.064-.201c.103-.671.416-2.273 1.15-3.003a1.502 1.502 0 1 1 2.12 2.12Zm6.94-3.935c-.088.06-.177.118-.266.175l-2.35 1.521.548 1.783 1.949-1.2a.25.25 0 0 0 .119-.213ZM3.678 8.116 5.2 5.766c.058-.09.117-.178.176-.266H3.309a.25.25 0 0 0-.213.119l-1.2 1.95ZM12 5a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z"/></svg>');
    /* Original: Rocket icon (Octicons rocket-24) */
    /* --status-icon--implemented: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20.322.75a10.75 10.75 0 0 0-7.373 2.926l-1.304 1.23A23.743 23.743 0 0 0 8.426 8.4L4.183 12.6a1.5 1.5 0 0 0-.123 2.014l5.326 5.326a1.5 1.5 0 0 0 2.013-.123l4.202-4.243a23.742 23.742 0 0 0 3.494-3.219l1.23-1.305a10.75 10.75 0 0 0 2.925-7.372V2.499A1.75 1.75 0 0 0 21.498.75h-1.177ZM16 15.112c-.333.248-.672.487-1.018.718l-3.393 3.418-5.298-5.298 3.418-3.393c.231-.346.47-.685.717-1.018L15.112 16ZM18.5 2.5v1.173a9.25 9.25 0 0 1-2.514 6.298l-1.074 1.138-5.022-5.022 1.138-1.074A9.25 9.25 0 0 1 17.327 2.5H18.5Z"/><path d="M9.75 22.5a.75.75 0 0 1-.75-.75v-2.146L6.615 17.25H4.25a.75.75 0 0 1 0-1.5h2.75l2.5 2.5v2.75a.75.75 0 0 1-.75.75Zm6-14a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Z"/></svg>'); */
}

/* Base badge styling */
.priority-badge {
    display: inline-flex;      /* Flexbox for better alignment control */
    align-items: center;       /* Vertically center content */
    padding: 0.25rem 0.75rem;
    font-size: 0.875rem;
    font-weight: 600;
    text-transform: uppercase;
    border-radius: 0.375rem;
    margin-left: 0.5rem;
    letter-spacing: 0.025em;
    box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
    flex-shrink: 0;            /* Prevent badge from shrinking */
    vertical-align: middle;    /* Align with surrounding text baseline */
}

/* Priority levels with garden-themed colors */

/* CRITICAL - Red/urgent (matches tomato red) */
.priority-critical {
    background-color: #ef4444;
    color: #ffffff;
    border: 2px solid #dc2626;
}

/* HIGH - Orange (matches carrot orange) */
.priority-high {
    background-color: #f97316;
    color: #ffffff;
    border: 2px solid #ea580c;
}

/* MEDIUM - Yellow/Gold (matches sunflower) */
.priority-medium {
    background-color: #eab308;
    color: #1f2937;
    border: 2px solid #ca8a04;
}

/* LOW - Green (matches garden green) */
.priority-low {
    background-color: #22c55e;
    color: #ffffff;
    border: 2px solid #16a34a;
}

/* Hover effects */
.priority-badge:hover {
    transform: translateY(-1px);
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1),
                0 2px 4px -1px rgba(0, 0, 0, 0.06);
    transition: all 0.2s ease-in-out;
}

/* Phase badge (optional companion to priority) */
.phase-badge {
    display: inline-flex;      /* Flexbox for better alignment control */
    align-items: center;       /* Vertically center content */
    padding: 0.25rem 0.75rem;
    font-size: 0.875rem;
    font-weight: 500;
    border-radius: 0.375rem;
    margin-left: 0.5rem;
    background-color: #6366f1;
    color: #ffffff;
    border: 2px solid #4f46e5;
    flex-shrink: 0;            /* Prevent badge from shrinking */
    vertical-align: middle;    /* Align with surrounding text baseline */
}

/* Status badge */
.status-badge {
    display: inline-flex;
    align-items: center;       /* Vertically center icon and text */
    gap: 0.375rem;            /* Space between icon and text */
    padding: 0.25rem 0.75rem;
    font-size: 0.875rem;
    font-weight: 500;
    border-radius: 0.375rem;
    margin-left: 0.5rem;
    flex-shrink: 0;            /* Prevent badge from shrinking */
    vertical-align: middle;    /* Align with surrounding text baseline */
}

/* Status badge icons using same Octicons as navigation */
.status-badge::before {
    content: '';
    display: inline-block;
    width: 1em;
    height: 1em;
    background-color: currentColor;
    mask-size: contain;
    mask-repeat: no-repeat;
    mask-position: center;
    -webkit-mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;
}

.status-draft {
    background-color: #9ca3af;
    color: #ffffff;
    border: 2px solid #6b7280;
}

.status-draft::before {
    mask-image: var(--status-icon--draft);
    -webkit-mask-image: var(--status-icon--draft);
}

.status-in-review {
    background-color: #3b82f6;
    color: #ffffff;
    border: 2px solid #2563eb;
}

.status-in-review::before {
    mask-image: var(--status-icon--in-review);
    -webkit-mask-image: var(--status-icon--in-review);
}

.status-approved {
    background-color: #10b981;
    color: #ffffff;
    border: 2px solid #059669;
}

.status-approved::before {
    mask-image: var(--status-icon--approved);
    -webkit-mask-image: var(--status-icon--approved);
}

.status-implemented {
    background-color: #8b5cf6;
    color: #ffffff;
    border: 2px solid #7c3aed;
}

.status-implemented::before {
    mask-image: var(--status-icon--implemented);
    -webkit-mask-image: var(--status-icon--implemented);
}

/* Hover effects for phase and status badges (matching priority badge behavior) */
.phase-badge:hover,
.status-badge:hover {
    transform: translateY(-1px);      /* Subtle lift on hover */
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1),
                0 2px 4px -1px rgba(0, 0, 0, 0.06);
    transition: all 0.2s ease-in-out;  /* Smooth animation */
}

/* Priority filter/legend section */
.priority-legend {
    display: flex;
    gap: 1rem;
    flex-wrap: wrap;
    padding: 1rem;
    background-color: #f9fafb;
    border-radius: 0.5rem;
    margin: 1rem 0;
}

.priority-legend-item {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

/* Priority card in index pages */
.requirement-card {
    border: 1px solid #e5e7eb;
    border-radius: 0.5rem;
    padding: 1rem;
    margin-bottom: 1rem;
    background-color: #ffffff;
    transition: box-shadow 0.2s ease-in-out;
}

.requirement-card:hover {
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1),
                0 2px 4px -1px rgba(0, 0, 0, 0.06);
}

.requirement-card-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 0.5rem;
}

.requirement-card-title {
    font-size: 1.125rem;
    font-weight: 600;
    color: #1f2937;
}

.requirement-card-meta {
    display: flex;
    gap: 0.5rem;
    align-items: center;
}

.requirement-card-description {
    color: #6b7280;
    font-size: 0.875rem;
}

/* Dark mode support */
[data-md-color-scheme="slate"] .priority-badge {
    box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.3);
}

[data-md-color-scheme="slate"] .requirement-card {
    background-color: #1e293b;
    border-color: #334155;
}

[data-md-color-scheme="slate"] .requirement-card-title {
    color: #f1f5f9;
}

[data-md-color-scheme="slate"] .requirement-card-description {
    color: #94a3b8;
}

[data-md-color-scheme="slate"] .priority-legend {
    background-color: #1e293b;
}

/* Responsive design */
@media (max-width: 768px) {
    .priority-badge,
    .phase-badge,
    .status-badge {
        font-size: 0.75rem;
        padding: 0.2rem 0.5rem;
    }

    .requirement-card-header {
        flex-direction: column;
        align-items: flex-start;
    }

    .requirement-card-meta {
        margin-top: 0.5rem;
    }
}
