:root {
    --cream: #fbf9f4;
    --green: #061e13;
    --leaf: #1a4331;
    --gold: #4b5563;
    --ink: #101b16;
    --muted: #6b7280;
    --line: #e8eaee;
}
.media-gallery-module {
    background: #f6f8f7;
}
.media-gallery-module .module-heading {
    margin-bottom: 20px;
}
.media-gallery-module .module-heading h2 {
    margin: 3px 0 6px;
    color: #062b1d;
    font-family: Georgia, serif;
    font-size: clamp(28px, 3vw, 42px);
}
.media-gallery-module .module-heading p {
    margin: 0;
    max-width: 760px;
    color: #64748b;
}
.media-gallery-module .eyebrow {
    color: #bd8f32;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}
.media-admin {
    display: grid;
    grid-gap: 18px;
    gap: 18px;
}
.partner-gallery-manage {
    margin: 0 0 30px;
    min-width: 0;
}
.partner-gallery-manage-heading,
.partner-gallery-manage > h2 {
    margin: 0 0 6px;
    color: #123a2d;
    font-size: 22px;
}
.partner-gallery-manage > p {
    margin: 0 0 16px;
    color: #64748b;
}
.partner-gallery-manage-heading {
    margin-bottom: 14px;
}
.partner-gallery-manage .media-admin-layout,
.partner-gallery-manage .media-album-sidebar,
.partner-gallery-manage .media-album-workspace {
    min-width: 0;
}
.media-quota-card {
    display: grid;
    grid-template-columns: minmax(220px, 1fr) minmax(240px, 2fr) auto;
    align-items: center;
    grid-gap: 22px;
    gap: 22px;
    padding: 18px 20px;
    border: 1px solid #d6e4dc;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 10px 30px rgba(5, 45, 30, 0.06);
}
.media-quota-card > div:first-child {
    display: grid;
    grid-gap: 3px;
    gap: 3px;
}
.media-quota-card span {
    color: #64748b;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}
.media-quota-card strong {
    color: #123a2d;
    font-size: 20px;
}
.media-quota-card small {
    color: #64748b;
}
.media-quota-card > b {
    min-width: 62px;
    color: #166534;
    font-size: 22px;
    text-align: right;
}
.media-quota-meter {
    height: 12px;
    overflow: hidden;
    border-radius: 99px;
    background: #e8efeb;
}
.media-quota-meter i {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg, #15915e, #0b6b46);
}
.media-quota-card.warning {
    border-color: #f2ce77;
    background: #fffaf0;
}
.media-quota-card.warning .media-quota-meter i {
    background: #d99a19;
}
.media-quota-card.warning > b {
    color: #a16207;
}
.media-quota-card.critical {
    border-color: #f4a6a6;
    background: #fff5f5;
}
.media-quota-card.critical .media-quota-meter i {
    background: #dc2626;
}
.media-quota-card.critical > b {
    color: #b91c1c;
}
.media-admin-message {
    margin: 0;
    border-radius: 12px;
    padding: 12px 15px;
    font-weight: 800;
}
.media-admin-message.success {
    background: #dcfce7;
    color: #166534;
}
.media-admin-message.error {
    background: #fee2e2;
    color: #991b1b;
}
.media-admin-layout {
    display: grid;
    grid-template-columns: minmax(250px, 310px) minmax(0, 1fr);
    grid-gap: 18px;
    gap: 18px;
    align-items: start;
}
.media-album-sidebar,
.media-album-workspace {
    border: 1px solid #dce5e0;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 14px 34px rgba(5, 45, 30, 0.055);
}
.media-album-sidebar {
    position: -webkit-sticky;
    position: sticky;
    top: 10px;
    overflow: hidden;
}
.media-album-sidebar > h2 {
    margin: 0;
    padding: 18px 20px 10px;
    color: #123a2d;
    font-family: Georgia, serif;
}
.media-album-sidebar form {
    display: grid;
    grid-gap: 11px;
    gap: 11px;
    padding: 10px 20px 18px;
    border-bottom: 1px solid #e5ebe8;
}
.media-album-sidebar label {
    display: grid;
    grid-gap: 5px;
    gap: 5px;
    color: #52655d;
    font-size: 12px;
    font-weight: 800;
}
.media-admin-grid input,
.media-album-sidebar input,
.media-album-sidebar select,
.media-album-sidebar textarea {
    width: 100%;
    box-sizing: border-box;
    border: 1px solid #cfdad4;
    border-radius: 9px;
    padding: 10px 11px;
    background: #fff;
    color: #102d22;
    font: inherit;
}
.media-album-sidebar textarea {
    resize: vertical;
}
.media-album-sidebar form button,
.media-album-workspace header button {
    border: 0;
    border-radius: 9px;
    padding: 11px 15px;
    background: #103f2e;
    color: #fff;
    font: inherit;
    font-weight: 900;
    cursor: pointer;
}
.media-album-sidebar button:disabled,
.media-album-workspace button:disabled {
    cursor: not-allowed;
    opacity: 0.55;
}
.media-album-list {
    display: grid;
    max-height: 48vh;
    overflow: auto;
}
.media-album-list > button {
    display: grid;
    grid-gap: 3px;
    gap: 3px;
    border: 0;
    border-bottom: 1px solid #edf1ef;
    padding: 13px 20px;
    background: #fff;
    color: #29463b;
    font: inherit;
    text-align: left;
    cursor: pointer;
}
.media-album-list > button.active {
    border-left: 4px solid #c99a3f;
    padding-left: 16px;
    background: #fbf7ee;
}
.media-album-list span {
    color: #15392b;
    font-size: 14px;
    font-weight: 900;
    text-transform: none;
    letter-spacing: 0;
}
.media-album-list small {
    color: #718078;
}
.media-album-workspace {
    min-width: 0;
    padding: 22px;
}
.media-album-workspace > header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 18px;
}
.media-album-workspace header span {
    color: #bd8f32;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}
.media-album-workspace header h2 {
    margin: 3px 0;
    color: #0b2f21;
    font-family: Georgia, serif;
    font-size: clamp(24px, 3vw, 36px);
}
.media-album-workspace header p {
    margin: 0;
    color: #64748b;
}
.media-album-workspace header button.publish {
    background: #0b6b46;
}
.media-album-workspace header button.secondary {
    background: #eef3f0;
    color: #315347;
}
.media-album-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}
.media-album-edit {
    display: grid;
    grid-gap: 12px;
    gap: 12px;
    margin-bottom: 18px;
    padding: 16px;
    border: 1px solid #dce5e0;
    border-radius: 12px;
    background: #f6f8f7;
}
.media-album-edit label {
    display: grid;
    grid-gap: 6px;
    gap: 6px;
    color: #315347;
    font-size: 13px;
    font-weight: 800;
}
.media-album-edit input,
.media-album-edit select,
.media-album-edit textarea {
    width: 100%;
    box-sizing: border-box;
    border: 1px solid #cfdad4;
    border-radius: 9px;
    padding: 10px 11px;
    color: #102d22;
    background: #fff;
    font: inherit;
}
.media-album-edit textarea {
    resize: vertical;
}
.media-album-edit > div {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}
.media-album-edit button {
    border: 0;
    border-radius: 9px;
    padding: 11px 15px;
    background: #103f2e;
    color: #fff;
    font: inherit;
    font-weight: 800;
    cursor: pointer;
}
.media-album-edit button.secondary {
    background: #e5ede8;
    color: #315347;
}
.media-upload-zone {
    display: grid;
    place-items: center;
    grid-gap: 6px;
    gap: 6px;
    min-height: 145px;
    border: 2px dashed #b8cec2;
    border-radius: 14px;
    padding: 18px;
    background: #f6fbf8;
    color: #315347;
    text-align: center;
    cursor: pointer;
}
.media-upload-zone:hover {
    border-color: #0b6b46;
    background: #f0f9f4;
}
.media-upload-zone.busy {
    cursor: progress;
}
.media-upload-zone input {
    position: absolute;
    inline-size: 1px;
    block-size: 1px;
    opacity: 0;
}
.media-upload-zone strong {
    color: #0b5135;
    font-size: 18px;
}
.media-upload-zone span {
    color: #6b7c74;
    font-size: 12px;
}
.media-upload-zone > i {
    width: min(420px, 90%);
    height: 7px;
    overflow: hidden;
    border-radius: 99px;
    background: #dce8e1;
}
.media-upload-zone > i b {
    display: block;
    height: 100%;
    background: #0b6b46;
}
.media-admin-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(210px, 1fr));
    grid-gap: 14px;
    gap: 14px;
    margin-top: 18px;
}
.media-admin-grid article {
    overflow: hidden;
    border: 1px solid #dfe7e3;
    border-radius: 13px;
    background: #fff;
}
.media-admin-grid img,
.media-admin-grid video {
    display: block;
    width: 100%;
    aspect-ratio: 4/3;
    object-fit: cover;
    background: #10231c;
}
.media-admin-grid article > div {
    display: grid;
    grid-gap: 8px;
    gap: 8px;
    padding: 11px;
}
.media-admin-grid article strong {
    color: #5b6b64;
    font-size: 11px;
    text-transform: uppercase;
}
.media-admin-grid article button {
    justify-self: start;
    border: 0;
    padding: 4px 0;
    background: transparent;
    color: #b42318;
    font: inherit;
    font-size: 12px;
    font-weight: 900;
    cursor: pointer;
}
.media-empty,
.partner-gallery-empty {
    display: grid;
    place-items: center;
    grid-gap: 5px;
    gap: 5px;
    min-height: 220px;
    padding: 24px;
    color: #718078;
    text-align: center;
}
.media-empty strong,
.partner-gallery-empty strong {
    color: #24483a;
    font-size: 18px;
}
.partner-gallery-list {
    display: grid;
    grid-gap: 28px;
    gap: 28px;
}
.partner-gallery-album {
    overflow: hidden;
    border: 1px solid #e2e8e5;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 16px 40px rgba(7, 46, 31, 0.06);
}
.partner-gallery-album > header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 20px;
    padding: 22px 24px;
    background: linear-gradient(135deg, #f8fbf9, #fffaf0);
}
.partner-gallery-album header span {
    color: #b4862f;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}
.partner-gallery-album header h2 {
    margin: 4px 0;
    color: #092f21;
    font-family: Georgia, serif;
    font-size: clamp(24px, 3vw, 36px);
}
.partner-gallery-album header p {
    max-width: 720px;
    margin: 6px 0;
    color: #5f7169;
}
.partner-gallery-album header small {
    color: #456257;
}
.partner-gallery-album header > b {
    flex: 0 0 auto;
    border-radius: 99px;
    padding: 7px 11px;
    background: #e6f4ec;
    color: #0b6b46;
    font-size: 12px;
}
.partner-gallery-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    grid-gap: 3px;
    gap: 3px;
    padding: 3px;
}
.partner-gallery-open,
.partner-gallery-tile {
    position: relative;
    overflow: hidden;
    background: #132c23;
}
.partner-gallery-open {
    display: block;
    width: 100%;
    border: 0;
    padding: 0;
    cursor: pointer;
}
.partner-gallery-like {
    position: absolute;
    top: 6px;
    right: 6px;
    z-index: 1;
    display: inline-flex;
    align-items: center;
    gap: 4px;
    min-width: 44px;
    min-height: 36px;
    justify-content: center;
    border: 0;
    border-radius: 99px;
    padding: 0 10px;
    background: rgba(0, 0, 0, 0.52);
    color: #fff;
    font: inherit;
    font-size: 13px;
    font-weight: 800;
    cursor: pointer;
}
.gallery-lightbox-like i,
.partner-gallery-like i {
    font-style: normal;
    font-size: 17px;
    line-height: 1;
}
.gallery-lightbox-like.liked i,
.partner-gallery-like.liked i {
    color: #ff4d6d;
}
.gallery-lightbox-like:disabled,
.partner-gallery-like:disabled {
    cursor: default;
}
.gallery-lightbox-like {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 44px;
    border: 1px solid rgba(255, 255, 255, 0.35);
    border-radius: 99px;
    padding: 0 18px;
    background: rgba(255, 255, 255, 0.1);
    color: #fff;
    font: inherit;
    font-size: 16px;
    font-weight: 800;
    cursor: pointer;
}
.partner-gallery-grid img,
.partner-gallery-grid video {
    display: block;
    width: 100%;
    aspect-ratio: 1/1;
    object-fit: cover;
    transition: transform 0.25s ease;
}
.partner-gallery-open:hover img,
.partner-gallery-open:hover video {
    transform: scale(1.035);
}
.partner-gallery-open > span {
    position: absolute;
    inset: auto 0 0;
    padding: 26px 10px 9px;
    background: linear-gradient(transparent, rgba(0, 0, 0, 0.72));
    color: white;
    font-size: 12px;
    font-weight: 800;
    text-align: left;
}
.partner-gallery-video {
    position: relative;
}
.partner-gallery-video i {
    position: absolute;
    inset: 50% auto auto 50%;
    display: grid;
    place-items: center;
    width: 48px;
    height: 48px;
    border: 2px solid rgba(255, 255, 255, 0.9);
    border-radius: 50%;
    background: rgba(0, 0, 0, 0.46);
    color: white;
    font-style: normal;
    transform: translate(-50%, -50%);
}
.gallery-lightbox {
    position: fixed;
    z-index: 10000;
    inset: 0;
    display: grid;
    place-items: center;
    padding: 26px 72px;
    background: rgba(3, 14, 10, 0.94);
}
.gallery-lightbox-stage {
    display: grid;
    place-items: center;
    grid-gap: 8px;
    gap: 8px;
    max-width: min(1200px, 100%);
    max-height: 92vh;
    color: #fff;
    text-align: center;
}
.gallery-lightbox-stage img,
.gallery-lightbox-stage video {
    display: block;
    max-width: 100%;
    max-height: 78vh;
    border-radius: 10px;
    object-fit: contain;
}
.gallery-lightbox-stage p {
    margin: 4px 0 0;
    color: #fff;
    font-weight: 700;
}
.gallery-lightbox-stage small {
    color: #b8c7c0;
}
.gallery-lightbox > button {
    position: fixed;
    z-index: 1;
    border: 0;
    background: transparent;
    color: #fff;
    cursor: pointer;
}
.gallery-lightbox-close {
    top: 14px;
    right: 20px;
    font-size: 42px;
}
.gallery-lightbox-next,
.gallery-lightbox-prev {
    top: 50%;
    font-size: 64px;
    transform: translateY(-50%);
}
.gallery-lightbox-prev {
    left: 18px;
}
.gallery-lightbox-next {
    right: 18px;
}
@media (max-width: 900px) {
    .media-quota-card {
        grid-template-columns: 1fr auto;
    }
    .media-quota-meter {
        grid-column: 1/-1;
        grid-row: 2;
    }
    .media-admin-layout {
        grid-template-columns: 1fr;
    }
    .media-album-sidebar {
        position: static;
    }
    .media-album-list {
        max-height: 260px;
    }
    .partner-gallery-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}
@media (max-width: 600px) {
    .media-gallery-module {
        padding-inline: 10px;
    }
    .partner-gallery-manage .media-album-workspace {
        padding: 14px;
    }
    .partner-gallery-manage .media-album-workspace > header {
        flex-direction: column;
        gap: 10px;
    }
    .partner-gallery-manage .media-admin-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
    }
    .partner-gallery-manage .media-upload-zone {
        min-height: 110px;
        padding: 14px;
    }
    .media-quota-card {
        gap: 10px;
        padding: 14px;
    }
    .media-quota-card strong {
        font-size: 17px;
    }
    .media-quota-card small {
        font-size: 11px;
    }
    .media-album-workspace {
        padding: 14px;
    }
    .media-album-workspace > header,
    .partner-gallery-album > header {
        align-items: stretch;
        flex-direction: column;
    }
    .media-album-workspace header button {
        width: 100%;
    }
    .media-upload-zone {
        min-height: 120px;
        padding: 14px 8px;
    }
    .media-admin-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 7px;
    }
    .media-admin-grid article > div {
        padding: 8px;
    }
    .partner-gallery-album {
        border-radius: 13px;
    }
    .partner-gallery-album > header {
        gap: 10px;
        padding: 17px;
    }
    .partner-gallery-album header > b {
        align-self: flex-start;
    }
    .partner-gallery-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .gallery-lightbox {
        padding: 50px 8px 58px;
    }
    .gallery-lightbox-stage img,
    .gallery-lightbox-stage video {
        max-height: 72vh;
    }
    .gallery-lightbox-next,
    .gallery-lightbox-prev {
        top: auto;
        bottom: 8px;
        width: 48%;
        font-size: 44px;
        transform: none;
    }
    .gallery-lightbox-prev {
        left: 0;
    }
    .gallery-lightbox-next {
        right: 0;
    }
}
.site-analytics-report .reports-head {
    align-items: flex-end;
    gap: 18px;
}
.analytics-range {
    display: flex;
    gap: 6px;
    padding: 4px;
    border: 1px solid #dce3df;
    border-radius: 12px;
    background: #f5f7f6;
}
.analytics-actions {
    display: flex;
    align-items: center;
    gap: 9px;
}
.analytics-export {
    padding: 10px 14px;
    border-radius: 10px;
    color: #fff;
    background: #a87720;
    font-size: 0.8rem;
    font-weight: 800;
    text-decoration: none;
    white-space: nowrap;
}
.analytics-export:focus-visible,
.analytics-export:hover {
    background: #875d16;
}
.analytics-range a {
    padding: 7px 11px;
    border-radius: 8px;
    color: #56615d;
    font-weight: 700;
    text-decoration: none;
}
.analytics-range a.active {
    color: #fff;
    background: #164b38;
}
.analytics-note,
.analytics-privacy {
    margin: 16px 0;
    padding: 11px 14px;
    border-left: 3px solid #c7a24f;
    border-radius: 0 10px 10px 0;
    color: #53615c;
    background: #faf8f1;
}
.analytics-window-note {
    margin: -7px 0 16px;
    color: #66716d;
    font-size: 0.82rem;
}
.analytics-window-note strong {
    color: #294b3f;
}
.analytics-metric-grid {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    grid-gap: 10px;
    gap: 10px;
    margin: 16px 0;
}
.analytics-metric-card {
    min-width: 0;
    padding: 15px;
    border: 1px solid #e1e6e3;
    border-radius: 13px;
    color: inherit;
    background: #fff;
    box-shadow: 0 3px 14px rgb(24 60 46/5%);
    text-decoration: none;
    transition:
        border-color 0.18s ease,
        box-shadow 0.18s ease,
        transform 0.18s ease;
}
.analytics-metric-card.active,
.analytics-metric-card:focus-visible,
.analytics-metric-card:hover {
    border-color: #2c7158;
    box-shadow: 0 8px 22px rgb(24 60 46/13%);
    transform: translateY(-2px);
}
.analytics-metric-card.active {
    box-shadow:
        inset 0 3px 0 #1b5a43,
        0 8px 22px rgb(24 60 46/10%);
}
.analytics-metric-grid span {
    display: block;
    min-height: 32px;
    color: #65706c;
    font-size: 0.78rem;
    font-weight: 700;
    line-height: 1.25;
}
.analytics-metric-grid strong {
    display: block;
    margin-top: 5px;
    color: #183d31;
    font-size: clamp(1.25rem, 2vw, 1.75rem);
}
.analytics-metric-card small {
    display: block;
    margin-top: 9px;
    color: #47715f;
    font-size: 0.7rem;
    font-weight: 750;
}
.analytics-metric-grid .money {
    border-color: #d9c488;
    background: linear-gradient(145deg, #fffdf7, #f7f2e3);
}
.analytics-layout {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    grid-gap: 12px;
    gap: 12px;
}
.analytics-panel {
    min-width: 0;
    padding: 18px;
    border: 1px solid #e0e6e2;
    border-radius: 14px;
    background: #fff;
}
.analytics-detail-panel {
    margin: 0 0 16px;
    padding: 18px;
    scroll-margin-top: 18px;
    border: 1px solid #b9cec5;
    border-radius: 14px;
    background: linear-gradient(145deg, #fbfdfc, #f2f7f4);
    box-shadow: 0 8px 24px rgb(24 60 46/8%);
}
.analytics-detail-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 13px;
}
.analytics-detail-head h3,
.analytics-detail-head p {
    margin: 0;
}
.analytics-detail-head h3 {
    color: #173f32;
}
.analytics-detail-head p {
    margin-top: 4px;
    color: #68736f;
    font-size: 0.8rem;
}
.analytics-detail-head > a {
    flex: 0 0 auto;
    padding: 7px 10px;
    border: 1px solid #ccd9d3;
    border-radius: 8px;
    color: #315b4b;
    background: #fff;
    font-size: 0.76rem;
    font-weight: 750;
    text-decoration: none;
}
.analytics-panel.analytics-wide {
    grid-column: span 2;
}
.analytics-panel h3 {
    margin: 0 0 15px;
    color: #173f32;
    font-size: 1rem;
}
.analytics-bars,
.analytics-funnel,
.analytics-ranked {
    display: grid;
    grid-gap: 9px;
    gap: 9px;
}
.analytics-bar-row {
    display: grid;
    grid-template-columns: 58px minmax(90px, 1fr) 40px 76px;
    align-items: center;
    grid-gap: 9px;
    gap: 9px;
    color: #65706c;
    font-size: 0.75rem;
    text-decoration: none;
}
.analytics-bar-row:focus-visible,
.analytics-bar-row:hover {
    color: #204b3b;
    background: #f6f9f7;
}
.analytics-bar-row > div {
    height: 8px;
    overflow: hidden;
    border-radius: 99px;
    background: #edf1ef;
}
.analytics-bar-row i,
.analytics-ranked i {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg, #174f3b, #c8a34e);
}
.analytics-bar-row strong {
    color: #1f4437;
    text-align: right;
}
.analytics-bar-row small {
    white-space: nowrap;
}
.analytics-funnel-row {
    display: grid;
    grid-template-columns: 1fr auto;
    grid-gap: 2px 12px;
    gap: 2px 12px;
    padding: 9px 11px;
    border-radius: 9px;
    color: inherit;
    background: #f4f7f5;
    text-decoration: none;
}
.analytics-funnel-row:focus-visible,
.analytics-funnel-row:hover {
    background: #e8f0ec;
}
.analytics-funnel-row span,
.analytics-funnel-row strong {
    color: #244a3d;
    font-weight: 750;
}
.analytics-funnel-row small {
    grid-column: 1/-1;
    color: #7a837f;
}
.analytics-ranked > a {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    grid-gap: 8px;
    gap: 8px;
    padding-bottom: 7px;
    overflow: hidden;
    color: inherit;
    text-decoration: none;
}
.analytics-ranked > a:focus-visible span,
.analytics-ranked > a:hover span {
    color: #174f3b;
}
.analytics-ranked span {
    overflow: hidden;
    color: #4d5955;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.analytics-ranked strong {
    color: #244a3d;
}
.analytics-ranked i {
    position: absolute;
    bottom: 0;
    left: 0;
    height: 3px;
}
.analytics-table-wrap {
    overflow-x: auto;
}
.analytics-table-wrap table {
    width: 100%;
    border-collapse: collapse;
}
.analytics-table-wrap td,
.analytics-table-wrap th {
    padding: 9px 10px;
    border-bottom: 1px solid #e8ecea;
    text-align: left;
}
.analytics-table-wrap th {
    color: #65706c;
    font-size: 0.72rem;
    text-transform: uppercase;
}
.analytics-visitor-table {
    min-width: 1500px;
}
.analytics-visitor-table td {
    vertical-align: top;
}
.analytics-detail-link small,
.analytics-detail-link strong,
.analytics-visitor-table td small,
.analytics-visitor-table td strong {
    display: block;
}
.analytics-visitor-table td small {
    margin-top: 4px;
    color: #6d7874;
    line-height: 1.35;
    white-space: nowrap;
}
.analytics-detail-link {
    color: #174f3b;
    text-decoration: none;
}
.analytics-detail-link:focus-visible strong,
.analytics-detail-link:hover strong {
    text-decoration: underline;
}
.analytics-affiliate-list {
    display: grid;
}
.analytics-affiliate-head,
.analytics-affiliate-row {
    display: grid;
    grid-template-columns: minmax(130px, 1fr) repeat(3, minmax(76px, 0.55fr));
    grid-gap: 8px;
    gap: 8px;
    align-items: center;
    padding: 9px 10px;
}
.analytics-affiliate-head {
    color: #65706c;
    border-bottom: 1px solid #dfe6e2;
    font-size: 0.72rem;
    font-weight: 750;
    text-transform: uppercase;
}
.analytics-affiliate-row {
    color: #4d5955;
    border-bottom: 1px solid #e8ecea;
    text-decoration: none;
}
.analytics-affiliate-row:focus-visible,
.analytics-affiliate-row:hover {
    color: #174f3b;
    background: #f2f7f4;
}
.analytics-empty,
.analytics-privacy {
    color: #6c7773;
    font-size: 0.86rem;
}
.analytics-privacy {
    margin-bottom: 0;
    border-left-color: #87a99b;
    background: #f3f7f5;
}
@media (max-width: 1100px) {
    .analytics-metric-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
    .analytics-layout {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}
@media (max-width: 700px) {
    .site-analytics-report .reports-head {
        align-items: stretch;
    }
    .analytics-range {
        align-self: flex-start;
    }
    .analytics-actions {
        align-items: flex-start;
        flex-direction: column;
    }
    .analytics-metric-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .analytics-layout {
        grid-template-columns: 1fr;
    }
    .analytics-panel.analytics-wide {
        grid-column: auto;
    }
    .analytics-bar-row {
        grid-template-columns: 52px minmax(70px, 1fr) 32px;
    }
    .analytics-bar-row small {
        display: none;
    }
    .analytics-detail-head {
        align-items: stretch;
        flex-direction: column;
    }
    .analytics-detail-head > a {
        align-self: flex-start;
    }
    .analytics-affiliate-head,
    .analytics-affiliate-row {
        grid-template-columns: minmax(110px, 1fr) repeat(3, 58px);
        font-size: 0.72rem;
    }
}
.brand {
    flex-basis: 650px;
}
.storefront-refresh {
    --store-ivory: #f7f4ed;
    --store-ink: #10231a;
    --store-green: #082b1c;
    --store-gold: #caa453;
    overflow: hidden;
    background: var(--store-ivory);
}
.storefront-refresh .container {
    width: min(100% - 48px, 1216px);
}
.storefront-refresh .hero {
    min-height: 660px;
    isolation: isolate;
    background: radial-gradient(circle at 76% 38%, rgba(213, 178, 95, 0.2), transparent 25rem), linear-gradient(120deg, #448422, #1c5023 58%, #357725)
}
.storefront-refresh .hero:before {
    content: "";
    position: absolute;
    width: 560px;
    height: 560px;
    right: -120px;
    top: -190px;
    border: 1px solid rgba(217, 184, 108, 0.18);
    border-radius: 50%;
    box-shadow:
        0 0 0 90px rgba(217, 184, 108, 0.035),
        0 0 0 180px rgba(217, 184, 108, 0.025);
}
.storefront-refresh .hero .mandala {
    opacity: 0.07;
    filter: saturate(0.45);
}
.storefront-refresh .hero-grid {
    width: min(100% - 48px, 1216px);
    grid-template-columns: minmax(0, 1.08fr) minmax(360px, 0.92fr);
    gap: clamp(48px, 7vw, 104px);
    transform: none;
}
.storefront-refresh .eyebrow,
.storefront-refresh .section-kicker {
    font-family: Inter, Arial, sans-serif;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 2.7px;
    line-height: 1.2;
    text-transform: uppercase;
}
.storefront-refresh .eyebrow {
    padding: 9px 14px;
    border-color: rgba(221, 188, 111, 0.42);
    color: #e2c274;
    background: rgba(255, 255, 255, 0.035);
}
.storefront-refresh .hero h1 {
    max-width: 680px;
    margin: 27px 0 8px;
    font-size: clamp(54px, 6.6vw, 88px);
    font-weight: 500;
    letter-spacing: -3.2px;
    line-height: 0.94;
}
.storefront-refresh .hero h2 {
    margin-bottom: 24px;
    font-size: clamp(29px, 3.2vw, 43px);
}
.storefront-refresh .hero p {
    max-width: 620px;
    margin-bottom: 28px;
    padding: 0;
    border: 0;
    color: rgba(255, 255, 255, 0.76);
    font-size: clamp(16px, 1.55vw, 19px);
    line-height: 1.7;
}
.storefront-refresh .hero-actions {
    display: flex;
    align-items: center;
    gap: 24px;
    flex-wrap: wrap;
}
.storefront-refresh .cta {
    min-height: 52px;
    padding: 0 25px;
    background: #d7b35e;
    color: #102218;
    font-size: 15px;
    letter-spacing: 0.1px;
    box-shadow: 0 14px 32px rgba(0, 0, 0, 0.16);
    transition:
        transform 0.2s ease,
        background 0.2s ease,
        box-shadow 0.2s ease;
}
.storefront-refresh .cta:hover {
    transform: translateY(-2px);
    background: #e3c170;
    box-shadow: 0 18px 38px rgba(0, 0, 0, 0.22);
}
.storefront-refresh .text-link {
    color: rgba(255, 255, 255, 0.82);
    font-size: 14px;
    font-weight: 800;
}
.storefront-refresh .text-link:hover {
    color: #f1d48c;
}
.storefront-refresh .trust-row {
    gap: 0;
    margin-top: 34px;
}
.storefront-refresh .trust-row span {
    position: relative;
    padding: 0 20px;
    border: 0;
    border-radius: 0;
    background: none;
    color: rgba(255, 255, 255, 0.7);
    font-size: 12px;
    letter-spacing: 0.45px;
}
.storefront-refresh .trust-row span:first-child {
    padding-left: 0;
}
.storefront-refresh .trust-row span + span:before {
    content: "";
    position: absolute;
    left: 0;
    top: 1px;
    width: 1px;
    height: 14px;
    background: rgba(255, 255, 255, 0.2);
}
.storefront-refresh .hero-product {
    position: relative;
    width: min(100%, 455px);
    padding: 12px;
    border: 1px solid rgba(255, 255, 255, 0.22);
    border-radius: 30px;
    background: rgba(255, 255, 255, 0.96);
    box-shadow: 0 40px 80px rgba(0, 0, 0, 0.3);
}
.storefront-refresh .hero-product:before {
    content: "";
    position: absolute;
    inset: -14px;
    z-index: -1;
    border: 1px solid rgba(215, 179, 94, 0.22);
    border-radius: 40px;
}
.storefront-refresh .hero-product img {
    border-radius: 21px;
}
.storefront-refresh .product-note {
    position: absolute;
    left: -42px;
    bottom: 28px;
    padding: 13px 17px;
    border: 1px solid rgba(215, 179, 94, 0.4);
    border-radius: 13px;
    background: rgba(7, 38, 25, 0.94);
    color: rgba(255, 255, 255, 0.68);
    font-size: 11px;
    line-height: 1.45;
    letter-spacing: 0.3px;
    box-shadow: 0 16px 38px rgba(0, 0, 0, 0.22);
}
.storefront-refresh .product-note b {
    color: #f2d38b;
    font-size: 12px;
}
.storefront-refresh .section {
    padding: 82px 0;
}
.storefront-refresh .section-kicker {
    margin: 0 0 14px;
    color: #9c762c;
    text-align: center;
}
.storefront-refresh .section-kicker-light {
    color: #d9b967;
}
.storefront-refresh .section-title {
    max-width: 820px;
    margin: 0 auto 18px;
    font-size: clamp(35px, 4.3vw, 54px);
    font-weight: 500;
    letter-spacing: -1.6px;
}
.storefront-refresh .lead {
    max-width: 720px;
    margin-bottom: 44px;
    color: #607068;
    font-size: 17px;
}
.storefront-refresh .grid {
    gap: 18px;
}
.storefront-refresh .card {
    position: relative;
    min-height: 184px;
    padding: 28px;
    border: 1px solid rgba(11, 47, 31, 0.1);
    border-radius: 18px;
    box-shadow: 0 12px 35px rgba(23, 47, 36, 0.055);
    transition:
        transform 0.2s ease,
        box-shadow 0.2s ease,
        border-color 0.2s ease;
}
.storefront-refresh .card:hover {
    transform: translateY(-4px);
    border-color: rgba(202, 164, 83, 0.42);
    box-shadow: 0 20px 44px rgba(23, 47, 36, 0.09);
}
.storefront-refresh .card-index {
    display: block;
    margin-bottom: 28px;
    color: #b89446;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 2px;
}
.storefront-refresh .card h3 {
    font-size: 21px;
    line-height: 1.2;
}
.storefront-refresh .card p {
    font-size: 14px;
}
.storefront-refresh .check-card {
    min-height: 0;
    padding: 25px 26px 25px 62px;
    border-left: 1px solid rgba(11, 47, 31, 0.1);
}
.storefront-refresh .check-card:before {
    content: "✓";
    position: absolute;
    left: 24px;
    top: 27px;
    width: 24px;
    height: 24px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: rgba(202, 164, 83, 0.14);
    color: #9a742b;
    font-size: 12px;
    font-weight: 900;
}
.storefront-refresh .offer-section {
    background: #f1eee6;
}
.storefront-refresh .offer {
    margin-top: 42px;
}
.storefront-refresh .product-offer {
    grid-template-columns: 0.95fr 1.05fr;
    gap: clamp(32px, 6vw, 78px);
    padding: clamp(34px, 5vw, 62px);
    border: 0;
    border-radius: 28px;
    background: linear-gradient(128deg, #105e3d, #033c25);
    box-shadow: 0 25px 65px rgba(14, 42, 29, 0.18);
}
.storefront-refresh .product-offer img {
    max-height: 410px;
    filter: drop-shadow(0 22px 24px rgba(0, 0, 0, 0.25));
}
.storefront-refresh .product-offer h2 {
    margin: 0 0 8px;
    font-size: clamp(31px, 4vw, 48px);
    font-weight: 500;
}
.storefront-refresh .product-offer p {
    max-width: 520px;
    color: rgba(255, 255, 255, 0.72);
    line-height: 1.65;
}
.storefront-refresh .product-offer .price {
    color: #e5c677;
}
.storefront-refresh .product-offer .cta {
    margin-top: 14px;
}
.storefront-refresh .ribbon {
    right: 38px;
    padding: 10px 16px;
    border-radius: 0 0 11px 11px;
    background: #d3ad56;
    color: #122419;
    font-size: 11px;
    letter-spacing: 1px;
}
.storefront-refresh .dark-section {
    padding: 84px 0;
    background: #105e3d;
}
.storefront-refresh .dark-section .section-title {
    margin-bottom: 42px;
}
.storefront-refresh .problem-card {
    border-radius: 18px;
    background: #103727;
    border-color: rgba(255, 255, 255, 0.1);
    box-shadow: none;
}
.storefront-refresh .problem-card img {
    aspect-ratio: 1.2;
    filter: saturate(0.82);
    transition: transform 0.35s ease;
}
.storefront-refresh .problem-card:hover img {
    transform: scale(1.025);
}
.storefront-refresh .problem-card h3 {
    padding: 19px 16px 21px;
    font-size: 18px;
    font-weight: 500;
}
.storefront-refresh .ingredients {
    background: #0d3022;
}
.storefront-refresh .ingredient-card {
    padding: 25px 24px;
    border-radius: 16px;
    background: rgba(255, 255, 255, 0.055);
    box-shadow: none;
}
.storefront-refresh .ingredient-card h3 {
    margin: 0 0 7px;
    font-size: 20px;
    font-weight: 500;
}
.storefront-refresh .ingredient-card p {
    font-size: 12px;
    letter-spacing: 0.4px;
}
.storefront-refresh .gold-title {
    color: #f4ead0 !important;
}
.storefront-refresh .step-card {
    position: relative;
    border: 1px solid rgba(11, 47, 31, 0.09);
    border-radius: 18px;
    box-shadow: 0 12px 35px rgba(23, 47, 36, 0.06);
}
.storefront-refresh .step-card img {
    aspect-ratio: 4/4.65;
    filter: saturate(0.78);
}
.storefront-refresh .step-card b {
    position: absolute;
    top: 14px;
    left: 14px;
    padding: 8px 11px;
    border-radius: 999px;
    background: rgba(8, 43, 28, 0.9);
    color: #ead18f;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 1px;
}
.storefront-refresh .step-card h3 {
    min-height: 83px;
    margin: 0;
    padding: 20px;
    font-size: 19px;
    font-weight: 500;
    line-height: 1.35;
}
.storefront-refresh .testimonial-section {
    background: #eeebe3;
}
.storefront-refresh .testimonial-card {
    position: relative;
    min-height: 270px;
    padding: 30px;
    border: 1px solid rgba(11, 47, 31, 0.08);
    border-radius: 18px;
    box-shadow: none;
}
.storefront-refresh .testimonial-card:before {
    content: "“";
    position: absolute;
    right: 25px;
    top: 15px;
    color: rgba(202, 164, 83, 0.22);
    font-family: Georgia, serif;
    font-size: 76px;
    line-height: 1;
}
.storefront-refresh .testimonial-card img {
    width: 64px;
    height: 64px;
    border: 2px solid #d0aa54;
}
.storefront-refresh .testimonial-card p {
    min-height: 82px;
    margin: 24px 0 18px;
}
.storefront-refresh .testimonial-card h3 {
    margin: 0;
    color: #173526;
    font-size: 17px;
}
.storefront-refresh .final-offer {
    padding: 100px 0;
    background: linear-gradient(128deg, #1e392d, #225c43);
}
.storefront-refresh .final-offer .mandala {
    opacity: 0.055;
}
.storefront-refresh .final-offer h2 {
    font-size: clamp(39px, 5.5vw, 67px);
    font-weight: 500;
    letter-spacing: -2px;
}
.storefront-refresh .final-offer .price {
    margin: 18px 0 28px;
    font-size: 34px;
}
.footer {
    padding: 48px 0;
    background: #04170f;
}
.footer-inner {
    align-items: center;
    font-size: 13px;
    line-height: 2;
}
.footer-brand {
    line-height: 1.5;
}
.footer-brand img {
    width: 76px;
    height: 48px;
}
.footer a:hover {
    color: #f4d87c;
}
@media (max-width: 980px) {
    .storefront-refresh .hero {
        padding: 68px 0 78px;
    }
    .storefront-refresh .hero-grid {
        grid-template-columns: 1fr;
        gap: 52px;
    }
    .storefront-refresh .hero-copy {
        max-width: 720px;
        margin: 0 auto;
        text-align: center;
    }
    .storefront-refresh .hero p {
        margin-inline: auto;
    }
    .storefront-refresh .hero-actions,
    .storefront-refresh .trust-row {
        justify-content: center;
    }
    .storefront-refresh .hero-product {
        width: min(100%, 520px);
    }
    .storefront-refresh .product-offer {
        grid-template-columns: 1fr;
        text-align: center;
    }
    .storefront-refresh .product-offer p {
        margin-inline: auto;
    }
}
@media (max-width: 640px) {
    .nav-inner,
    .site-header {
        min-height: 74px;
    }
    .nav-inner {
        width: min(100% - 28px, 1810px);
    }
    .brand {
        gap: 10px;
        font-size: 12px;
        letter-spacing: 1.5px;
    }
    .brand img {
        width: 78px;
        height: 46px;
    }
    .brand small {
        margin-top: 3px;
        font-size: 7px;
        letter-spacing: 1.5px;
    }
    .menu-button {
        width: 42px;
        height: 42px;
    }
    .storefront-refresh .container,
    .storefront-refresh .hero-grid {
        width: min(100% - 32px, 1216px);
    }
    .storefront-refresh .hero {
        min-height: auto;
        padding: 54px 0 64px;
    }
    .storefront-refresh .hero h1 {
        margin-top: 23px;
        font-size: clamp(46px, 15vw, 66px);
        letter-spacing: -2.2px;
    }
    .storefront-refresh .hero h2 {
        font-size: 27px;
    }
    .storefront-refresh .hero p {
        font-size: 16px;
    }
    .storefront-refresh .hero-actions {
        gap: 18px;
    }
    .storefront-refresh .hero-actions .cta {
        width: 100%;
    }
    .storefront-refresh .trust-row {
        gap: 9px 0;
    }
    .storefront-refresh .trust-row span {
        padding: 0 12px;
        font-size: 10px;
    }
    .storefront-refresh .hero-product {
        width: calc(100% - 10px);
    }
    .storefront-refresh .product-note {
        left: 12px;
        bottom: 18px;
    }
    .storefront-refresh .dark-section,
    .storefront-refresh .section {
        padding: 64px 0;
    }
    .storefront-refresh .section-title {
        font-size: 36px;
        letter-spacing: -1.2px;
    }
    .storefront-refresh .lead {
        margin-bottom: 34px;
        font-size: 16px;
    }
    .storefront-refresh .card {
        min-height: 0;
        padding: 24px;
    }
    .storefront-refresh .card-index {
        margin-bottom: 18px;
    }
    .storefront-refresh .offer {
        margin-top: 32px;
    }
    .storefront-refresh .product-offer {
        padding: 44px 22px 30px;
        border-radius: 22px;
    }
    .storefront-refresh .ribbon {
        right: 22px;
    }
    .storefront-refresh .problem-card img {
        aspect-ratio: 1.45;
    }
    .storefront-refresh .step-card img {
        aspect-ratio: 1.2;
    }
    .storefront-refresh .step-card h3,
    .storefront-refresh .testimonial-card,
    .storefront-refresh .testimonial-card p {
        min-height: 0;
    }
    .storefront-refresh .final-offer {
        padding: 78px 0;
    }
    .footer-inner {
        display: grid;
    }
}
@media (prefers-reduced-motion: reduce) {
    .storefront-refresh .card,
    .storefront-refresh .cta,
    .storefront-refresh .problem-card img {
        transition: none;
    }
}
.email-broadcast-layout {
    display: grid;
    grid-gap: 20px;
    gap: 20px;
}
.email-broadcast-compose {
    max-width: 760px;
}
.email-broadcast-compose > label {
    display: grid;
    grid-gap: 7px;
    gap: 7px;
    margin: 0 0 16px;
    font-weight: 700;
}
.email-broadcast-compose input,
.email-broadcast-compose select,
.email-broadcast-compose textarea {
    width: 100%;
    box-sizing: border-box;
    border: 1px solid #d1d5db;
    border-radius: 8px;
    padding: 10px 12px;
    font: inherit;
    background: #fff;
}
.email-broadcast-compose textarea {
    resize: vertical;
    min-height: 190px;
}
.broadcast-warning {
    padding: 12px 14px;
    border: 1px solid #f59e0b;
    border-radius: 8px;
    background: #fffbeb;
    color: #92400e;
}
.broadcast-preview {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 16px;
    align-items: baseline;
    padding: 12px 14px;
    border-radius: 8px;
    background: #f3f4f6;
}
.broadcast-preview small {
    color: #6b7280;
}
.broadcast-actions {
    display: grid;
    grid-gap: 12px;
    gap: 12px;
    margin-top: 16px;
}
.broadcast-confirm {
    display: flex !important;
    grid-template-columns: auto 1fr;
    align-items: center;
    gap: 8px !important;
    margin: 0 !important;
    font-weight: 500 !important;
}
.broadcast-confirm input {
    width: auto;
}
.broadcast-notice {
    padding: 10px 12px;
    border-radius: 8px;
    background: #ecfdf5;
    color: #166534;
}
* {
    box-sizing: border-box;
}
body {
    margin: 0;
    background: var(--cream);
    color: var(--ink);
    font-family: Inter, Arial, sans-serif;
}
a {
    color: inherit;
    text-decoration: none;
}
button,
input,
select,
textarea {
    font: inherit;
}
button {
    cursor: pointer;
}
.container {
    width: min(100% - 32px, 1350px);
    margin: 0 auto;
}
.nav-inner {
    width: min(100% - 48px, 1810px);
    margin: 0 auto;
}
.site-header {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    z-index: 20;
    min-height: 84px;
    border-bottom: 1px solid rgba(6, 30, 19, 0.1);
    background: rgba(255, 255, 255, 0.92);
    box-shadow: 0 1px 0 rgba(255, 255, 255, 0.7);
    -webkit-backdrop-filter: blur(12px);
    backdrop-filter: blur(12px);
}
.nav-inner {
    min-height: 84px;
    justify-content: space-between;
    gap: 24px;
    overflow: hidden;
}
.brand,
.nav-inner {
    display: flex;
    align-items: center;
}
.brand {
    flex: 0 1 650px;
    min-width: 0;
    gap: 20px;
    color: var(--green);
    font-family: Georgia, serif;
    font-size: 17px;
    font-weight: 800;
    letter-spacing: 3px;
    text-transform: uppercase;
}
.brand img {
    width: 245px;
    height: 85px;
    object-fit: contain;
}
.brand span {
    display: block;
    min-width: 0;
}
.brand b {
    display: block;
    max-width: none;
    line-height: 1.14;
    white-space: nowrap;
}
.brand small {
    display: block;
    margin-top: 5px;
    color: var(--gold);
    font-family: Inter, Arial, sans-serif;
    font-size: 9px;
    font-weight: 900;
    letter-spacing: 3.6px;
}
.logo-dot {
    width: 42px;
    height: 42px;
    border: 2px solid var(--gold);
    border-radius: 50%;
    display: grid;
    place-items: center;
    color: var(--gold);
    font-family: Inter, sans-serif;
    font-size: 12px;
    font-weight: 900;
}
.nav-links {
    flex: 0 0 auto;
    min-width: 0;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 3px;
    color: #4b5563;
    font-size: 11px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.9px;
}
.nav-links a {
    padding: 11px 13px;
    border-radius: 999px;
    white-space: nowrap;
}
.nav-links a.active,
.nav-links a:hover {
    background: rgba(197, 160, 89, 0.1);
    color: var(--gold);
}
.nav-links a:nth-last-child(-n + 3) {
    border: 0;
    color: var(--gold);
    padding-inline: 13px;
}
.nav-links a:last-child {
    border: 1px solid rgba(197, 160, 89, 0.55);
}
.menu-button {
    display: none;
    width: 46px;
    height: 46px;
    border: 0;
    background: transparent;
    padding: 8px;
}
.menu-button span {
    display: block;
    height: 3px;
    margin: 6px 0;
    border-radius: 999px;
    background: #111827;
}
.hero {
    position: relative;
    min-height: 615px;
    overflow: hidden;
    background: linear-gradient(90deg, rgba(6, 30, 19, 0.98), rgba(6, 30, 19, 0.92)),
        radial-gradient(circle at 65% 55%, rgba(197, 160, 89, 0.18), transparent 25rem), var(--green);
    color: white;
    display: grid;
    place-items: center;
}
.final-offer .mandala,
.hero .mandala {
    position: absolute;
    inset: 0;
    opacity: 0.2;
    background: url(../../../../img.magnific.com/free-vector/luxury-gold-mandala-background_1017-38010eebb.jpg?w=1380)
        50% / cover;
    mix-blend-mode: overlay;
    pointer-events: none;
}
.hero-grid {
    position: relative;
    z-index: 1;
    width: min(100% - 32px, 1136px);
    display: grid;
    grid-template-columns: 1fr 450px;
    grid-gap: 60px;
    gap: 60px;
    align-items: center;
    transform: translateY(54px);
}
.hero-copy {
    text-align: left;
}
.hero-product {
    justify-self: end;
    width: min(100%, 450px);
    padding: 18px;
    border-radius: 38px;
    background: #fff;
    box-shadow: 0 30px 70px rgba(0, 0, 0, 0.28);
}
.hero-product img {
    display: block;
    width: 100%;
    border-radius: 28px;
}
.eyebrow {
    display: inline-flex;
    padding: 10px 18px;
    border: 1px solid rgba(197, 160, 89, 0.55);
    border-radius: 999px;
    color: #f4d87c;
    font-weight: 900;
    letter-spacing: 2px;
    font-size: 13px;
    text-transform: uppercase;
}
.eyebrow.red {
    background: linear-gradient(90deg, #dc2626, #ef4444);
    border: 0;
    color: white;
}
h1,
h2,
h3 {
    font-family: Georgia, serif;
}
.hero h1 {
    margin: 32px 0 8px;
    font-size: clamp(50px, 5vw, 70px);
    line-height: 0.96;
}
.hero h2 {
    margin: 0 0 24px;
    color: #e2c27a;
    font-size: clamp(34px, 4vw, 52px);
    font-weight: 400;
}
.hero p,
.lead {
    color: #5f6864;
    font-size: 18px;
    line-height: 1.7;
}
.hero p {
    max-width: 650px;
    margin: 0 0 34px;
    padding-left: 18px;
    border-left: 4px solid var(--gold);
    color: #e5e7eb;
    font-size: 20px;
}
.cta {
    border: 0;
    border-radius: 999px;
    min-height: 54px;
    padding: 0 32px;
    background: linear-gradient(90deg, #d0ab58, #f5c400);
    color: #18150a;
    font-size: 18px;
    font-weight: 900;
    gap: 12px;
}
.cta,
.cta-secondary {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}
.cta-secondary {
    border: 1px solid #d0d5dd;
    border-radius: 999px;
    min-height: 48px;
    padding: 0 28px;
    background: #fff;
    color: #344054;
    font-size: 16px;
    font-weight: 700;
    margin-bottom: 12px;
    width: 100%;
}
.review-bill-table-wrap {
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    margin: 16px 0;
}
.review-bill-items {
    width: 100%;
    min-width: 640px;
    border-collapse: collapse;
    font-size: 12px;
    table-layout: fixed;
}
.review-bill-items td,
.review-bill-items th {
    border: 1px solid #d0d5dd;
    padding: 6px 5px;
    text-align: left;
    overflow-wrap: break-word;
}
.review-bill-items td:first-child,
.review-bill-items th:first-child {
    width: 6%;
}
.review-bill-items td:nth-child(2),
.review-bill-items th:nth-child(2) {
    width: 24%;
}
.review-bill-items td:nth-child(3),
.review-bill-items th:nth-child(3) {
    width: 12%;
}
.review-bill-items td:nth-child(4),
.review-bill-items td:nth-child(5),
.review-bill-items th:nth-child(4),
.review-bill-items th:nth-child(5) {
    width: 10%;
}
.review-bill-items td:nth-child(6),
.review-bill-items td:nth-child(7),
.review-bill-items th:nth-child(6),
.review-bill-items th:nth-child(7) {
    width: 8%;
}
.review-bill-items td:nth-child(8),
.review-bill-items td:nth-child(9),
.review-bill-items th:nth-child(8),
.review-bill-items th:nth-child(9) {
    width: 11%;
}
.review-bill-note {
    font-size: 12px;
    color: #667085;
    margin-bottom: 12px;
}
.order-layout-single {
    max-width: 720px;
    margin: 0 auto;
}
.web-bill {
    border: 2px solid #111;
    background: #fff;
    padding: 20px;
    margin-bottom: 20px;
    font-family: Arial, Helvetica, sans-serif;
    color: #111;
}
.web-bill-top-strip {
    display: flex;
    justify-content: space-between;
    border-bottom: 2px solid #111;
    padding-bottom: 10px;
    margin-bottom: 14px;
    font-size: 13px;
    font-weight: 800;
}
.web-bill-brand {
    text-align: center;
    margin-bottom: 16px;
}
.web-bill-brand h2 {
    margin: 0 0 4px;
    font-size: 20px;
    text-transform: uppercase;
    color: #111;
}
.web-bill-brand p {
    margin: 0;
    font-size: 12px;
    font-weight: 700;
    color: #333;
}
.web-bill-info-grid {
    display: grid;
    grid-template-columns: 1fr 150px;
    grid-gap: 14px;
    gap: 14px;
    margin-bottom: 16px;
    align-items: stretch;
}
.web-customer-box {
    border: 2px solid #111;
    padding: 12px;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.5;
}
.web-customer-box p {
    margin: 0 0 5px;
}
.web-customer-box p:last-child {
    margin-bottom: 0;
}
.web-bill-boxes {
    display: flex;
    flex-direction: column;
    gap: 10px;
    font-size: 12px;
    text-align: center;
}
.web-bill-boxes div {
    border: 2px solid #111;
    min-height: 38px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 800;
    padding: 0 6px;
}
.web-bill-boxes p {
    margin: 6px 0 0;
    font-size: 11px;
    font-weight: 700;
}
.web-bill-footer {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    border-top: 2px solid #111;
    margin-top: 14px;
    padding-top: 12px;
    font-size: 12px;
    gap: 12px;
}
.web-bill-footer > div > strong {
    display: block;
}
.web-bill-footer > div > span {
    display: block;
    margin-top: 4px;
    font-size: 10px;
    color: #555;
}
.web-bill-totals {
    border: 1.5px solid #111;
    border-top: 0;
}
.web-bill-totals-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 8px 12px;
    border-top: 1px solid #111;
    font-size: 13px;
}
.web-bill-totals-row span {
    font-weight: 700;
    color: #111;
}
.web-bill-totals-row strong {
    font-weight: 800;
    font-size: 14px;
    color: #111;
}
@media (max-width: 640px) {
    .web-bill-info-grid {
        grid-template-columns: 1fr;
    }
}
.cta.green {
    background: var(--green);
    color: white;
    border-radius: 10px;
    font-size: 15px;
}
.section {
    padding: 76px 0;
}
.section-title {
    margin: 0 0 16px;
    color: var(--green);
    font-size: clamp(34px, 5vw, 54px);
    line-height: 1.05;
    text-align: center;
}
.lead {
    max-width: 780px;
    margin: 0 auto 34px;
    text-align: center;
}
.grid {
    display: grid;
    grid-gap: 20px;
    gap: 20px;
}
.grid-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}
.grid-4 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}
.card {
    background: white;
    border: 1px solid var(--line);
    border-radius: 12px;
    padding: 24px;
    box-shadow: 0 12px 30px rgba(15, 23, 42, 0.06);
}
.card h3 {
    margin: 0 0 8px;
    color: var(--green);
    font-size: 24px;
}
.card p {
    margin: 0;
    color: var(--muted);
    line-height: 1.55;
}
.policy-body > div + div {
    margin-top: 22px;
}
.trust-row {
    display: flex;
    gap: 14px;
    margin-top: 30px;
}
.trust-row span {
    padding: 11px 18px;
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.06);
    color: #e5e7eb;
    font-weight: 800;
}
.offer {
    position: relative;
    background: white;
    border: 1px solid rgba(197, 160, 89, 0.35);
    border-radius: 18px;
    padding: 34px;
    display: grid;
    grid-template-columns: 340px 1fr;
    align-items: center;
    grid-gap: 28px;
    gap: 28px;
}
.offer img {
    width: 100%;
    max-height: 360px;
    object-fit: contain;
}
.offer-section {
    background: linear-gradient(#fff, var(--cream));
}
.product-offer {
    background: linear-gradient(135deg, #061e13, #20242b);
    color: white;
    overflow: hidden;
}
.product-offer h2,
.ribbon {
    color: white;
}
.ribbon {
    position: absolute;
    top: 0;
    right: 32px;
    padding: 9px 18px;
    border-radius: 0 0 14px 14px;
    background: linear-gradient(#c5a059, #eab308);
}
.price,
.ribbon {
    font-weight: 900;
}
.price {
    font-size: 42px;
    color: var(--green);
}
.strike {
    color: #9ca3af;
    text-decoration: line-through;
    font-size: 24px;
    margin-right: 10px;
}
.badge {
    display: inline-flex;
    padding: 6px 10px;
    border-radius: 999px;
    background: #ecfdf5;
    color: #168044;
    font-size: 12px;
    font-weight: 900;
}
.dark-section {
    position: relative;
    overflow: hidden;
    padding: 78px 0;
    background: var(--green);
    color: white;
}
.dark-section .section-title,
.dark-section h3 {
    color: white;
}
.ingredient-card,
.problem-card,
.step-card,
.testimonial-card {
    overflow: hidden;
    border-radius: 18px;
    background: white;
    box-shadow: 0 16px 34px rgba(15, 23, 42, 0.12);
}
.problem-card {
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(197, 160, 89, 0.25);
}
.problem-card img {
    width: 100%;
    aspect-ratio: 1;
    object-fit: cover;
    display: block;
}
.problem-card h3 {
    padding: 18px;
    margin: 0;
    text-align: center;
}
.check-card {
    border-left: 4px solid var(--gold);
}
.gold-title {
    color: var(--gold) !important;
}
.ingredient-card {
    padding: 24px;
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(197, 160, 89, 0.25);
}
.ingredient-card p {
    color: #d1d5db;
}
.step-card img {
    width: 100%;
    aspect-ratio: 3/4;
    object-fit: cover;
    display: block;
}
.step-card b,
.step-card h3 {
    display: block;
    padding: 0 18px;
}
.step-card b {
    padding-top: 18px;
    color: var(--gold);
}
.step-card h3 {
    padding-bottom: 18px;
    color: var(--green);
}
.testimonial-section {
    background: linear-gradient(var(--cream), #f1ede3);
}
.testimonial-card {
    padding: 22px;
}
.testimonial-card img {
    width: 84px;
    height: 84px;
    border-radius: 999px;
    object-fit: cover;
    border: 3px solid var(--gold);
}
.testimonial-card p {
    color: #4b5563;
    line-height: 1.65;
}
.final-offer {
    position: relative;
    overflow: hidden;
    padding: 88px 0;
    background: var(--green);
    color: white;
    text-align: center;
}
.final-offer .container {
    position: relative;
    z-index: 1;
}
.final-offer h2 {
    margin: 0;
    font-size: clamp(42px, 6vw, 70px);
    line-height: 1.05;
}
.final-offer .price {
    color: #f2d388;
}
.footer {
    background: #184628;
    color: #d1d5db;
    padding: 40px 0;
}
.footer-inner {
    display: flex;
    justify-content: space-between;
    gap: 24px;
    flex-wrap: wrap;
}
.footer strong {
    color: #f4d87c;
}
.footer a {
    margin-right: 16px;
}
.footer-brand img {
   width: 205px;
    height: 83px;
    object-fit: contain;
    display: block;
    margin-bottom: 10px;
    filter: invert(1);
    mix-blend-mode: screen;
}
.form-page {
    min-height: 100vh;
    padding: 27px 0 28px;
    display: grid;
    place-items: start center;
    background: linear-gradient(90deg, rgba(6, 30, 19, 0.98), rgba(6, 30, 19, 0.9)), var(--green);
}
.form-card {
    width: min(100% - 32px, 450px);
    background: white;
    border-radius: 28px;
    padding: 42px 40px 66px;
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.24);
}
.form-card h1 {
    margin: 0 0 10px;
    color: var(--green);
    text-align: center;
    font-size: 29px;
    white-space: nowrap;
}
.form-card p {
    margin: 0 0 26px;
    color: var(--muted);
    text-align: center;
    line-height: 1.5;
}
.login-logo {
    display: block;
    width: 92px;
    height: 56px;
    object-fit: contain;
    margin: 0 auto 28px;
}
.field {
    display: block;
    margin-bottom: 16px;
}
.field span {
    display: block;
    margin-bottom: 8px;
    font-size: 14px;
    font-weight: 700;
}
.field small,
.partner-field small {
    display: block;
    margin-top: 6px;
    color: #64748b;
    font-size: 12px;
    font-weight: 600;
    line-height: 1.45;
}
.field small.field-error {
    color: #b91c1c;
}
.gst-invoice-toggle {
    display: flex;
    align-items: center;
    gap: 10px;
}
.indian-date-input {
    display: flex;
    gap: 6px;
}
.indian-date-input select {
    flex: 1 1;
    min-width: 0;
}
.indian-date-input select:first-child {
    flex: 0.8 1;
}
.indian-date-input select:nth-child(3) {
    flex: 1.1 1;
}
.gst-invoice-toggle input[type="checkbox"] {
    width: 18px;
    height: 18px;
    flex-shrink: 0;
}
.gst-invoice-toggle span {
    margin-bottom: 0;
}
.staff-login-alt-hint {
    display: block;
    margin-top: 6px;
    font-size: 12px;
    font-weight: 500;
    color: #64748b;
}
.phone-input-group {
    display: flex !important;
    align-items: stretch;
    margin-bottom: 0 !important;
    border: 1px solid var(--line);
    border-radius: 9px;
    overflow: hidden;
    background: white;
}
.phone-input-prefix {
    display: flex;
    align-items: center;
    padding: 0 10px;
    background: #f3f4f6;
    color: #374151;
    font-weight: 700 !important;
    font-size: 15px !important;
    border-right: 1px solid var(--line);
    flex-shrink: 0;
}
.phone-input-group input {
    border: 0 !important;
    border-radius: 0 !important;
    flex: 1 1;
}
input,
select,
textarea {
    width: 100%;
    border: 1px solid var(--line);
    border-radius: 9px;
    background: white;
    color: #111827;
    outline: none;
}
input,
select {
    height: 39px;
    padding: 0 12px;
}
.orders-table {
    min-width: 1580px;
}
.orders-table th {
    font-size: 11px;
}
.orders-table td,
.orders-table th {
    padding-right: 8px;
    padding-left: 8px;
}
.orders-table td {
    font-size: 12px;
}
.orders-tracking-cell {
    width: 132px;
}
.order-tracking-input {
    width: 128px;
    min-width: 128px;
    padding: 0 7px;
    font-size: 12px;
}
.orders-delivery-cell {
    width: 118px;
    min-width: 118px;
}
.orders-delivery-cell select {
    width: 114px;
    min-width: 114px;
    padding: 0 6px;
    font-size: 11px;
}
textarea {
    min-height: 120px;
    padding: 12px;
    resize: vertical;
}
.input-shell {
    position: relative;
}
.input-shell input {
    height: 58px;
    padding-left: 48px;
    border-radius: 12px;
    background: #f8fafc;
}
.input-shell .field-icon {
    position: absolute;
    left: 17px;
    top: 50%;
    transform: translateY(-50%);
    z-index: 1;
    margin: 0;
    color: #9ca3af;
    font-size: 18px;
    line-height: 1;
}
.input-shell .eye-icon {
    left: auto;
    right: 17px;
}
.forgot-inline {
    display: block;
    margin: -7px 0 24px;
    color: #b49656;
    font-size: 12px;
    text-align: right;
}
.form-card .cta.green {
    min-height: 61px;
    border-radius: 999px;
    background: linear-gradient(90deg, #d1a64e, #f6c400);
    color: #111827;
    font-size: 18px;
    box-shadow: 0 18px 28px rgba(197, 160, 89, 0.28);
}
.form-links {
    display: flex;
    flex-direction: column;
    gap: 11px;
    margin-top: 22px;
    color: var(--muted);
    font-size: 14px;
    text-align: center;
}
.form-links strong {
    color: #b49656;
}
.admin-topbar {
    min-height: 66px;
    padding: 16px 32px;
    background: var(--green);
    color: white;
    display: flex;
    align-items: center;
    justify-content: space-between;
    box-shadow: 0 5px 17px rgba(0, 0, 0, 0.18);
}
.admin-topbar h1 {
    margin: 0;
    color: var(--gold);
    font-size: 24px;
    letter-spacing: 4px;
    line-height: 1;
}
.top-actions {
    display: flex;
    align-items: center;
    gap: 18px;
}
.owner-badge {
    height: 31px;
    padding: 0 13px;
    border: 1px solid rgba(197, 160, 89, 0.25);
    border-radius: 999px;
    color: #f4d67a;
    font-weight: 900;
    display: inline-flex;
    align-items: center;
}
.logout {
    color: white;
    font-weight: 900;
}
.dashboard {
    width: min(100% - 64px, 1720px);
    margin: 32px auto;
}
.partner-shell {
    padding: 18px;
}
.partner-dashboard .lead {
    margin: 0;
    text-align: left;
}
.partner-dashboard-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 16px;
}
.partner-dashboard-head h2 {
    margin: 0 0 8px;
    color: var(--green);
    font-size: 34px;
}
.partner-tabbar {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0 0 20px;
    padding: 8px;
    border-radius: 10px;
    background: #f0f1f3;
}
.partner-tabbar a {
    min-height: 38px;
    padding: 10px 16px;
    border-radius: 8px;
    color: var(--muted);
    font-size: 13px;
    font-weight: 900;
    display: inline-flex;
    align-items: center;
}
.partner-tabbar a.active {
    background: white;
    color: var(--green);
    box-shadow: 0 1px 4px rgba(15, 23, 42, 0.08);
}
.partner-tab-panel {
    padding: 4px 0 0;
}
.partner-dashboard-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-gap: 18px;
    gap: 18px;
}
.partner-dashboard-card {
    border: 1px solid var(--line);
    border-radius: 12px;
    background: white;
    overflow: hidden;
}
.partner-dashboard-card h3 {
    margin: 0;
    padding: 18px 20px;
    border-bottom: 1px solid var(--line);
    color: var(--green);
    font-size: 22px;
}
.partner-table-title-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    border-bottom: 1px solid var(--line);
    padding: 16px 20px;
}
.partner-table-title-row h3 {
    padding: 0;
    border-bottom: 0;
}
.partner-table-summary {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: flex-end;
    color: #475569;
    font-size: 13px;
    font-weight: 900;
}
.partner-table-summary-item {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    border: 1px solid #e2e8f0;
    border-radius: 999px;
    padding: 6px 10px;
    background: #f8fafc;
}
.partner-table-summary-item.red {
    border-color: #fca5a5;
    background: #fecaca;
    color: #7f1d1d;
}
.partner-table-summary-item.blue {
    border-color: #93c5fd;
    background: #dbeafe;
    color: #1e3a8a;
}
.partner-mini-table {
    min-width: 680px;
}
.partner-mini-table td {
    height: 58px;
}
.partner-mini-table td:first-child,
.partner-mini-table th:first-child {
    width: 64px;
    text-align: center;
}
.partner-mini-table tr.partner-network-row-no-orders td {
    background: #fecaca;
}
.partner-mini-table tr.partner-network-row-recruits-no-orders td {
    background: #dbeafe;
}
.partner-mini-table.partner-mini-table-compact {
    min-width: 0;
    width: auto;
    max-width: 100%;
}
.partner-mini-table-compact td,
.partner-mini-table-compact th {
    padding: 10px 8px;
}
.partner-mini-table-compact td:first-child,
.partner-mini-table-compact th:first-child {
    width: 34px;
    padding-right: 4px;
}
@media (max-width: 640px) {
    .partner-mini-table-compact td,
    .partner-mini-table-compact th {
        padding: 8px 6px;
        font-size: 13px;
    }
    .partner-mini-table-compact td:first-child,
    .partner-mini-table-compact th:first-child {
        width: 28px;
        padding-right: 2px;
    }
}
.partner-payout-metrics {
    margin-bottom: 22px;
}
.partner-payout-card {
    max-width: 920px;
}
.partner-payout-summary {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    grid-gap: 12px;
    gap: 12px;
    padding: 18px;
}
.partner-payout-summary div {
    min-width: 0;
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    padding: 14px;
    background: #f8fafc;
    overflow: hidden;
}
.partner-payout-summary span {
    display: block;
    margin-bottom: 8px;
    color: #64748b;
    font-size: 12px;
    font-weight: 900;
    line-height: 1.15;
    text-transform: uppercase;
}
.partner-payout-summary strong {
    display: block;
    color: #061e13;
    font-size: clamp(16px, 3.8vw, 20px);
    line-height: 1.12;
    overflow-wrap: anywhere;
    word-break: break-word;
}
.partner-payout-summary strong.partner-payout-deduction {
    color: #b91c1c;
}
@media (max-width: 760px) {
    .partner-payout-summary {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
        padding: 14px;
    }
    .partner-payout-summary div {
        padding: 12px 10px;
    }
    .partner-payout-summary span {
        font-size: 11px;
    }
    .partner-payout-summary strong {
        font-size: 18px;
    }
}
@media (max-width: 380px) {
    .partner-payout-summary strong {
        font-size: 16px;
    }
}
.partner-payout-actions {
    padding: 0 18px 18px;
    display: flex;
    justify-content: flex-start;
}
.partner-payout-action {
    min-height: 38px;
    align-items: center;
    justify-content: center;
    text-decoration: none;
}
.partner-section-head {
    margin: 0 0 16px;
}
.partner-section-head h3 {
    margin: 0 0 6px;
    color: var(--green);
    font-size: 26px;
}
.partner-section-head p {
    margin: 0;
    color: var(--muted);
}
.partner-affiliate-page {
    position: relative;
}
.partner-affiliate-subtitle {
    margin: -20px 0 28px;
    color: #667085;
    font-size: 18px;
}
.partner-product-select {
    width: min(100%, 448px);
    display: grid;
    grid-gap: 9px;
    gap: 9px;
    margin: 0 0 28px;
    color: #344054;
    font-size: 14px;
    font-weight: 900;
}
.partner-product-select select {
    height: 52px;
    border: 1px solid rgba(197, 160, 89, 0.5);
    border-radius: 12px;
    color: var(--green);
    font-weight: 900;
}
.partner-affiliate-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(320px, 1fr));
    grid-gap: 24px;
    gap: 24px;
    align-items: start;
}
.partner-affiliate-card {
    max-width: 760px;
    border: 1px solid var(--line);
    border-radius: 14px;
    padding: 24px;
    background: white;
}
.partner-affiliate-card.old-style {
    max-width: none;
    border-color: #edf0f4;
    border-radius: 18px;
    box-shadow: 0 8px 22px rgba(15, 23, 42, 0.04);
}
.partner-affiliate-card h3 {
    margin: 16px 0 8px;
    color: var(--green);
    font-size: 28px;
}
.partner-affiliate-card p {
    margin: 0 0 16px;
    color: var(--muted);
}
.partner-affiliate-card-head {
    display: flex;
    align-items: flex-start;
    gap: 13px;
    margin: 0 0 18px;
}
.partner-affiliate-card-head h2 {
    margin: 0 0 5px;
    color: #1f2937;
    font-family: Inter, Arial, sans-serif;
    font-size: 16px;
    line-height: 1.25;
}
.partner-affiliate-card-head p {
    margin: 0;
    color: #667085;
    font-size: 14px;
}
.affiliate-card-icon {
    width: 30px;
    height: 30px;
    flex: 0 0 30px;
    position: relative;
    display: inline-block;
    color: var(--gold);
}
.affiliate-card-icon.link:after,
.affiliate-card-icon.link:before {
    content: "";
    position: absolute;
    width: 16px;
    height: 9px;
    border: 2px solid;
    border-radius: 999px;
    transform: rotate(-35deg);
}
.affiliate-card-icon.link:before {
    left: 2px;
    top: 7px;
}
.affiliate-card-icon.link:after {
    right: 2px;
    bottom: 7px;
}
.affiliate-card-icon.people:before {
    content: "";
    position: absolute;
    left: 3px;
    top: 3px;
    width: 10px;
    height: 10px;
    border: 2px solid;
    border-radius: 999px;
    box-shadow:
        12px 0 0 -2px white,
        12px 0 0 0 currentColor;
}
.affiliate-card-icon.people:after {
    content: "";
    position: absolute;
    left: 1px;
    bottom: 2px;
    width: 25px;
    height: 13px;
    border: 2px solid;
    border-top-left-radius: 999px;
    border-top-right-radius: 999px;
    border-bottom: 0;
}
.affiliate-card-icon.magnet:before {
    content: "";
    position: absolute;
    left: 5px;
    top: 3px;
    width: 18px;
    height: 21px;
    border: 4px solid;
    border-top: 0;
    border-radius: 0 0 999px 999px;
}
.affiliate-card-icon.magnet:after {
    content: "";
    position: absolute;
    left: 5px;
    top: 2px;
    width: 18px;
    height: 5px;
    border-left: 4px solid;
    border-right: 4px solid;
}
.affiliate-link-box {
    display: block;
    margin: 16px 0;
    padding: 14px 16px;
    border: 1px solid #dbe4ee;
    border-radius: 10px;
    background: #f8fafc;
    color: #17212c;
    font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
    font-size: 13px;
    line-height: 1.45;
    overflow-wrap: anywhere;
}
.affiliate-link-box:hover {
    color: #1d4ed8;
    text-decoration: underline;
}
.affiliate-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
}
.affiliate-actions button {
    min-height: 39px;
    border: 0;
    border-radius: 8px;
    padding: 0 16px;
    background: rgba(197, 160, 89, 0.12);
    color: var(--gold);
    font-size: 14px;
    font-weight: 900;
}
.affiliate-actions button:nth-child(2) {
    background: #f2f4f7;
    color: #344054;
}
.affiliate-actions button:nth-child(3) {
    background: #eff6ff;
    color: #1d4ed8;
}
.affiliate-actions .affiliate-print-qr {
    min-height: 39px;
    display: inline-flex;
    align-items: center;
    border-radius: 8px;
    padding: 0 16px;
    background: var(--green);
    color: white;
    font-size: 14px;
    font-weight: 900;
    text-decoration: none;
}
.affiliate-warning {
    min-height: 39px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    color: #98a2b3;
    font-size: 12px;
    font-style: italic;
}
.affiliate-warning p {
    margin: 0;
    color: #98a2b3;
    font-size: 12px;
}
.affiliate-qr-panel {
    margin-top: 18px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
}
.affiliate-qr-box {
    border: 1px solid #dfe4eb;
    border-radius: 12px;
    padding: 16px;
    background: white;
}
.affiliate-qr-box img {
    display: block;
    width: 160px;
    height: 160px;
}
.affiliate-qr-panel a {
    min-height: 39px;
    border-radius: 8px;
    padding: 10px 16px;
    background: rgba(6, 30, 19, 0.08);
    color: var(--green);
    font-size: 14px;
    font-weight: 900;
}
.qr-st40-print-page {
    min-height: 100vh;
    margin: 0;
    background: #eef1f4;
}
.qr-sheet-screen-actions {
    min-height: 72px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    padding: 12px;
}
.qr-sheet-screen-actions span {
    color: #475569;
    font-size: 13px;
    font-weight: 800;
}
.qr-sheet-screen-actions button {
    min-height: 42px;
    border: 0;
    border-radius: 9px;
    padding: 0 18px;
    background: var(--green);
    color: white;
    font-weight: 900;
}
.qr-sheet-screen-actions button:last-child {
    background: #64748b;
}
.qr-st40-sheet {
    width: 210mm;
    height: 297mm;
    grid-template-columns: repeat(4, 52.5mm);
    grid-template-rows: repeat(10, 29.7mm);
    margin: 0 auto;
}
.qr-st40-label,
.qr-st40-sheet {
    display: grid;
    overflow: hidden;
    background: white;
}
.qr-st40-label {
    min-width: 0;
    min-height: 0;
    grid-template-columns: var(--qr-st40-qr-size, 23mm) minmax(0, 1fr);
    align-items: center;
    grid-gap: 1mm;
    gap: 1mm;
    padding: 0.6mm var(--qr-st40-pad-right, 0) 0.6mm var(--qr-st40-pad-left, 7mm);
}
.qr-st40-label img {
    width: var(--qr-st40-qr-size, 23mm);
    height: var(--qr-st40-qr-size, 23mm);
    display: block;
    image-rendering: pixelated;
}
.qr-st40-label p {
    min-width: 0;
    margin: 0;
    color: #000;
    font-family:
        Nirmala UI,
        Noto Sans Devanagari,
        Mangal,
        sans-serif;
    font-size: 10pt;
    font-weight: 900;
    line-height: 1.15;
    letter-spacing: -0.08mm;
    text-align: center;
}
.qr-st40-label p span {
    display: block;
    white-space: nowrap;
}
.qr-st40-code-label {
    grid-template-columns: 1fr;
    place-items: center;
    text-align: center;
}
.qr-st40-code-label strong {
    color: #000;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 20pt;
    font-weight: 900;
    line-height: 1;
    white-space: nowrap;
}
.mini-qr-print-page {
    min-height: 100vh;
    margin: 0;
    padding: 16px;
    background: #eef1f4;
}
.mini-qr-screen-actions {
    min-height: 56px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 12px;
    margin-bottom: 16px;
}
.mini-qr-screen-actions span {
    color: #475569;
    font-size: 13px;
    font-weight: 800;
}
.mini-qr-screen-actions button {
    min-height: 42px;
    border: 0;
    border-radius: 9px;
    padding: 0 18px;
    background: var(--green);
    color: white;
    font-weight: 900;
}
.mini-qr-screen-actions button:last-child {
    background: #64748b;
}
.mini-qr-label {
    width: 50mm;
    grid-template-columns: repeat(2, 25mm);
    grid-column-gap: 0;
    column-gap: 0;
    margin: 0 auto 12px;
    background: white;
    box-shadow: 0 1px 3px rgba(15, 23, 42, 0.16);
}
.mini-qr-copy,
.mini-qr-label {
    height: 25mm;
    box-sizing: border-box;
    display: grid;
    overflow: hidden;
}
.mini-qr-copy {
    width: 25mm;
    grid-template-columns: 18mm minmax(0, 1fr);
    grid-template-rows: 18mm 3mm;
    align-content: center;
    align-items: center;
    grid-column-gap: 0.5mm;
    column-gap: 0.5mm;
    grid-row-gap: 0.3mm;
    row-gap: 0.3mm;
    padding: 0.5mm;
}
.mini-qr-copy img {
    width: 18mm;
    height: 18mm;
    display: block;
    image-rendering: pixelated;
}
.mini-qr-copy p {
    min-width: 0;
    max-height: 18mm;
    margin: 0;
    overflow: hidden;
    color: #000;
    font-family:
        Nirmala UI,
        Noto Sans Devanagari,
        Mangal,
        sans-serif;
    font-size: 3.2pt;
    font-weight: 900;
    line-height: 1.05;
    text-align: center;
}
.mini-qr-copy p span {
    display: block;
    white-space: normal;
}
.mini-qr-copy strong {
    grid-column: 1/-1;
    color: #000;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 7pt;
    font-weight: 900;
    line-height: 1;
    white-space: nowrap;
    text-align: center;
}
@page qr-st40 {
    size: A4 portrait;
    margin: 0;
}
.qr-st40-calibrate .qr-st40-label {
    outline: 0.2mm solid #000;
    outline-offset: -0.1mm;
    padding: 1mm;
}
.qr-st40-cal-cell {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    width: 100%;
    height: 100%;
}
.qr-st40-cal-row {
    font-family: Arial, sans-serif;
    font-size: 8pt;
    font-weight: 700;
    color: #000;
}
.qr-st40-cal-ruler {
    display: block;
    width: 50mm;
    height: 2mm;
    border: 0.2mm solid #000;
    border-top: 0;
    background: repeating-linear-gradient(90deg, #000 0 0.2mm, transparent 0.2mm 10mm);
}
@media print {
    .qr-st40-print-page {
        page: qr-st40;
        width: 210mm;
        height: 297mm;
        min-height: 0;
        margin: 0;
        background: white;
        overflow: hidden;
    }
    .qr-sheet-screen-actions {
        display: none !important;
    }
    .qr-st40-sheet {
        height: 296.8mm;
        grid-template-rows: repeat(10, 29.68mm);
        margin: 0;
        page-break-after: avoid;
        break-after: avoid;
        page-break-inside: avoid;
        break-inside: avoid;
    }
    .mini-qr-print-page {
        page: mini-qr;
        min-height: 0;
        margin: 0;
        padding: 0;
        background: white;
    }
    .mini-qr-screen-actions {
        display: none !important;
    }
    .mini-qr-label {
        width: 50mm;
        height: 25mm;
        margin: 0;
        box-shadow: none;
        page-break-after: always;
        break-after: page;
        page-break-inside: avoid;
        break-inside: avoid;
    }
    .mini-qr-label:last-child {
        page-break-after: auto;
        break-after: auto;
    }
}
@page mini-qr {
    size: 50mm 25mm;
    margin: 0;
}
.partner-toast {
    position: fixed;
    top: 24px;
    right: 24px;
    z-index: 80;
    border-radius: 12px;
    padding: 13px 20px;
    background: #16a34a;
    color: white;
    font-size: 14px;
    font-weight: 900;
    box-shadow: 0 16px 30px rgba(15, 23, 42, 0.18);
}
.partner-code-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin: 0 0 18px;
    padding: 12px 14px;
    border-radius: 10px;
    background: #faf7f1;
}
.partner-code-row span {
    color: var(--muted);
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
}
.partner-code-row strong {
    color: var(--gold);
    font-size: 18px;
}
.partner-portal {
    min-height: 100vh;
    display: grid;
    grid-template-columns: 375px 1fr;
}
.partner-sidebar {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    height: 100vh;
    background: #062316;
    color: #d6e1dc;
    display: flex;
    flex-direction: column;
    overflow-y: auto;
}
.partner-sidebar-brand {
    min-height: 232px;
    padding: 28px 28px 30px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
}
.partner-sidebar-brand img {
    width: 121px;
    height: 84px;
    border-radius: 14px;
    object-fit: contain;
    background: white;
    margin-bottom: 22px;
}
.partner-sidebar-brand strong {
    color: white;
    font-family: Georgia, serif;
    font-size: 22px;
    line-height: 1.1;
}
.partner-sidebar-brand span {
    margin-top: 12px;
    color: #e2b64d;
    font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
    font-size: 16px;
}
.partner-side-nav {
    padding: 18px 0;
    grid-gap: 0;
    gap: 0;
}
.partner-side-nav a,
.partner-sidebar-logout {
    min-height: 66px;
    padding: 0 30px;
    display: grid;
    grid-template-columns: 28px 1fr auto;
    grid-gap: 18px;
    gap: 18px;
    border-right: 5px solid transparent;
    color: #cbd5d1;
    font-size: 22px;
}
.partner-side-nav a.active {
    background: #1d3b2d;
    border-right-color: var(--gold);
    color: #d7ad55;
}
.partner-side-nav a.event-attention {
    position: relative;
    color: #f6cf6a;
    animation: partner-event-tab-pulse 1.35s ease-in-out infinite;
}
.partner-side-nav a.event-attention:after {
    content: "";
    width: 10px;
    height: 10px;
    flex: 0 0 auto;
    border-radius: 999px;
    background: #f6cf6a;
    box-shadow: 0 0 0 0 rgba(246, 207, 106, 0.65);
    animation: partner-event-dot-pulse 1.35s ease-in-out infinite;
}
@keyframes partner-event-tab-pulse {
    0%,
    to {
        background-color: transparent;
        box-shadow: inset 0 0 0 0 rgba(246, 207, 106, 0);
    }
    50% {
        background-color: rgba(246, 207, 106, 0.15);
        box-shadow: inset 0 0 0 1px rgba(246, 207, 106, 0.5);
    }
}
@keyframes partner-event-dot-pulse {
    0%,
    to {
        opacity: 0.65;
        transform: scale(0.8);
        box-shadow: 0 0 0 0 rgba(246, 207, 106, 0.55);
    }
    50% {
        opacity: 1;
        transform: scale(1.12);
        box-shadow: 0 0 0 6px rgba(246, 207, 106, 0);
    }
}
@media (prefers-reduced-motion: reduce) {
    .partner-side-nav a.event-attention,
    .partner-side-nav a.event-attention:after {
        animation: none;
    }
    .partner-side-nav a.event-attention {
        background-color: rgba(246, 207, 106, 0.12);
    }
}
.partner-side-nav a.locked {
    color: #93a39b;
}
.partner-side-nav a.locked.active {
    color: #d7ad55;
}
.partner-side-nav a b {
    width: 18px;
    height: 18px;
    border: 2px solid #ff7070;
    border-radius: 4px;
    color: #ff7070;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    line-height: 1;
}
.partner-nav-icon {
    width: 26px;
    height: 26px;
    position: relative;
    display: inline-block;
    color: currentColor;
    opacity: 0.95;
}
.partner-nav-icon:after,
.partner-nav-icon:before {
    content: "";
    position: absolute;
    inset: 4px;
    border: 2px solid;
    border-radius: 999px;
}
.icon-dashboard:before {
    border-radius: 4px;
    transform: rotate(45deg);
    top: 5px;
}
.icon-dashboard:after {
    inset: 12px 8px 3px;
    border-radius: 2px;
    border-top: 0;
}
.icon-network:before {
    inset: 2px;
}
.icon-network:after {
    inset: 11px 0;
    border-left: 0;
    border-right: 0;
    border-radius: 0;
}
.icon-certificates:before {
    inset: 2px 6px 7px;
}
.icon-certificates:after {
    inset: 16px 8px 0;
    border-top: 0;
    border-radius: 0 0 8px 8px;
}
.icon-wallet:before {
    inset: 7px 1px 3px;
    border-radius: 4px;
}
.icon-wallet:after {
    inset: 11px 2px 9px 17px;
    border-radius: 999px;
}
.icon-affiliate:before {
    inset: 10px 1px;
    border-left: 0;
    border-right: 0;
    border-radius: 0;
}
.icon-affiliate:after {
    inset: 7px 2px 7px 14px;
    border-left: 0;
    border-radius: 0 999px 999px 0;
}
.icon-earnings:before {
    content: "$";
    inset: auto;
    border: 0;
    font-size: 28px;
    line-height: 26px;
    font-weight: 500;
}
.icon-payout:before {
    inset: 5px 2px;
    border-radius: 5px;
}
.icon-payout:after {
    content: "₹";
    inset: auto;
    left: 7px;
    top: 0;
    border: 0;
    font-size: 22px;
    line-height: 26px;
    font-weight: 900;
}
.icon-newProfit:before {
    inset: 5px 2px;
    border-radius: 5px;
}
.icon-newProfit:after {
    content: "+";
    inset: auto;
    left: 7px;
    top: 0;
    border: 0;
    font-size: 24px;
    line-height: 26px;
    font-weight: 900;
}
.partner-sidebar-logout {
    margin-top: auto;
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    color: #ff9a9a;
    grid-template-columns: 28px 1fr;
}
.partner-sidebar-logout span {
    font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
}
.partner-content {
    min-width: 0;
    padding: 45px 56px 70px 48px;
}
.partner-page-title {
    margin: 0 0 34px;
    color: var(--green);
    font-size: 38px;
    line-height: 1;
}
.partner-profile-card {
    min-height: 520px;
    border: 1px solid var(--line);
    border-radius: 26px;
    padding: 38px 36px 34px;
    background: white;
    box-shadow: 0 8px 22px rgba(15, 23, 42, 0.04);
}
.partner-profile-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 34px;
}
.partner-profile-head h2 {
    margin: 0;
    color: var(--green);
    font-size: 27px;
}
.partner-profile-badges {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    justify-content: flex-end;
}
.partner-profile-badges span {
    min-height: 36px;
    padding: 8px 14px;
    border-radius: 999px;
    background: #f2f4f7;
    color: #334155;
    font-weight: 900;
}
.partner-profile-badges span:nth-child(2) {
    background: #f5efe5;
    color: var(--gold);
}
.partner-profile-badges .approved {
    background: #d8fbe2;
    color: #069341;
}
.partner-profile-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-gap: 32px 24px;
    gap: 32px 24px;
}
.partner-field {
    display: grid;
    grid-gap: 8px;
    gap: 8px;
    margin: 0;
}
.partner-field.wide {
    grid-column: 1/-1;
}
.partner-field span {
    margin: 0;
    color: #354052;
    font-size: 18px;
    font-weight: 900;
}
.partner-field div {
    min-height: 68px;
    padding: 17px 24px;
    border: 1px solid #dfe4eb;
    border-radius: 16px;
    background: #f8fafc;
    color: #06111d;
    font-size: 22px;
    display: flex;
    align-items: center;
}
.partner-field div.muted {
    background: #f0f2f5;
    color: #687386;
}
.partner-field input.profile-field-locked {
    background: #f0f2f5;
    color: #55606f;
    cursor: not-allowed;
    border-color: #e2e7ee;
}
.partner-field input.profile-field-locked:focus {
    outline: 2px solid #b9c2cf;
    outline-offset: 1px;
}
.partner-field small .profile-grace-notice {
    display: grid;
    grid-gap: 6px;
    gap: 6px;
    margin: 0 0 16px;
    padding: 14px 16px;
    border: 2px solid #c5a059;
    border-radius: 10px;
    background: #fffaf0;
    color: #5d4711;
}
.profile-grace-notice strong {
    color: #7a5a12;
    font-size: 15px;
}
.profile-grace-notice span {
    font-size: 13px;
    line-height: 1.45;
}
.profile-lock-note {
    color: #7b6320;
    font-weight: 700;
}
.one-view-edit-bar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    flex-wrap: wrap;
    padding: 14px 18px;
    margin-bottom: 14px;
    border: 1px solid #dfe4eb;
    border-radius: 14px;
    background: #f8fafc;
}
.one-view-edit-bar span {
    color: #55606f;
    font-size: 15px;
    font-weight: 600;
}
.one-view-edit-bar strong {
    color: #06111d;
}
.one-view-edit-button {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    border: 0;
    cursor: pointer;
}
.one-view-edit-button b {
    font-weight: 700;
}
.new-profit-title-row {
    max-width: 1180px;
    margin-bottom: 16px;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 18px;
}
.new-profit-title-row > div:first-child > span {
    display: block;
    margin-bottom: 3px;
    color: #0f8f77;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}
.new-profit-title-row .partner-page-title {
    margin-bottom: 0;
}
.new-profit-title-row p {
    margin: 4px 0 0;
    color: #718078;
    font-size: 13px;
}
.new-profit-current-period {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    padding-bottom: 2px;
}
.new-profit-current-period span {
    color: #829088;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}
.new-profit-current-period strong {
    margin-top: 2px;
    color: #1d4538;
    font-size: 13px;
}
.new-profit-panel {
    max-width: 1180px;
    min-width: 0;
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    grid-gap: 22px;
    gap: 22px;
}
.new-profit-summary-strip {
    position: relative;
    z-index: 5;
    display: grid;
    grid-template-columns: 1.15fr 1fr 1fr;
    border-block: 1px solid #d5ded9;
    background: rgba(255, 255, 255, 0.55);
}
.new-profit-summary-item {
    min-width: 0;
    min-height: 96px;
    padding: 12px 16px;
    display: flex;
    align-items: center;
    gap: 10px;
}
.new-profit-summary-strip > * + * {
    border-left: 1px solid #d5ded9;
}
.new-profit-total-breakdown {
    position: relative;
    min-width: 0;
}
.new-profit-total-breakdown > summary {
    width: 100%;
    cursor: pointer;
    list-style: none;
}
.new-profit-total-breakdown > summary::-webkit-details-marker {
    display: none;
}
.new-profit-summary-symbol {
    width: 34px;
    height: 34px;
    flex: 0 0 auto;
    border-radius: 50%;
    display: grid;
    place-items: center;
    font-size: 15px;
    font-weight: 900;
}
.new-profit-summary-symbol.total {
    color: white;
    background: var(--green);
}
.new-profit-summary-symbol.paid {
    color: #704f0d;
    background: #f5e8c5;
}
.new-profit-summary-symbol.month {
    color: #056e5c;
    background: #d7f3ed;
}
.new-profit-summary-copy {
    min-width: 0;
    display: flex;
    flex-direction: column;
}
.new-profit-summary-copy small {
    color: #75837b;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: 0.075em;
    text-transform: uppercase;
}
.new-profit-summary-copy > strong {
    margin: 3px 0 2px;
    color: #082e23;
    font-size: clamp(24px, 2.7vw, 34px);
    line-height: 1.08;
    font-feature-settings: "tnum";
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
}
.new-profit-summary-copy > span {
    color: #8a9790;
    font-size: 11px;
}
.new-profit-total-breakdown .new-profit-summary-copy > span {
    color: #0a8b75;
    font-weight: 900;
}
.new-profit-total-breakdown .new-profit-summary-copy b {
    display: inline-block;
    margin-left: 3px;
    font-size: 14px;
    transition: transform 0.15s ease;
}
.new-profit-total-breakdown[open] .new-profit-summary-copy b {
    transform: rotate(180deg);
}
.new-profit-paid-breakdown .new-profit-summary-copy > span {
    color: #8a6b25;
}
.new-profit-breakdown-popover {
    position: absolute;
    z-index: 30;
    top: calc(100% + 6px);
    left: 0;
    width: min(420px, calc(100vw - 64px));
    max-height: min(520px, 70vh);
    overflow-y: auto;
    padding: 12px;
    border: 1px solid #d8e2dc;
    border-radius: 12px;
    background: white;
    box-shadow: 0 18px 48px rgba(23, 48, 39, 0.16);
}
.new-profit-settlement-popover {
    left: 50%;
    width: min(900px, calc(100vw - 64px));
    transform: translateX(-50%);
}
.new-profit-settlement-popover .new-profit-breakdown-head {
    align-items: center;
    flex-wrap: wrap;
    margin-bottom: 10px;
}
.new-profit-breakdown-head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 10px;
    padding-bottom: 8px;
    border-bottom: 1px solid #e3e9e5;
}
.new-profit-breakdown-head > div {
    display: flex;
    flex-direction: column;
}
.new-profit-breakdown-head span {
    color: #7b8981;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}
.new-profit-breakdown-head strong {
    color: #173c30;
    font-size: 14px;
}
.new-profit-breakdown-head > strong {
    font-size: 20px;
}
.new-profit-breakdown-popover dl {
    margin: 4px 0 0;
}
.new-profit-breakdown-popover dl div {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 6px 3px;
    border-bottom: 1px solid #eef2ef;
}
.new-profit-breakdown-popover dt {
    color: #53645c;
    font-size: 12px;
    font-weight: 700;
}
.new-profit-breakdown-popover dd {
    margin: 0;
    color: #193b30;
    font-size: 13px;
    font-weight: 900;
    text-align: right;
    font-feature-settings: "tnum";
    font-variant-numeric: tabular-nums;
}
.new-profit-breakdown-popover dl div.total {
    margin-top: 4px;
    border-bottom: 0;
    border-top: 2px solid #d5ded9;
}
.new-profit-breakdown-popover dl div.total dd,
.new-profit-breakdown-popover dl div.total dt {
    color: #123524;
    font-size: 15px;
}
.new-profit-section-heading {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 8px;
}
.new-profit-section-heading > span {
    width: 30px;
    height: 30px;
    flex: 0 0 auto;
    border: 1px solid #cfd9d4;
    border-radius: 50%;
    color: #12947e;
    display: grid;
    place-items: center;
    font-size: 9px;
    font-weight: 900;
}
.new-profit-section-heading h2 {
    margin: 0;
    color: #102f25;
    font-size: 22px;
    line-height: 1.1;
}
.new-profit-section-heading p {
    margin: 1px 0 0;
    color: #718078;
    font-size: 11px;
}
.new-profit-ledger {
    border-top: 1px solid #ced8d3;
}
.new-profit-ledger-row {
    min-height: 112px;
    border-bottom: 1px solid #d8e0dc;
    display: grid;
    grid-template-columns: minmax(270px, 1.15fr) minmax(520px, 2.35fr);
    align-items: stretch;
}
.new-profit-stream-title {
    position: relative;
    min-width: 0;
    padding: 14px 14px 14px 4px;
    display: flex;
    align-items: center;
    gap: 10px;
    cursor: pointer;
    list-style: none;
}
.new-profit-stream-toggle {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap;
    border: 0;
}
.new-profit-stream-toggle:focus-visible + .new-profit-stream-title {
    outline: 2px solid #087965;
    outline-offset: -2px;
}
.new-profit-stream-title > i {
    width: 6px;
    height: 64px;
    flex: 0 0 auto;
    border-radius: 4px;
    background: var(--leaf);
}
.new-profit-ledger-row.self {
    background: #f1f7f4;
}
.new-profit-ledger-row.selfGroup {
    background: #fdf8ee;
}
.new-profit-ledger-row.selfGroup .new-profit-stream-title > i {
    background: var(--gold);
}
.new-profit-ledger-row.bp {
    background: #edf8f5;
}
.new-profit-ledger-row.bp .new-profit-stream-title > i {
    background: #10ae95;
}
.new-profit-ledger-section .new-profit-section-heading > span {
    border-color: var(--leaf);
    background: var(--leaf);
    color: #fff;
}
.new-profit-payment-history-section .new-profit-section-heading > span {
    border-color: #8a6b25;
    background: #8a6b25;
    color: #fff;
}
.new-profit-stream-title h3 {
    margin: 0;
    color: #112f25;
    font-size: 19px;
    line-height: 1.15;
}
.new-profit-stream-title span {
    display: block;
    margin-top: 5px;
    color: #839087;
    font-size: 9px;
    font-weight: 900;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}
.new-profit-stream-title span strong {
    margin-left: 4px;
    color: #39564c;
    font-size: 10px;
}
.new-profit-stream-title .new-profit-stream-action {
    color: #087965;
    letter-spacing: 0.035em;
    text-decoration: underline;
    text-underline-offset: 3px;
}
.new-profit-stream-action b {
    display: inline-block;
    margin-left: 3px;
    font-size: 12px;
    transition: transform 0.15s ease;
}
.new-profit-stream-toggle:checked + .new-profit-stream-title .new-profit-stream-action b {
    transform: rotate(180deg);
}
.new-profit-month-values {
    min-width: 0;
    margin: 0;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}
.new-profit-stream-toggle:not(:checked) ~ .new-profit-certificate-breakdown {
    display: none;
}
.new-profit-month-values > div {
    min-width: 0;
    padding: 12px 10px;
    border-left: 1px solid #e0e6e3;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.new-profit-month-values > div.current {
    background: linear-gradient(180deg, rgba(20, 174, 149, 0.08), rgba(20, 174, 149, 0.02));
}
.new-profit-month-values dt {
    color: #8a978f;
    font-size: 9px;
    font-weight: 900;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}
.new-profit-month-values .short-label {
    display: none;
}
.new-profit-month-values dd {
    margin: 4px 0 0;
    color: #173a2f;
    font-size: 14px;
    font-weight: 900;
    font-feature-settings: "tnum";
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
}
.new-profit-month-values > div.new-profit-stream-total {
    align-items: flex-end;
    background: rgba(255, 255, 255, 0.5);
}
.new-profit-stream-total dd {
    color: #092f24;
    font-size: 18px;
}
.new-profit-certificate-breakdown {
    grid-column: 1/-1;
    padding: 10px;
    border-top: 1px solid #d8e0dc;
    background: rgba(255, 255, 255, 0.74);
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    grid-gap: 8px;
    gap: 8px;
}
.new-profit-certificate-breakdown section {
    min-width: 0;
    border: 1px solid #dce5e0;
    border-radius: 8px;
    overflow: hidden;
    background: rgba(255, 255, 255, 0.82);
}
.new-profit-certificate-breakdown header {
    padding: 6px 8px;
    border-bottom: 1px solid #e3e9e5;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
}
.new-profit-certificate-breakdown h4 {
    margin: 0;
    color: #53645c;
    font-size: 11px;
}
.new-profit-certificate-breakdown header strong {
    color: #173a2f;
    font-size: 12px;
    font-feature-settings: "tnum";
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
}
.new-profit-certificate-breakdown dl {
    margin: 0;
}
.new-profit-certificate-breakdown dl div {
    padding: 5px 8px;
    border-bottom: 1px solid #edf1ef;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
}
.new-profit-certificate-breakdown dl div:last-child {
    border-bottom: 0;
}
.new-profit-certificate-breakdown dt {
    min-width: 0;
    color: #52635b;
    font-size: 10px;
    font-weight: 700;
    overflow-wrap: anywhere;
}
.new-profit-certificate-breakdown dd {
    margin: 0;
    color: #173a2f;
    font-size: 11px;
    font-weight: 900;
    font-feature-settings: "tnum";
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
}
.new-profit-certificate-breakdown p {
    margin: 0;
    padding: 8px;
    color: #89958e;
    font-size: 10px;
}
.new-profit-settlement-status {
    padding: 5px 8px;
    border: 1px solid #ead7a8;
    border-radius: 999px;
    color: #795a19;
    background: #fff9e9;
    font-size: 10px;
    font-weight: 900;
    white-space: nowrap;
}
.new-profit-settlement-status.paid {
    border-color: #bfe3d4;
    color: #08705e;
    background: #eaf8f3;
}
.new-profit-payment-history-section .partner-payment-history-wrap,
.new-profit-settlement-wrap {
    border-block: 1px solid #ced8d3;
}
.new-profit-settlement-wrap {
    overflow-x: auto;
}
.new-profit-settlement-table {
    width: 100%;
    min-width: 880px;
    border-collapse: collapse;
}
.new-profit-settlement-table th {
    height: 34px;
    padding: 6px 8px;
    border-bottom: 1px solid #dfe6e2;
    color: #7e8c84;
    font-size: 9px;
    font-weight: 900;
    letter-spacing: 0.055em;
    text-align: right;
    text-transform: uppercase;
}
.new-profit-settlement-table th:first-child {
    text-align: left;
}
.new-profit-settlement-table td {
    height: 52px;
    padding: 8px;
    color: #29473d;
    font-size: 12px;
    font-weight: 800;
    text-align: right;
    font-feature-settings: "tnum";
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
}
.new-profit-settlement-table td:first-child {
    text-align: left;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.new-profit-settlement-table td:first-child strong {
    color: #173b2f;
}
.new-profit-settlement-table td small {
    margin-top: 2px;
    color: #8d9993;
    font-size: 9px;
    font-weight: 700;
    display: block;
}
.new-profit-settlement-table td.deduction {
    color: #a35d3b;
}
.new-profit-settlement-table td.outstanding {
    color: #08725f;
    font-weight: 900;
}
.new-profit-settlement-note {
    margin: 0;
    padding: 8px;
    border-top: 1px solid #e1e7e4;
    color: #738179;
    background: rgba(255, 255, 255, 0.45);
    font-size: 10px;
}
.new-profit-settlement-note span {
    width: 18px;
    height: 18px;
    margin-right: 7px;
    border: 1px solid #14947f;
    color: #14947f;
    display: inline-grid;
    place-items: center;
    font-weight: 900;
}
.top-achievers-head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 24px;
    margin-bottom: 24px;
}
.top-achievers-head .partner-page-title {
    margin-bottom: 10px;
}
.top-achievers-head p {
    margin: 0;
    color: #64748b;
}
.top-achievers-head form {
    display: flex;
    align-items: flex-end;
    gap: 10px;
}
.top-achievers-head label {
    display: grid;
    grid-gap: 6px;
    gap: 6px;
    color: #475569;
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
}
.top-achievers-head button,
.top-achievers-head input {
    min-height: 42px;
    border: 1px solid #d7dee8;
    border-radius: 10px;
    padding: 8px 12px;
    background: white;
    font: inherit;
}
.top-achievers-head button {
    border-color: var(--gold);
    background: var(--gold);
    color: white;
    font-weight: 900;
}
.top-achievers-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-gap: 22px;
    gap: 22px;
}
.top-achievers-card {
    overflow: hidden;
    border: 1px solid #e1e8f0;
    border-radius: 18px;
    background: white;
    box-shadow: 0 8px 22px rgba(15, 23, 42, 0.04);
}
.top-achievers-card h2 {
    margin: 0;
    padding: 20px 24px;
    background: var(--green);
    color: white;
    font-size: 24px;
}
.top-achievers-card ol {
    margin: 0;
    padding: 8px 24px 18px;
    list-style: none;
}
.top-achievers-card li {
    min-height: 58px;
    border-bottom: 1px solid #eef2f7;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}
.top-achievers-card li:last-child {
    border-bottom: 0;
}
.top-achievers-card li span {
    color: #94a3b8;
    font-size: 14px;
    font-weight: 900;
}
.top-achievers-card li strong {
    color: var(--green);
    font-size: 22px;
}
.top-achievers-card > p {
    margin: 0;
    padding: 28px 24px;
    color: #64748b;
}
.top-achievers-note {
    margin: 18px 0 0;
    color: #64748b;
    font-size: 12px;
}
@media (max-width: 760px) {
    .top-achievers-head {
        align-items: stretch;
        flex-direction: column;
    }
    .top-achievers-head form {
        align-items: stretch;
    }
    .top-achievers-grid {
        grid-template-columns: 1fr;
    }
}
.top-achievers-subtabs {
    display: flex;
    gap: 8px;
    margin-bottom: 16px;
}
.top-achievers-subtabs a {
    padding: 9px 16px;
    border: 1px solid #d7dee8;
    border-radius: 999px;
    background: white;
    color: #475569;
    font-size: 14px;
    font-weight: 900;
    text-decoration: none;
}
.top-achievers-subtabs a.active {
    border-color: var(--green);
    background: var(--green);
    color: white;
}
.meeting-groups {
    display: grid;
    grid-gap: 14px;
    gap: 14px;
}
.meeting-groups-intro {
    margin: 0;
    color: #526173;
    font-size: 14px;
    line-height: 1.5;
}
.meeting-group {
    --group-tint: #f1f5f9;
    --group-edge: #cbd5e1;
    overflow: hidden;
    border: 1px solid var(--group-edge);
    border-radius: 14px;
    background: var(--group-tint);
    page-break-inside: avoid;
    break-inside: avoid;
}
.meeting-group h2 {
    margin: 0;
    padding: 10px 14px;
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 12px;
    border-bottom: 1px solid var(--group-edge);
    color: #0f172a;
    font-size: 18px;
}
.meeting-group h2 small {
    color: #475569;
    font-size: 13px;
    font-weight: 800;
}
.meeting-group ol {
    margin: 0;
    padding: 0;
    list-style: none;
}
.meeting-group li {
    display: grid;
    grid-template-columns: 30px minmax(0, 1fr) auto auto;
    align-items: center;
    grid-gap: 4px 10px;
    gap: 4px 10px;
    padding: 8px 14px;
    border-bottom: 1px solid rgba(15, 23, 42, 0.07);
    color: #0f172a;
    font-size: 14px;
}
.meeting-group li:last-child {
    border-bottom: 0;
}
.meeting-group-position {
    color: #475569;
    font-weight: 900;
}
.meeting-group-name {
    min-width: 0;
    font-weight: 800;
    overflow-wrap: anywhere;
}
.meeting-group-name em {
    margin-left: 8px;
    font-style: normal;
}
.meeting-group-name em,
.meeting-group-rank {
    color: #475569;
    font-size: 12px;
    font-weight: 700;
    white-space: nowrap;
}
.meeting-group-seat {
    padding: 3px 9px;
    border: 1px solid var(--group-edge);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.75);
    font-size: 12px;
    font-weight: 900;
    white-space: nowrap;
}
.meeting-group-you {
    --group-tint: #f1f5f9;
    --group-edge: #cbd5e1;
    justify-self: start;
    max-width: 100%;
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 2px 14px;
    padding: 10px 18px;
    border: 2px solid var(--group-edge);
    border-radius: 14px;
    background: var(--group-tint);
    color: #0f172a;
}
.meeting-group-you span {
    flex-basis: 100%;
    color: #475569;
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
}
.meeting-group-you strong {
    font-size: 28px;
    line-height: 1.1;
}
.meeting-group-you em {
    font-size: 20px;
    font-style: normal;
    font-weight: 900;
}
.meeting-group-you.none span {
    color: #334155;
    font-size: 14px;
    text-transform: none;
}
.meeting-group li.is-you {
    background: rgba(255, 255, 255, 0.85);
    box-shadow: inset 4px 0 0 var(--green);
    font-weight: 900;
}
.meeting-groups-download {
    justify-self: start;
    padding: 9px 16px;
    border-radius: 10px;
    background: var(--gold);
    color: white;
    font-size: 14px;
    font-weight: 900;
    text-decoration: none;
}
@media print {
    .meeting-groups-download,
    .top-achievers-subtabs {
        display: none;
    }
}
.meeting-group-seat.none {
    border-style: dashed;
    background: transparent;
    color: #64748b;
    font-weight: 700;
}
.meeting-group-a {
    --group-tint: #fef3c7;
    --group-edge: #f3d47a;
}
.meeting-group-b {
    --group-tint: #dbeafe;
    --group-edge: #a9c8f5;
}
.meeting-group-c {
    --group-tint: #dcfce7;
    --group-edge: #a3dfb9;
}
.meeting-group-d {
    --group-tint: #fce7f3;
    --group-edge: #f3b3d3;
}
.meeting-group-e {
    --group-tint: #ede9fe;
    --group-edge: #c5b8f5;
}
.meeting-group-f {
    --group-tint: #ffedd5;
    --group-edge: #f7c391;
}
.meeting-group-g {
    --group-tint: #cffafe;
    --group-edge: #93dbe6;
}
.meeting-group-h {
    --group-tint: #fee2e2;
    --group-edge: #f3b0b0;
}
.meeting-group-i {
    --group-tint: #ecfccb;
    --group-edge: #c2e08a;
}
.meeting-group-j {
    --group-tint: #e2e8f0;
    --group-edge: #b4c0d0;
}
@media (max-width: 760px) {
    .meeting-group li {
        grid-template-columns: 26px minmax(0, 1fr) auto;
        padding: 8px 10px;
    }
    .meeting-group-name em {
        display: block;
        margin-left: 0;
    }
    .meeting-group-rank {
        grid-column: 2;
        grid-row: 2;
    }
    .meeting-group-seat {
        grid-column: 3;
        grid-row: 1 / span 2;
    }
}
.pack-type-field {
    display: grid;
    grid-gap: 8px;
    gap: 8px;
    margin: 0;
    padding: 0;
    border: 0;
    min-width: 0;
}
.pack-type-field legend {
    padding: 0;
    margin-bottom: 6px;
    font-weight: 800;
}
.pack-type-option {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 10px 12px;
    border: 1px solid #d7dee8;
    border-radius: 12px;
    background: white;
    cursor: pointer;
}
.pack-type-option.selected {
    border-color: var(--green);
    box-shadow: inset 0 0 0 1px var(--green);
    background: #f3faf6;
}
.pack-type-option.disabled {
    opacity: 0.55;
    cursor: not-allowed;
}
.pack-type-option input {
    width: auto;
    margin-top: 3px;
    flex: none;
}
.pack-type-option span {
    display: grid;
    grid-gap: 2px;
    gap: 2px;
    min-width: 0;
}
.pack-type-option small {
    color: #526173;
    font-weight: 600;
}
.pack-type-note {
    margin: 0;
    color: #526173;
    font-size: 13px;
}
.pack-mark {
    margin-top: 2px;
    padding: 1px 5px;
    border-radius: 6px;
    background: #fef3c7;
    color: #7c4a03;
    font-size: 10px;
    font-weight: 900;
    white-space: nowrap;
}
.partner-locked-panel {
    min-height: 360px;
    border: 1px solid #ead9bd;
    border-radius: 18px;
    background: #fffdf8;
    display: flex;
    flex-direction: column;
    gap: 12px;
    text-align: center;
    color: #526173;
}
.partner-lock-mark,
.partner-locked-panel {
    align-items: center;
    justify-content: center;
}
.partner-lock-mark {
    width: 44px;
    height: 44px;
    border: 3px solid #ff7070;
    border-radius: 10px;
    color: #ff7070;
    display: inline-flex;
    font-size: 28px;
    font-weight: 900;
    line-height: 1;
}
.partner-locked-panel h2 {
    margin: 0;
    color: var(--green);
    font-size: 28px;
}
.partner-locked-panel p {
    margin: 0;
    font-size: 16px;
}
.partner-certificate-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(360px, 1fr));
    grid-gap: 38px;
    gap: 38px;
}
.partner-certificate-card {
    min-height: 570px;
    border: 3px solid #eadbbd;
    border-radius: 62px;
    padding: 38px 38px 34px;
    background: #fffdf9;
    color: #101827;
    display: flex;
    flex-direction: column;
}
.certificate-ribbon {
    width: 42px;
    height: 56px;
    margin: 0 auto 20px;
    position: relative;
    display: block;
}
.certificate-ribbon:before {
    content: "";
    position: absolute;
    left: 4px;
    top: 0;
    width: 34px;
    height: 34px;
    border: 5px solid var(--gold);
    border-radius: 999px;
}
.certificate-ribbon:after {
    content: "";
    position: absolute;
    left: 10px;
    top: 29px;
    width: 22px;
    height: 23px;
    border-left: 5px solid var(--gold);
    border-right: 5px solid var(--gold);
    transform: skewY(-18deg);
}
.partner-certificate-card h2 {
    margin: 0;
}
.partner-certificate-card h2,
.partner-certificate-number {
    color: var(--green);
    text-align: center;
    font-size: 23px;
    line-height: 1.2;
}
.partner-certificate-number {
    display: block;
    margin-top: 8px;
    font-weight: 900;
}
.certificate-card-line {
    width: 96px;
    height: 3px;
    margin: 16px auto 26px;
    background: var(--gold);
}
.partner-certificate-card dl {
    margin: 0;
    display: grid;
    grid-gap: 18px;
    gap: 18px;
}
.partner-certificate-card dl div {
    display: grid;
    grid-template-columns: 1fr 1.1fr;
    grid-gap: 20px;
    gap: 20px;
    align-items: center;
}
.partner-certificate-card dt {
    color: #6b7280;
    font-size: 21px;
}
.partner-certificate-card dd {
    margin: 0;
    text-align: right;
    color: #06111d;
    font-size: 22px;
    font-weight: 900;
}
.green,
.partner-certificate-card dd.green {
    color: #0aa346 !important;
}
.certificate-progress {
    margin-top: 28px;
    display: grid;
    grid-template-columns: 1fr auto;
    grid-gap: 8px 18px;
    gap: 8px 18px;
    align-items: center;
    color: #64748b;
    font-size: 17px;
}
.certificate-progress i {
    grid-column: 1/-1;
    height: 12px;
    border-radius: 999px;
    background: #e5e7eb;
    overflow: hidden;
}
.certificate-progress em {
    display: block;
    height: 100%;
    min-width: 6px;
    border-radius: inherit;
    background: #f4c20d;
}
.partner-certificate-card p {
    margin: auto 0 0;
    padding-top: 20px;
    color: #d09c3b;
    text-align: center;
    font-size: 18px;
}
.partner-modal-backdrop {
    position: fixed;
    inset: 0;
    z-index: 80;
    padding: 8px;
    background: rgba(0, 0, 0, 0.55);
    display: grid;
    place-items: start center;
    overflow-y: auto;
}
.partner-certificate-modal {
    width: min(100% - 16px, 768px);
    margin-top: 0;
    max-height: min(92vh, 760px);
    border-radius: 58px;
    background: white;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    box-shadow: 0 30px 80px rgba(0, 0, 0, 0.28);
}
.partner-certificate-modal header {
    min-height: 150px;
    padding: 38px 36px;
    background: var(--green);
    color: white;
    display: flex;
    justify-content: space-between;
    gap: 24px;
}
.partner-certificate-modal header h2 {
    margin: 0 0 12px;
    color: white;
    font-size: 30px;
}
.partner-certificate-modal header p {
    margin: 0;
    color: #f4d87c;
    font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
    font-size: 20px;
    font-weight: 900;
}
.partner-certificate-modal header a {
    color: rgba(255, 255, 255, 0.78);
    font-size: 42px;
    line-height: 0.8;
}
.certificate-modal-body {
    padding: 38px 36px 36px;
    overflow-y: auto;
}
.certificate-modal-facts {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-gap: 24px 60px;
    gap: 24px 60px;
    margin-bottom: 32px;
}
.certificate-modal-facts span {
    display: block;
    color: #6b7280;
    font-size: 21px;
}
.certificate-modal-facts strong {
    display: block;
    margin-top: 4px;
    color: #111827;
    font-size: 22px;
}
.certificate-modal-body h3 {
    margin: 0 0 16px;
    color: var(--green);
    font-size: 27px;
}
.certificate-month-table {
    min-width: 0;
    border-collapse: collapse;
}
.certificate-month-table th {
    height: 48px;
    background: #fbfaf7;
    color: var(--green);
    font-size: 18px;
    text-transform: none;
}
.certificate-month-table td {
    height: 48px;
    border-top: 1px solid #eef0f3;
    color: #475569;
    font-size: 18px;
}
.certificate-month-table td:nth-child(3),
.certificate-month-table th:nth-child(3) {
    text-align: right;
    color: #0aa346;
    font-weight: 900;
}
.certificate-month-table .total td {
    background: #fbfaf7;
    color: var(--green);
    font-weight: 900;
}
.partner-portal {
    grid-template-columns: 268px 1fr;
}
.partner-sidebar-brand {
    min-height: 166px;
    padding: 20px 20px 22px;
}
.partner-sidebar-brand img {
    width: 86px;
    height: 60px;
    border-radius: 10px;
    margin-bottom: 16px;
}
.partner-sidebar-brand strong {
    font-size: 16px;
}
.partner-sidebar-brand span {
    margin-top: 9px;
    font-size: 12px;
}
.partner-side-nav {
    padding: 13px 0;
}
.partner-side-nav a,
.partner-sidebar-logout {
    min-height: 47px;
    padding: 0 21px;
    grid-template-columns: 20px 1fr auto;
    gap: 13px;
    border-right-width: 4px;
}
.partner-side-nav a b {
    width: 14px;
    height: 14px;
    border-radius: 3px;
    font-size: 10px;
}
.partner-nav-icon {
    width: 19px;
    height: 19px;
}
.partner-nav-icon:after,
.partner-nav-icon:before {
    inset: 3px;
    border-width: 2px;
}
.icon-dashboard:after {
    inset: 9px 6px 2px;
}
.icon-network:after {
    inset: 8px 0;
}
.icon-certificates:before {
    inset: 1px 4px 5px;
}
.icon-certificates:after {
    inset: 12px 6px 0;
}
.icon-wallet:before {
    inset: 5px 1px 2px;
}
.icon-wallet:after {
    inset: 8px 1px 6px 12px;
}
.icon-affiliate:before {
    inset: 7px 1px;
}
.icon-affiliate:after {
    inset: 5px 2px 5px 10px;
}
.icon-earnings:before {
    font-size: 20px;
    line-height: 19px;
}
.partner-sidebar-logout {
    grid-template-columns: 20px 1fr;
}
.partner-content {
    padding: 32px 40px 50px 34px;
}
.partner-page-title {
    margin-bottom: 24px;
    font-size: 27px;
}
.partner-profile-card {
    min-height: 372px;
    border-radius: 18px;
    padding: 27px 26px 24px;
}
.partner-profile-head {
    margin-bottom: 24px;
}
.partner-profile-head h2 {
    font-size: 20px;
}
.partner-profile-badges {
    gap: 9px;
}
.partner-profile-badges span {
    min-height: 26px;
    padding: 6px 10px;
    font-size: 12px;
}
.partner-profile-grid {
    gap: 23px 18px;
}
.partner-field span {
    font-size: 13px;
}
.partner-field div {
    min-height: 49px;
    padding: 12px 17px;
    border-radius: 12px;
    font-size: 16px;
}
.partner-certificate-grid {
    grid-template-columns: repeat(2, minmax(500px, 1fr));
    gap: 27px;
}
.partner-certificate-card {
    min-height: 407px;
    border-radius: 44px;
    padding: 27px 27px 24px;
}
.certificate-ribbon {
    width: 30px;
    height: 40px;
    margin-bottom: 14px;
}
.certificate-ribbon:before {
    left: 3px;
    width: 24px;
    height: 24px;
    border-width: 4px;
}
.certificate-ribbon:after {
    left: 7px;
    top: 21px;
    width: 16px;
    height: 17px;
    border-left-width: 4px;
    border-right-width: 4px;
}
.partner-certificate-card h2,
.partner-certificate-number {
    font-size: 16px;
}
.certificate-card-line {
    width: 68px;
    margin: 11px auto 19px;
}
.partner-certificate-card dl {
    gap: 13px;
}
.partner-certificate-card dl div {
    grid-template-columns: 1fr 1.15fr;
    gap: 14px;
}
.partner-certificate-card dt {
    font-size: 15px;
}
.partner-certificate-card dd {
    font-size: 16px;
}
.certificate-progress {
    margin-top: 20px;
    gap: 6px 13px;
    font-size: 12px;
}
.certificate-progress i {
    height: 9px;
}
.partner-certificate-card p {
    padding-top: 14px;
    font-size: 13px;
}
.panel {
    background: white;
    border: 1px solid var(--line);
    border-radius: 14px;
    box-shadow: 0 1px 3px rgba(15, 23, 42, 0.04);
}
.modules-panel {
    padding: 16px;
    display: flex;
    align-items: center;
    gap: 32px;
}
.module-grid {
    flex: 1 1;
    min-width: 0;
    padding: 4px;
    border-radius: 8px;
    background: #f0f1f3;
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    grid-gap: 3px 8px;
    gap: 3px 8px;
}
.module {
    min-width: 0;
    min-height: 34px;
    border-radius: 6px;
    color: var(--muted);
    font-size: 13px;
    font-weight: 900;
    line-height: 1.2;
    white-space: nowrap;
    display: inline-flex;
    align-items: center;
}
.module.active {
    background: white;
    color: var(--green);
    box-shadow: 0 1px 4px rgba(15, 23, 42, 0.08);
}
.export-actions {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
}
.export,
.manual,
.small-action {
    min-height: 38px;
    padding: 8px 16px;
    border: 0;
    border-radius: 8px;
    color: white;
    font-weight: 900;
    white-space: nowrap;
}
.manual,
.small-action.dark {
    background: var(--leaf);
}
.full,
.small-action.gold {
    background: var(--gold);
}
.cert-latest-display {
    display: inline-flex;
    flex-direction: column;
    justify-content: center;
    gap: 1px;
    min-height: 38px;
    padding: 6px 16px;
    border-radius: 8px;
    background: var(--leaf);
    color: white;
    transition:
        background-color 0.35s ease,
        color 0.35s ease;
}
.cert-latest-label {
    font-size: 12px;
    color: rgba(255, 255, 255, 0.92);
}
.cert-latest-label,
.cert-latest-value {
    font-weight: 900;
    letter-spacing: 0.02em;
    font-family:
        Courier New,
        monospace;
}
.cert-latest-value {
    font-size: 16px;
}
.cert-latest-display.pulse {
    background: var(--gold);
}
.cert-latest-display.pulse .cert-latest-label {
    color: rgba(16, 36, 28, 0.86);
}
.cert-latest-display.pulse .cert-latest-value {
    color: #10241c;
}
.cert-latest-display.cert-milestone-board {
    width: 360px;
    max-width: 100%;
    min-width: 0;
    box-sizing: border-box;
    padding: 6px 8px;
    gap: 4px;
}
.cert-milestone-table {
    width: 100%;
    min-width: 0;
    table-layout: fixed;
    border-collapse: collapse;
    color: inherit;
    font:
        700 12px/1.35 Courier New,
        monospace;
    font-feature-settings: "tnum";
    font-variant-numeric: tabular-nums;
}
.cert-milestone-table td,
.cert-milestone-table th {
    height: auto;
    padding: 1px 0;
    border: 0;
    font-size: inherit;
    letter-spacing: 0;
    text-align: center;
    white-space: nowrap;
    background: transparent;
    color: inherit;
}
.cert-milestone-table thead,
.cert-milestone-table tr,
.cert-milestone-table tr:hover {
    background: transparent;
}
.cert-milestone-table th {
    font-size: 12px;
    font-weight: 700;
    color: rgba(255, 255, 255, 0.8);
}
.cert-milestone-numbers {
    font-weight: 900;
}
.cert-milestone-dates {
    font-size: 10px;
    color: rgba(255, 255, 255, 0.8);
}
.cert-milestone-dates time {
    white-space: nowrap;
}
.cert-counter-link {
    color: inherit;
    text-decoration: underline;
    -webkit-text-decoration-color: rgba(255, 255, 255, 0.45);
    text-decoration-color: rgba(255, 255, 255, 0.45);
    text-underline-offset: 2px;
}
.cert-counter-link:hover {
    -webkit-text-decoration-color: currentColor;
    text-decoration-color: currentColor;
}
.cert-counter-link:focus-visible {
    outline: 2px solid var(--gold);
    outline-offset: 2px;
}
.cert-index-focused td,
.cert-index-focused:hover td {
    background: #fff3cc;
}
.cert-index-focused:focus {
    outline: 2px solid #b68c35;
    outline-offset: -2px;
}
.meeting-seat-sort {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
}
.meeting-seat-sort a {
    display: inline-flex;
    align-items: center;
    min-height: 38px;
    text-decoration: none;
}
.cert-milestone-footer {
    display: flex;
    justify-content: space-between;
    gap: 8px;
    padding-top: 3px;
    border-top: 1px solid rgba(255, 255, 255, 0.2);
    font-size: 10px;
    line-height: 1.3;
    white-space: nowrap;
}
.cert-milestone-board.pulse,
.cert-milestone-board.pulse .cert-milestone-dates,
.cert-milestone-board.pulse th {
    color: #10241c;
}
@media (max-width: 760px) {
    .cert-latest-display.cert-milestone-board,
    .export-actions:has(.cert-milestone-board) {
        width: 100%;
    }
}
@media (max-width: 640px) {
    .cert-latest-display {
        padding: 5px 12px;
    }
    .cert-latest-label {
        font-size: 11px;
    }
    .cert-latest-value {
        font-size: 14px;
    }
}
.small-action.muted {
    background: #f3f4f6;
    color: #263342;
}
.orders-panel {
    margin-top: 24px;
    overflow: hidden;
}
.filters {
    padding: 16px;
    border-bottom: 1px solid var(--line);
    display: grid;
    grid-template-columns: minmax(280px, 1fr) 128px 178px 42px auto;
    grid-gap: 12px;
    gap: 12px;
    align-items: center;
}
.refresh {
    width: 38px;
    height: 38px;
    border: 0;
    border-radius: 8px;
    background: #f3f4f6;
    color: #374151;
}
.undelivered-filters {
    grid-template-columns: repeat(2, minmax(190px, 1fr)) auto;
}
.undelivered-filter-button {
    width: auto;
    min-width: 160px;
    height: 39px;
    align-self: end;
    border: 0;
    border-radius: 8px;
    padding: 0 18px;
    background: var(--leaf);
    color: white;
    font-weight: 900;
    white-space: nowrap;
    cursor: pointer;
}
@media (max-width: 760px) {
    .undelivered-filters {
        grid-template-columns: 1fr;
    }
    .undelivered-filter-button {
        width: 100%;
    }
}
.table-wrap {
    overflow-x: auto;
}
table {
    width: 100%;
    min-width: 1120px;
    border-collapse: collapse;
}
.tnc-table {
    min-width: 0;
    table-layout: fixed;
}
@media (max-width: 640px) {
    .tnc-table-wrap {
        width: 100%;
        min-width: 0;
        overflow-x: visible;
    }
    .tnc-table thead {
        display: none;
    }
    .tnc-table tbody {
        display: block;
    }
    .tnc-table tr {
        display: block;
        margin-bottom: 10px;
        border: 1px solid var(--line);
        border-radius: 10px;
        overflow: hidden;
        background: #fff;
    }
    .tnc-table td {
        display: flex;
        justify-content: space-between;
        align-items: center;
        gap: 12px;
        height: auto;
        padding: 8px 12px;
        border-bottom: 1px solid #eef1ef;
        white-space: normal;
        overflow-wrap: anywhere;
        text-align: right;
    }
    .tnc-table td:last-child {
        border-bottom: 0;
    }
    .tnc-table td:before {
        content: attr(data-label);
        flex: 0 0 auto;
        color: var(--muted);
        font-size: 11px;
        font-weight: 900;
        letter-spacing: 0.04em;
        text-transform: uppercase;
        text-align: left;
    }
    .tnc-table td.owner-earnings-empty {
        display: block;
        text-align: left;
    }
    .tnc-table td.owner-earnings-empty:before {
        content: none;
    }
}
thead {
    background: #f8fafc;
}
th {
    height: 54px;
    padding: 11px 12px;
    color: var(--muted);
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0.5px;
    text-align: left;
}
td {
    height: 78px;
    padding: 13px 12px;
    border-top: 1px solid #f1f2f4;
    font-size: 13px;
    vertical-align: middle;
}
.tiny {
    color: var(--muted);
    font-size: 12px;
}
.bill,
.buyer,
.ref-name {
    color: #17212c;
    font-weight: 900;
}
.ref-code-popup {
    position: relative;
    display: inline-block;
    cursor: help;
    outline: none;
}
.ref-code-popup .ref-phone-pop {
    position: absolute;
    z-index: 30;
    right: 0;
    bottom: calc(100% + 4px);
    display: none;
    padding: 7px 11px;
    border-radius: 6px;
    background: #17212c;
    color: #fff;
    font-size: 13px;
    font-weight: 700;
    white-space: nowrap;
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.18);
}
.ref-code-popup .ref-phone-pop a {
    color: #f0d08a;
    text-decoration: none;
    letter-spacing: 0.3px;
}
.ref-code-popup:focus-within .ref-phone-pop,
.ref-code-popup:hover .ref-phone-pop {
    display: block;
}
.subtext {
    margin-top: 3px;
    color: #9ca3af;
    line-height: 1.25;
}
.product {
    font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
    font-size: 12px;
    font-weight: 800;
}
.amount {
    font-size: 16px;
    font-weight: 900;
}
.pill {
    padding: 5px 10px;
    border-radius: 999px;
    background: #f0fdf4;
    color: #168044;
    border: 1px solid #bbf7d0;
    font-size: 12px;
}
.pill,
.print-order-button {
    display: inline-flex;
    font-weight: 900;
}
.print-order-button {
    min-height: 42px;
    padding: 0 18px;
    border: 0;
    border-radius: 8px;
    background: #19c15f;
    color: white;
    font-size: 14px;
    white-space: nowrap;
    align-items: center;
    justify-content: center;
}
.print-order-button.reprint {
    background: #f3f4f6;
    color: #334155;
    border: 1px solid #e5e7eb;
}
.print-order-muted {
    color: #64748b;
    font-weight: 800;
    white-space: nowrap;
}
.ref-code {
    display: inline-block;
    min-width: 124px;
    margin-top: 5px;
    padding: 4px 10px;
    border-radius: 4px;
    background: #faf7f1;
    color: #c79842;
    font-weight: 900;
}
.page-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 9px 18px;
    border-radius: 999px;
    background: rgba(197, 160, 89, 0.1);
    color: var(--gold);
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 1.7px;
    text-transform: uppercase;
}
.page-pill.dark {
    background: rgba(197, 160, 89, 0.18);
}
.gold-line {
    width: 96px;
    height: 4px;
    margin: 24px auto;
    border-radius: 999px;
    background: radial-gradient(circle, var(--gold), transparent 70%);
}
.page-hero {
    position: relative;
    overflow: hidden;
    min-height: 465px;
    padding: 86px 0;
    display: grid;
    place-items: center;
    background: linear-gradient(90deg, rgba(6, 30, 19, 0.98), rgba(6, 30, 19, 0.9)),
        radial-gradient(circle at 80% 40%, rgba(197, 160, 89, 0.15), transparent 24rem), var(--green);
    color: white;
    text-align: center;
}
.page-hero.compact {
    min-height: 236px;
    padding: 38px 0;
}
.page-hero h1 {
    margin: 22px 0 0;
    color: white;
    font-size: clamp(44px, 5vw, 62px);
    line-height: 1.05;
}
.page-hero p {
    max-width: 680px;
    margin: 0 auto;
    color: #e5e7eb;
    font-size: 18px;
    line-height: 1.6;
}
.collection-hero {
    min-height: 650px;
    padding: 92px 0;
    background: radial-gradient(circle at 88% 28%, rgba(197, 160, 89, 0.09), transparent 18rem), var(--cream);
    text-align: center;
}
.collection-hero .lead {
    max-width: 690px;
}
.product-skeleton-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    grid-gap: 32px;
    gap: 32px;
    margin: 70px auto 0;
    max-width: 1160px;
}
.product-skeleton {
    height: 330px;
    border: 1px solid #f0ece2;
    border-radius: 32px;
    background: rgba(255, 255, 255, 0.55);
    box-shadow: 0 18px 50px rgba(15, 23, 42, 0.04);
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding: 28px;
}
.product-skeleton div {
    flex: 1 1;
    margin: -28px -28px 28px;
    background: rgba(255, 255, 255, 0.36);
    border-radius: 32px 32px 0 0;
}
.product-skeleton span {
    display: block;
    height: 16px;
    width: 90px;
    margin-top: 10px;
    border-radius: 5px;
    background: #e5e7eb;
}
.about-body {
    background: white;
}
.about-journey {
    display: grid;
    grid-template-columns: 1.1fr 0.9fr;
    grid-gap: 58px;
    gap: 58px;
    align-items: center;
    margin-bottom: 70px;
}
.about-journey h2 {
    margin: 20px 0;
    color: var(--green);
    font-size: clamp(34px, 4vw, 54px);
    line-height: 1.1;
}
.about-journey p {
    color: #4b5563;
    font-size: 17px;
    line-height: 1.8;
}
.address-card {
    border: 1px solid #eee7d9;
    border-radius: 32px;
    padding: 38px;
    background: var(--cream);
    text-align: center;
}
.address-card img {
    width: 170px;
    height: 110px;
    object-fit: contain;
}
.contact-body {
    padding-top: 72px;
    background: var(--cream);
}
.contact-grid {
    display: grid;
    grid-template-columns: 1.1fr 0.9fr;
    grid-gap: 40px;
    gap: 40px;
    max-width: 1160px;
    margin: 0 auto;
}
.contact-grid .card {
    border-radius: 28px;
    padding: 40px;
}
.contact-grid input {
    height: 58px;
    border-radius: 12px;
}
.field-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 18px;
    gap: 18px;
}
.contact-method {
    display: grid;
    grid-template-columns: 48px 1fr;
    grid-gap: 16px;
    gap: 16px;
    align-items: start;
    margin: 0 0 24px;
    color: #374151;
}
.contact-method span {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    display: grid;
    place-items: center;
    background: #faf7f1;
    color: var(--gold);
    font-size: 20px;
}
.contact-method b {
    display: block;
    color: #1f2937;
    margin-bottom: 4px;
}
.contact-method a,
.contact-method strong {
    display: block;
    color: #b49656;
    font-weight: 900;
}
.order-page {
    background: var(--cream);
}
.order-layout {
    display: grid;
    grid-template-columns: 0.85fr 1.15fr;
    grid-gap: 42px;
    gap: 42px;
    align-items: start;
    max-width: 1160px;
}
.order-product-preview {
    position: -webkit-sticky;
    position: sticky;
    top: 140px;
    border: 1px solid #eee7d9;
    border-radius: 28px;
    padding: 30px;
    background: white;
    text-align: center;
    box-shadow: 0 18px 45px rgba(15, 23, 42, 0.05);
}
.order-product-preview img {
    width: 100%;
    max-height: 360px;
    object-fit: contain;
    border-radius: 22px;
}
.order-product-preview h2 {
    margin: 22px 0 8px;
    color: var(--green);
    font-size: 36px;
}
.order-product-preview p {
    color: #4b5563;
    line-height: 1.65;
}
.order-form {
    border-radius: 28px;
    padding: 38px 40px;
}
.order-summary {
    margin-bottom: 24px;
}
.order-summary h1 {
    margin: 16px 0 8px;
    color: var(--green);
    font-size: 36px;
    line-height: 1.1;
}
.order-summary p {
    margin: 0;
    color: #4b5563;
    line-height: 1.6;
}
.quick-order-wrap {
    display: flex;
    justify-content: flex-end;
    margin: 0 0 18px;
}
.quick-order-card {
    width: min(100%, 340px);
    border: 1px solid #d8c28e;
    border-radius: 14px;
    padding: 13px 15px;
    background: linear-gradient(135deg, #fffcf5, #fff);
    color: #334155;
    display: grid;
    grid-gap: 3px;
    gap: 3px;
    text-align: left;
    cursor: pointer;
    box-shadow: 0 8px 22px rgba(15, 23, 42, 0.06);
    transition:
        transform 0.18s ease,
        border-color 0.18s ease,
        box-shadow 0.18s ease;
}
.quick-order-card:hover {
    transform: translateY(-1px);
    border-color: var(--gold);
    box-shadow: 0 10px 26px rgba(15, 23, 42, 0.1);
}
.quick-order-card strong {
    color: var(--green);
    font-size: 14px;
}
.quick-order-card span {
    color: #475569;
    font-size: 13px;
}
.quick-order-card small {
    color: #8a6b2f;
    font-size: 12px;
    font-weight: 800;
}
.quick-order-loaded {
    margin: 0 0 22px;
    border: 1px solid #bbdfc8;
    border-radius: 12px;
    padding: 12px 14px;
    background: #f0fdf4;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
}
.quick-order-loaded div {
    display: grid;
    grid-gap: 3px;
    gap: 3px;
}
.quick-order-loaded strong {
    color: #166534;
    font-size: 14px;
}
.quick-order-loaded span {
    color: #475569;
    font-size: 12px;
}
.quick-order-loaded button {
    flex: none;
    border: 0;
    border-radius: 8px;
    padding: 8px 11px;
    background: white;
    color: #475569;
    font-weight: 900;
}
.manual-order-copy {
    margin: 0 0 28px;
    border: 1px solid #e4d2a7;
    border-radius: 16px;
    padding: 18px;
    background: #fffcf5;
}
.manual-order-copy-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 14px;
}
.manual-order-copy-head h2 {
    margin: 0 0 5px;
    color: var(--green);
    font-size: 22px;
}
.manual-order-copy-head p {
    margin: 0;
    color: #64748b;
    font-size: 13px;
}
.manual-order-copy-search {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    grid-gap: 10px;
    gap: 10px;
}
.manual-order-copy-search input {
    height: 44px;
}
.copy-clear,
.manual-order-copy-search button {
    min-height: 40px;
    border: 0;
    border-radius: 9px;
    padding: 0 16px;
    background: var(--green);
    color: white;
    font-weight: 900;
}
.manual-order-copy-search button:disabled {
    opacity: 0.6;
    cursor: wait;
}
.copy-clear {
    min-height: 34px;
    flex: none;
    background: #f1f5f9;
    color: #475569;
}
.copy-order-error {
    margin: 12px 0 0 !important;
    color: #b91c1c !important;
    font-size: 13px;
    font-weight: 800;
}
.copy-order-success {
    margin-top: 14px;
    border: 1px solid #bbdfc8;
    border-radius: 10px;
    padding: 12px 14px;
    background: #f0fdf4;
    display: grid;
    grid-gap: 4px;
    gap: 4px;
}
.copy-order-success strong {
    color: #166534;
}
.copy-order-success span {
    color: #334155;
    font-size: 13px;
}
.copy-order-success small {
    color: #64748b;
    line-height: 1.45;
}
.referrer-suggestion-warning {
    margin: -10px 0 22px;
    border: 1px solid #f59e0b;
    border-radius: 10px;
    padding: 12px 14px;
    background: #fffbeb;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
}
.referrer-suggestion-warning div {
    display: grid;
    grid-gap: 3px;
    gap: 3px;
}
.referrer-suggestion-warning strong {
    color: #92400e;
    font-size: 14px;
}
.referrer-suggestion-warning span {
    color: #92400e;
    font-size: 12px;
}
.referrer-suggestion-actions {
    display: flex;
    gap: 8px;
    flex: none;
}
.referrer-suggestion-actions button {
    border: 0;
    border-radius: 8px;
    padding: 8px 11px;
    font-weight: 900;
}
.referrer-suggestion-actions button:first-child {
    background: #b45309;
    color: white;
}
.referrer-suggestion-actions button:last-child {
    background: white;
    color: #92400e;
}
@media (max-width: 640px) {
    .referrer-suggestion-warning {
        flex-direction: column;
        align-items: flex-start;
    }
}
.copied-field-label {
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}
.copied-field-label > span {
    display: inline !important;
    margin: 0 !important;
}
.copied-field-label button {
    border: 0;
    padding: 2px 0;
    background: transparent;
    color: #b4862c;
    font-size: 12px;
    font-weight: 900;
}
.copied-field-label button:disabled {
    color: #16a34a;
}
.order-form input[readonly],
.order-form select:disabled,
.order-form textarea[readonly] {
    border-color: #e2e8f0;
    background: #f1f5f9;
    color: #64748b;
    cursor: default;
    opacity: 1;
}
@media (max-width: 620px) {
    .quick-order-card {
        width: 100%;
    }
    .quick-order-loaded {
        align-items: flex-start;
    }
    .manual-order-copy-head {
        flex-direction: column;
    }
    .manual-order-copy-search {
        grid-template-columns: 1fr;
    }
}
.order-price {
    display: flex;
    align-items: baseline;
    gap: 12px;
    margin-top: 16px;
}
.order-price span {
    color: #9ca3af;
    font-size: 22px;
    text-decoration: line-through;
}
.order-price strong {
    color: var(--green);
    font-size: 34px;
}
.order-total {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: 10px 0 20px;
    padding: 18px 20px;
    border-radius: 14px;
    background: #faf7f1;
    color: var(--green);
    font-weight: 900;
}
.order-total strong {
    font-size: 26px;
}
.form-error {
    margin: 0 0 14px;
}
.thank-you-page {
    min-height: 650px;
    display: grid;
    place-items: center;
    background: radial-gradient(circle at 80% 20%, rgba(197, 160, 89, 0.08), transparent 22rem), var(--cream);
}
.thank-you-card {
    width: min(100%, 900px);
    margin: 0 auto;
    border: 1px solid rgba(197, 160, 89, 0.32);
    border-radius: 30px;
    padding: 52px;
    background: #fff;
    text-align: center;
    box-shadow: 0 22px 55px rgba(6, 30, 19, 0.1);
}
.thank-you-card h1 {
    margin: 18px 0 10px;
    color: var(--green);
    font-size: 20px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}
.thank-you-card p {
    color: #4b5563;
    line-height: 1.7;
}
.thank-you-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 16px;
    gap: 16px;
    margin: 30px 0;
    text-align: left;
}
.thank-you-grid div {
    min-width: 0;
    min-height: 140px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 22px;
    border: 2px solid rgba(197, 160, 89, 0.42);
    border-radius: 16px;
    background: linear-gradient(145deg, #fff, #faf6ed);
    box-shadow: 0 8px 20px rgba(6, 30, 19, 0.07);
}
.thank-you-grid span {
    display: block;
    color: #77633b;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}
.thank-you-grid strong {
    display: block;
    margin-top: 10px;
    overflow-wrap: anywhere;
    color: var(--green);
    font-size: clamp(30px, 3.2vw, 44px);
    line-height: 1.08;
}
.thank-you-grid .thank-you-tracking {
    font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
    font-size: clamp(22px, 2.4vw, 32px);
    letter-spacing: 0.03em;
}
.thank-you-amount-breakdown {
    display: block;
    margin-top: 6px;
    color: #77633b;
    font-size: 12px;
    font-weight: 600;
    text-transform: none;
    letter-spacing: normal;
}
.support-line a {
    color: #b49656;
    font-weight: 900;
}
.thank-you-actions {
    display: flex;
    justify-content: center;
    gap: 14px;
    flex-wrap: wrap;
    margin-top: 26px;
}
.tracking-availability-note {
    margin: 24px 0 0 !important;
    padding: 14px 18px;
    border: 1px solid rgba(197, 160, 89, 0.5);
    border-radius: 14px;
    background: #fff9e9;
    color: #4d422d !important;
    font-size: 14px;
    font-weight: 800;
    line-height: 1.5 !important;
}
.tracking-availability-note a {
    color: #075f3d;
    font-weight: 900;
    text-decoration: underline;
    text-underline-offset: 3px;
}
.visually-hidden {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
}
.admin-content {
    padding: 22px;
}
.dispatch-toolbar {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 14px;
    margin: 18px 0;
    color: var(--muted);
    font-weight: 800;
}
.dispatch-page-link {
    min-width: 94px;
    padding: 10px 16px;
    border-radius: 8px;
    background: var(--leaf);
    color: white;
    text-align: center;
    font-weight: 900;
}
.dispatch-page-link.disabled {
    pointer-events: none;
    opacity: 0.45;
}
.dispatch-search {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    margin: 0 0 18px;
}
.dispatch-search input[type="search"] {
    flex: 1 1 200px;
    min-width: 0;
    height: 42px;
    padding: 0 12px;
    border: 1px solid #d1d5db;
    border-radius: 8px;
    background: white;
    font: inherit;
}
.dispatch-search-button {
    height: 42px;
    padding: 0 18px;
    border: 0;
    border-radius: 8px;
    background: var(--leaf);
    color: white;
    font-weight: 900;
    cursor: pointer;
}
.dispatch-search-clear {
    height: 42px;
    padding: 0 14px;
    display: inline-flex;
    align-items: center;
    border-radius: 8px;
    background: #f3f4f6;
    color: #263342;
    font-weight: 800;
}
.dispatch-bulk-toggle {
    min-width: 130px;
    padding: 10px 16px;
    border-radius: 8px;
    background: #c69235;
    color: white;
    text-align: center;
    font-weight: 900;
}
.dispatch-bulk-toggle.active {
    background: #4b5563;
}
.generate-dispatch-form {
    margin-top: 28px;
}
.generate-dispatch-fields {
    display: flex;
    align-items: flex-end;
    gap: 14px;
    flex-wrap: wrap;
}
.generate-dispatch-fields label {
    display: flex;
    flex-direction: column;
    gap: 5px;
    font-weight: 600;
    font-size: 0.92rem;
}
.generate-dispatch-fields input[type="number"] {
    padding: 9px 12px;
    border: 1.5px solid var(--border);
    border-radius: 7px;
    font-size: 1rem;
    width: 150px;
    background: var(--input-bg, var(--card));
    color: var(--fg);
}
.dispatch-generate-btn {
    padding: 10px 22px;
    background: var(--leaf);
    color: white;
    border: none;
    border-radius: 8px;
    font-weight: 800;
    font-size: 0.97rem;
    cursor: pointer;
    white-space: nowrap;
}
.dispatch-generate-btn:hover {
    opacity: 0.88;
}
.generate-dispatch-hint {
    margin-top: 14px;
    font-size: 0.87rem;
    color: var(--muted);
}
@media (max-width: 600px) {
    .generate-dispatch-fields {
        flex-direction: column;
        align-items: stretch;
    }
    .generate-dispatch-fields input[type="number"] {
        width: 100%;
    }
}
.orders-pagination {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin: 22px 0 4px;
    flex-wrap: wrap;
}
.orders-page-control,
.orders-page-number {
    min-width: 50px;
    height: 38px;
    padding: 0 14px;
    border: 1px solid #e5e7eb;
    border-radius: 10px;
    background: white;
    color: #344054;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-weight: 900;
    line-height: 1;
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.03);
}
.orders-page-control.icon {
    min-width: 38px;
    padding: 0;
    color: #94a3b8;
}
.orders-page-control.prev {
    color: #9ca3af;
}
.orders-page-number.active {
    border-color: var(--green);
    background: var(--green);
    color: white;
}
.orders-page-control.disabled {
    pointer-events: none;
    color: #cbd5e1;
    background: #fafafa;
}
.orders-page-ellipsis {
    min-width: 32px;
    height: 38px;
    color: #64748b;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-weight: 900;
}
.dispatch-table-wrap table {
    min-width: 1120px;
}
.cancelled-metrics {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    grid-gap: 16px;
    gap: 16px;
    margin-bottom: 32px;
}
.cancelled-metric {
    border: 1px solid var(--line);
    border-radius: 12px;
    padding: 18px 20px;
}
.cancelled-metric span {
    display: block;
    color: var(--muted);
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
}
.cancelled-metric strong {
    display: block;
    margin-top: 4px;
    font-size: 28px;
    line-height: 1;
}
.cancelled-metric.danger {
    background: #fecaca;
    border-color: #fecdd3;
    color: #dc2626;
}
.cancelled-metric.neutral {
    background: #f8fafc;
    color: var(--ink);
}
.cancelled-metric.warning {
    background: #fff7ed;
    border-color: #fed7aa;
    color: #f97316;
}
.cancelled-filters {
    display: grid;
    grid-template-columns: 1fr 164px 48px;
    grid-gap: 12px;
    gap: 12px;
    margin-bottom: 14px;
}
.cancelled-filters input,
.cancelled-filters select {
    min-height: 40px;
    border: 1px solid var(--line);
    border-radius: 8px;
    padding: 8px 12px;
    font: inherit;
}
.cancelled-table-wrap table {
    min-width: 1180px;
}
.muted-pill {
    background: #f8fafc;
    border-color: #e2e8f0;
    color: #475569;
}
.similar-order {
    display: block;
    width: max-content;
    margin-top: 6px;
    padding: 3px 8px;
    border: 1px solid #fde68a;
    border-radius: 999px;
    color: #b45309;
    background: #fffbeb;
    font-size: 11px;
    font-weight: 900;
}
.cancelled-actions {
    display: grid;
    grid-gap: 8px;
    gap: 8px;
    justify-items: stretch;
}
.cancelled-actions button {
    min-height: 30px;
    border: 0;
    border-radius: 8px;
    background: #f1f5f9;
    color: var(--ink);
    font-weight: 900;
}
.cancelled-actions .recover-payment {
    background: #16a34a;
    color: white;
}
.cancelled-actions span {
    color: var(--muted);
    font-size: 12px;
    text-align: center;
}
.metric-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    grid-gap: 14px;
    gap: 14px;
    margin-bottom: 18px;
}
.metric {
    border: 1px solid var(--line);
    border-radius: 10px;
    padding: 18px;
    background: white;
}
.metric strong {
    display: block;
    color: var(--green);
    font-size: 24px;
}
.owner-earnings-module h2 {
    margin-bottom: 8px;
}
.owner-earnings-metrics .metric {
    border-left: 5px solid var(--green);
}
.owner-earnings-metrics .accent-blue {
    border-left-color: #3b82f6;
}
.owner-earnings-metrics .accent-blue strong {
    color: #2563eb;
}
.owner-earnings-metrics .accent-orange {
    border-left-color: #f97316;
}
.owner-earnings-metrics .accent-orange strong {
    color: #ea580c;
}
.owner-earnings-metrics .accent-teal {
    border-left-color: #14b8a6;
}
.owner-earnings-metrics .accent-teal strong {
    color: #0f766e;
}
.owner-earnings-toolbar {
    display: grid;
    grid-template-columns: auto minmax(360px, 1fr);
    grid-gap: 16px;
    gap: 16px;
    align-items: center;
    margin: 28px 0 18px;
}
.owner-earning-chip-row {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}
.owner-earning-chip {
    min-height: 42px;
    padding: 0 16px;
    border-radius: 999px;
    background: #f3f4f6;
    color: #334155;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-weight: 900;
}
.owner-earning-chip.active {
    background: var(--gold);
    color: white;
}
.owner-earning-chip span {
    min-width: 22px;
    height: 22px;
    padding: 0 7px;
    border-radius: 999px;
    background: rgba(15, 23, 42, 0.08);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
}
.owner-earning-chip.active span {
    background: rgba(255, 255, 255, 0.22);
}
.owner-earning-search {
    display: grid;
    grid-template-columns: minmax(190px, 300px) minmax(240px, 1fr) auto 42px;
    grid-gap: 10px;
    gap: 10px;
    align-items: center;
}
.owner-earning-search input,
.owner-earning-search select {
    min-height: 42px;
    border: 1px solid var(--line);
    border-radius: 10px;
    padding: 8px 12px;
    font: inherit;
    color: #334155;
    background: white;
}
.owner-earning-reset {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    font-size: 20px;
}
.owner-earnings-table-wrap table {
    min-width: 1160px;
}
.owner-earning-amount,
.owner-earnings-table-wrap th:last-child {
    text-align: right;
}
.owner-earning-type {
    display: inline-flex;
    min-height: 30px;
    align-items: center;
    border-radius: 999px;
    padding: 5px 12px;
    font-weight: 900;
    white-space: nowrap;
}
.owner-earning-type.direct {
    background: #eff6ff;
    color: #1d4ed8;
}
.owner-earning-type.overflow {
    background: #ffedd5;
    color: #c2410c;
}
.owner-earning-type.manual {
    background: #ccfbf1;
    color: #0f766e;
}
.owner-earning-note {
    color: #8a96a8;
    font-weight: 700;
}
.owner-earnings-empty {
    height: 120px;
    color: var(--muted);
    text-align: center;
}
.owner-earnings-footnote {
    margin: 12px 0 0;
    color: var(--muted);
    font-size: 12px;
    font-weight: 800;
}
.placeholder {
    padding: 48px;
    color: var(--muted);
    text-align: center;
    border: 1px dashed #d1d5db;
    border-radius: 10px;
    background: #fafafa;
}
.partners-module {
    min-height: 520px;
    background: white;
}
.partner-filter-row {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
    padding-bottom: 22px;
    border-bottom: 1px solid #dfe3e8;
}
.partner-chip {
    min-height: 40px;
    border: 0;
    border-radius: 8px;
    padding: 9px 16px;
    background: #f0f1f4;
    color: #334155;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-weight: 900;
}
.partner-chip.active {
    background: var(--green);
    color: white;
}
.partner-chip b {
    min-width: 25px;
    height: 22px;
    border-radius: 999px;
    background: #d8dee6;
    color: #334155;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
}
.partner-chip.active b {
    background: rgba(255, 255, 255, 0.18);
    color: white;
}
.partner-refresh {
    margin-left: auto;
    width: 38px;
    height: 38px;
    overflow: hidden;
    border: 0;
    border-radius: 9px;
    background: #f0f1f4;
    color: #263342;
    font-size: 0;
}
.partner-refresh:before {
    content: "↻";
    font-size: 20px;
}
.partner-notice {
    margin: 28px 0 0;
    min-height: 80px;
    border: 1px solid #fde047;
    border-radius: 12px;
    padding: 18px 22px;
    background: #fffde8;
    display: grid;
    grid-template-columns: 24px 1fr;
    grid-gap: 14px;
    gap: 14px;
    align-items: start;
    color: #a04f00;
}
.partner-notice span {
    color: #fb923c;
    font-size: 22px;
    font-weight: 900;
    line-height: 1;
}
.partner-notice p {
    margin: 0;
    line-height: 1.45;
}
.partner-notice strong {
    display: block;
    color: #92400e;
    font-size: 16px;
}
.partner-empty {
    min-height: 285px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 14px;
    color: #5f6b7b;
}
.partner-empty div {
    width: 52px;
    height: 52px;
    overflow: hidden;
    border: 4px solid #facc15;
    border-radius: 999px;
    color: transparent;
    position: relative;
}
.partner-empty div:before {
    top: 12px;
    width: 4px;
    height: 16px;
}
.partner-empty div:after,
.partner-empty div:before {
    content: "";
    position: absolute;
    left: 23px;
    border-radius: 999px;
    background: #facc15;
}
.partner-empty div:after {
    top: 25px;
    width: 14px;
    height: 4px;
    transform-origin: left center;
    transform: rotate(35deg);
}
.partner-empty p {
    margin: 0;
    font-size: 18px;
}
.partner-table-wrap {
    margin-top: 24px;
    border: 1px solid var(--line);
    border-radius: 12px;
}
.partner-table {
    min-width: 1380px;
}
.partner-table th {
    background: #f8fafc;
    color: #5f6b7b;
    font-size: 12px;
    text-transform: uppercase;
}
.partner-table td {
    color: #253143;
}
.partner-role {
    min-width: 42px;
    padding: 5px 10px;
    border-radius: 999px;
    background: #ecfdf5;
    color: #047857;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    font-weight: 900;
}
.partner-address {
    max-width: 210px;
    color: #334155;
}
.partner-actions {
    gap: 8px;
    min-width: 210px;
}
.partner-actions button {
    min-height: 32px;
    border: 0;
    padding: 0 12px;
    background: #eef2f7;
    color: #334155;
    font-weight: 900;
}
.partner-actions button:first-child {
    background: #ecfdf5;
    color: #047857;
}
.partner-actions button:disabled {
    opacity: 0.6;
    cursor: wait;
}
.partner-action-error {
    flex-basis: 100%;
    color: #b91c1c;
    font-size: 11px;
    font-weight: 800;
}
.bill-tree-module {
    background: #fff;
}
.bill-tree-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 18px;
}
.bill-tree-head h2 {
    margin: 0 0 8px;
    color: var(--green);
    font-size: 34px;
}
.bill-tree-actions {
    display: flex;
    gap: 10px;
}
.bill-tree-filters {
    grid-template-columns: minmax(260px, 1fr) 76px 76px 88px 88px;
    border: 1px solid var(--line);
    border-radius: 10px;
    margin-bottom: 18px;
}
.bill-tree-canvas {
    min-height: 520px;
    overflow-x: auto;
    border: 1px solid var(--line);
    border-radius: 12px;
    padding: 18px;
    background: linear-gradient(#fff, #fdfcf9);
}
.formula-row {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 10px;
    color: #374151;
    font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
    font-size: 12px;
}
.formula-row span {
    padding: 9px 12px;
    border: 1px solid #edf0f3;
    border-radius: 8px;
    background: #fafafa;
}
.tree-levels {
    display: grid;
    grid-gap: 0;
    gap: 0;
    min-width: 1180px;
    padding: 24px 8px 16px;
}
.tree-level {
    position: relative;
    padding: 0 0 86px;
}
.tree-level:last-child {
    padding-bottom: 0;
}
.tree-level:not(:last-child):after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 0;
    width: 1px;
    height: 86px;
    background: #f4c8aa;
    transform: translateX(-50%);
}
.tree-node-row {
    gap: 26px;
}
.tree-family,
.tree-node-row {
    position: relative;
    display: flex;
    justify-content: center;
}
.tree-family {
    gap: 18px;
}
.tree-level:not(.tree-level-0) .tree-family:before {
    content: "";
    position: absolute;
    top: -43px;
    left: 50%;
    width: calc(100% - 168px);
    min-width: 0;
    height: 1px;
    background: #f4c8aa;
    transform: translateX(-50%);
}
.tree-level:not(.tree-level-0) .tree-family:after {
    top: -86px;
}
.tree-level:not(.tree-level-0) .bill-node:before,
.tree-level:not(.tree-level-0) .tree-family:after {
    content: "";
    position: absolute;
    left: 50%;
    width: 1px;
    height: 43px;
    background: #f4c8aa;
    transform: translateX(-50%);
}
.tree-level:not(.tree-level-0) .bill-node:before {
    top: -43px;
}
.bill-node {
    flex: 0 0 168px;
    min-height: 254px;
    border: 2px solid #20a276;
    border-radius: 14px;
    padding: 12px 14px 28px;
    background: #effaf5;
    text-align: center;
    box-shadow: 0 8px 20px rgba(15, 23, 42, 0.06);
    position: relative;
}
.bill-node.level-1 {
    border-color: #7c3aed;
    background: #f5efff;
}
.bill-node.level-2 {
    border-color: #f97316;
    background: #fff5ed;
}
.bill-node.level-3 {
    border-color: #d29b12;
    background: #fffbeb;
}
.bill-node.level-4,
.bill-node.level-5 {
    border-color: #0891b2;
    background: #ecfeff;
}
.node-topline {
    display: flex;
    align-items: center;
    justify-content: space-between;
    color: var(--muted);
    font-size: 11px;
    font-weight: 900;
}
.node-topline span {
    padding: 4px 8px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.8);
    color: #047857;
}
.node-avatar {
    width: 48px;
    height: 48px;
    margin: 10px auto 9px;
    border-radius: 999px;
    background: linear-gradient(135deg, var(--leaf), #22a06b);
    color: white;
    display: grid;
    place-items: center;
    font-size: 13px;
    font-weight: 900;
}
.bill-node.level-1 .node-avatar {
    background: linear-gradient(135deg, #6d28d9, #8b5cf6);
}
.bill-node.level-2 .node-avatar {
    background: linear-gradient(135deg, #ea580c, #fb923c);
}
.bill-node strong,
.node-amount {
    display: block;
    color: var(--green);
    font-weight: 900;
}
.bill-node strong {
    font-size: 14px;
}
.bill-node strong,
.node-name {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.node-name {
    margin-top: 4px;
    color: #1f2937;
    font-size: 12px;
    font-weight: 800;
}
.bill-node em {
    display: block;
    margin: 5px 0 10px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: var(--muted);
    font-size: 11px;
    font-style: normal;
}
.node-amount {
    padding-top: 10px;
    border-top: 1px solid rgba(15, 23, 42, 0.08);
    font-size: 16px;
}
.node-earned {
    margin-top: 4px;
    color: #059669;
    font-size: 12px;
    font-weight: 900;
}
.bill-node small {
    display: block;
    margin-top: 6px;
    color: #bec5ce;
    font-size: 10px;
    line-height: 1.25;
}
.node-checks {
    display: flex;
    justify-content: center;
    gap: 5px;
    margin-top: 8px;
    color: #16c784;
    font-size: 13px;
    font-weight: 900;
}
.node-checks span {
    width: 16px;
    height: 16px;
    border: 1px solid #9be7bf;
    border-radius: 999px;
}
.node-checks span,
.node-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
}
.node-toggle {
    position: absolute;
    left: 50%;
    bottom: -14px;
    width: 28px;
    height: 28px;
    border: 2px solid;
    border-radius: 999px;
    background: white;
    color: inherit;
    font-size: 16px;
    font-weight: 900;
    transform: translateX(-50%);
    z-index: 2;
}
.node-toggle:disabled {
    opacity: 0.4;
    cursor: default;
}
.certificate-tree-canvas {
    min-height: 360px;
    padding: 12px;
}
.certificate-tree-canvas .tree-levels {
    min-width: 760px;
    padding-top: 16px;
}
.certificate-tree-canvas .tree-level {
    padding-bottom: 48px;
}
.certificate-tree-canvas .tree-level:not(:last-child):after {
    height: 48px;
}
.certificate-tree-canvas .tree-level:not(.tree-level-0) .tree-family:before {
    top: -24px;
    width: calc(100% - 84px);
}
.certificate-tree-canvas .tree-level:not(.tree-level-0) .tree-family:after {
    top: -48px;
    height: 24px;
}
.certificate-tree-canvas .tree-level:not(.tree-level-0) .bill-node:before {
    top: -24px;
    height: 24px;
}
.certificate-tree-canvas .tree-node-row {
    gap: 14px;
}
.certificate-tree-canvas .tree-family {
    gap: 8px;
}
.certificate-node {
    flex-basis: 84px;
    min-height: 126px;
    border-width: 1px;
    border-radius: 9px;
    padding: 6px 7px 18px;
    box-shadow: 0 4px 10px rgba(15, 23, 42, 0.05);
}
.certificate-node .node-topline {
    font-size: 8px;
}
.certificate-node .node-topline span {
    padding: 2px 5px;
}
.certificate-node .node-avatar {
    width: 26px;
    height: 26px;
    margin: 5px auto;
    font-size: 8px;
}
.certificate-node strong {
    font-size: 9px;
}
.certificate-node .node-name {
    font-size: 8px;
    line-height: 1.1;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.certificate-node em {
    margin: 3px 0 4px;
    font-size: 8px;
}
.certificate-node .node-amount {
    font-size: 9px;
}
.certificate-node small {
    margin-top: 3px;
    font-size: 7px;
}
.certificate-node .node-toggle {
    bottom: -10px;
    width: 20px;
    height: 20px;
    font-size: 11px;
    border-width: 1px;
}
.certificate-tree-launch {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin: 0 0 18px;
    padding: 18px;
    border: 1px solid var(--line);
    border-radius: 14px;
    background: linear-gradient(135deg, #fffaf0, #fff);
}
.certificate-tree-launch h2 {
    margin: 0 0 6px;
    color: var(--green);
    font-size: 28px;
}
.certificate-tree-launch p {
    margin: 0;
    color: var(--muted);
}
.certificate-tree-launch-actions {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-left: auto;
}
.certificate-tree-launch-actions .s99-cert-button {
    border: 1px solid #e2e8f0;
    background: #f8fafc;
    color: #334155;
}
body.modal-open {
    overflow: hidden;
}
.certificate-tree-overlay {
    position: fixed;
    inset: 0;
    z-index: 1000;
    padding: 18px;
    background: rgba(15, 23, 42, 0.58);
    display: flex;
}
.certificate-tree-window {
    flex: 1 1;
    min-width: 0;
    border-radius: 18px;
    background: #fffdf8;
    box-shadow: 0 30px 80px rgba(15, 23, 42, 0.35);
    display: flex;
    flex-direction: column;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, 0.75);
}
.s99-certificate-window {
    position: relative;
    flex: initial;
    width: min(720px, 94vw);
    max-height: min(860px, calc(100vh - 36px));
    min-height: 0;
    margin: auto;
    overflow: auto;
}
.s99-certificate-window .certificate-detail-panel {
    position: static;
    width: 100%;
    min-width: 680px;
    border-left: 0;
    box-shadow: none;
}
.certificate-tree-window-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 18px 22px;
    border-bottom: 1px solid var(--line);
    background: white;
}
.certificate-tree-window-head h2 {
    margin: 0 0 4px;
    color: var(--green);
    font-size: 30px;
}
.certificate-tree-window-head p {
    margin: 0;
    color: var(--muted);
}
.certificate-tree-close {
    width: 42px;
    height: 42px;
    border: 1px solid var(--line);
    border-radius: 999px;
    background: #fff7ed;
    color: #7c2d12;
    font-size: 30px;
    line-height: 1;
    cursor: pointer;
}
.certificate-tree-toolbar {
    display: grid;
    grid-template-columns: minmax(260px, 1fr) auto auto;
    grid-gap: 10px;
    gap: 10px;
    padding: 14px 18px;
    border-bottom: 1px solid var(--line);
    background: #fffaf0;
}
.certificate-tree-toolbar input {
    height: 42px;
    border: 1px solid var(--line);
    border-radius: 10px;
    padding: 0 12px;
    font-weight: 800;
}
.certificate-ledger-tree {
    flex: 1 1;
    overflow: auto;
    padding: 14px 18px 28px;
    background: linear-gradient(#fffdf8, #fff);
}
.certificate-tree-branch {
    position: relative;
}
.certificate-tree-row {
    min-width: 1040px;
    min-height: 38px;
    display: grid;
    grid-template-columns: 30px 64px 130px 130px minmax(180px, 1fr) 110px 95px 110px;
    align-items: center;
    grid-gap: 10px;
    gap: 10px;
    border-bottom: 1px solid #f1eadc;
    color: #263342;
    font-size: 13px;
}
.certificate-tree-row:hover {
    background: #fff7ed;
}
.certificate-tree-row.match {
    background: #ecfdf5;
}
.certificate-tree-expander {
    width: 24px;
    height: 24px;
    border: 1px solid #e9d7b7;
    border-radius: 6px;
    background: white;
    color: #a16207;
    font-size: 18px;
    line-height: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}
.certificate-tree-expander:disabled {
    color: #cbd5e1;
    cursor: default;
}
.certificate-tree-seq {
    color: #8a6b2f;
    font-weight: 900;
}
.certificate-tree-cert-link,
.certificate-tree-row strong {
    color: var(--green);
    font-weight: 900;
}
.certificate-tree-cert-link {
    border: 0;
    background: transparent;
    text-align: left;
    cursor: pointer;
    padding: 0;
    font: inherit;
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 3px;
}
.certificate-tree-cert-link:hover {
    color: #b7791f;
}
.certificate-tree-row em {
    color: var(--muted);
    font-style: normal;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.certificate-tree-row b {
    color: #059669;
}
.certificate-tree-row small {
    color: #64748b;
    font-weight: 900;
}
.certificate-tree-row time {
    color: #94a3b8;
    font-size: 12px;
}
.certificate-detail-panel {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    width: min(440px, 92vw);
    background: white;
    border-left: 1px solid var(--line);
    box-shadow: -20px 0 50px rgba(15, 23, 42, 0.16);
    display: flex;
    flex-direction: column;
    z-index: 3;
}
.certificate-detail-panel header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
    padding: 18px 20px;
    border-bottom: 1px solid var(--line);
    background: #fffaf0;
}
.certificate-detail-panel header span {
    color: var(--muted);
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.6px;
}
.certificate-detail-panel h3 {
    margin: 4px 0 0;
    color: var(--green);
    font-size: 26px;
}
.certificate-detail-panel header button {
    width: 36px;
    height: 36px;
    border: 1px solid var(--line);
    border-radius: 999px;
    background: white;
    color: #7c2d12;
    font-size: 26px;
    line-height: 1;
    cursor: pointer;
}
.certificate-detail-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 10px;
    gap: 10px;
    padding: 16px 18px;
    overflow-y: auto;
}
.certificate-detail-grid div {
    border: 1px solid var(--line);
    border-radius: 10px;
    padding: 10px;
    background: #fffdf8;
}
.certificate-detail-grid span {
    display: block;
    color: var(--muted);
    font-size: 11px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.4px;
}
.certificate-detail-grid strong {
    display: block;
    margin-top: 5px;
    color: #172033;
    font-size: 13px;
    overflow-wrap: anywhere;
}
.certificate-detail-relations {
    padding: 0 18px 18px;
}
.certificate-detail-relations h4 {
    margin: 0 0 10px;
    color: var(--green);
}
.certificate-detail-relations button {
    display: inline-flex;
    margin: 0 8px 8px 0;
    border: 1px solid #e8d4a8;
    border-radius: 999px;
    background: #fffaf0;
    color: #8a5b05;
    padding: 7px 10px;
    font-weight: 900;
    cursor: pointer;
}
.certificate-detail-relations p {
    color: var(--muted);
    margin: 0 0 8px;
}
.bill-list-wrap {
    overflow-x: auto;
    border: 1px solid var(--line);
    border-radius: 12px;
    background: white;
}
.bill-list-table {
    min-width: 1080px;
}
.bill-list-table th {
    height: 58px;
    background: #f8fafc;
    color: #5f6b7b;
    font-size: 13px;
    letter-spacing: 0.6px;
    text-transform: uppercase;
}
.bill-list-table td {
    height: 78px;
    color: #263342;
    font-size: 14px;
}
.bill-list-table tbody tr:hover {
    background: #fffdf8;
}
.level-chip {
    min-width: 52px;
    padding: 5px 10px;
    border-radius: 999px;
    background: #e9d5ff;
    color: #6d28d9;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    font-weight: 900;
}
.level-chip-0 {
    background: #d1fae5;
    color: #047857;
}
.level-chip-1 {
    background: #ede9fe;
    color: #6d28d9;
}
.level-chip-2 {
    background: #ffedd5;
    color: #ea580c;
}
.level-chip-3 {
    background: #fef3c7;
    color: #b77905;
}
.level-chip-4,
.level-chip-5 {
    background: #cffafe;
    color: #0891b2;
}
.list-code {
    color: #4c1d95;
}
.list-code,
.list-money {
    font-size: 16px;
    font-weight: 900;
}
.list-money {
    color: #0f172a;
}
.list-self {
    color: #059669;
    font-weight: 900;
}
.list-out {
    color: #7c3aed;
    font-weight: 900;
}
.list-date {
    color: #64748b;
    line-height: 1.4;
}
.network-tree-module h2 {
    margin: 0 0 8px;
    color: var(--green);
    font-size: 34px;
}
.network-head {
    margin-bottom: 18px;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
}
.network-search {
    display: grid;
    grid-template-columns: minmax(180px, 1fr) auto 48px;
    grid-gap: 10px;
    gap: 10px;
    align-items: center;
}
.network-search input {
    min-height: 42px;
    border: 1px solid var(--line);
    border-radius: 8px;
    padding: 9px 13px;
    font: inherit;
}
.network-tree-filters {
    grid-template-columns: minmax(260px, 1fr) 76px 76px 88px 88px;
}
.network-visual-canvas {
    background: linear-gradient(#ffffff, #fbfdfc);
}
.network-tree-levels {
    min-width: 1240px;
}
.network-family {
    gap: 16px;
}
.network-card {
    flex-basis: 190px;
    min-height: 228px;
    border-color: #10b981;
    background: #ecfdf5;
}
.node-phone-link {
    color: #0f766e;
    text-decoration: none;
    font-weight: 600;
}
.node-phone-link:active,
.node-phone-link:hover {
    text-decoration: underline;
}
.partner-tree-name-link {
    color: #1d4ed8;
    text-decoration: none;
    font-weight: 600;
}
.partner-tree-name-link:active,
.partner-tree-name-link:hover {
    text-decoration: underline;
}
.partner-tree-breadcrumb {
    margin: -8px 0 16px;
    color: #475569;
    font-size: 14px;
}
.partner-tree-breadcrumb a {
    color: #1d4ed8;
    font-weight: 600;
    text-decoration: none;
}
.partner-tree-breadcrumb a:hover {
    text-decoration: underline;
}
.network-card.role-bp {
    border-color: #2563eb;
    background: #eff6ff;
}
.network-card.role-bp .node-avatar {
    background: linear-gradient(135deg, #1d4ed8, #60a5fa);
}
.network-card.role-se {
    border-color: #f97316;
    background: #fff7ed;
}
.network-card.role-se .node-avatar {
    background: linear-gradient(135deg, #ea580c, #fb923c);
}
.network-card.role-admin,
.network-card.role-owner {
    border-color: #062e20;
    background: #f1f5f9;
}
.network-card.role-admin .node-avatar,
.network-card.role-owner .node-avatar {
    background: linear-gradient(135deg, #062e20, #14532d);
}
.network-card.deactivated {
    border-style: dashed;
    background: #fff7ed;
}
.network-card .node-topline b {
    color: #64748b;
    font-size: 10px;
}
.network-card.active .node-topline b {
    color: #047857;
}
.network-card.deactivated .node-topline b {
    color: #dc2626;
}
.network-card-counts {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-gap: 5px;
    gap: 5px;
    margin-top: 11px;
    padding-top: 10px;
    border-top: 1px solid rgba(15, 23, 42, 0.08);
}
.network-card-counts span {
    min-width: 0;
    padding: 6px 4px;
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.72);
    color: #64748b;
    font-size: 10px;
    font-weight: 800;
    line-height: 1.1;
}
.network-card-counts b {
    display: block;
    color: #0f172a;
    font-size: 14px;
}
.network-list-table {
    min-width: 1120px;
}
.network-tree-wrap {
    margin-top: 18px;
    display: grid;
    grid-gap: 12px;
    gap: 12px;
}
.network-node {
    border: 1px solid #e5e7eb;
    border-radius: 10px;
    background: white;
    overflow: hidden;
}
.network-node summary {
    min-height: 64px;
    padding: 12px 14px;
    display: grid;
    grid-template-columns: 52px minmax(210px, 1fr) 104px repeat(3, 96px) 36px;
    grid-gap: 12px;
    gap: 12px;
    align-items: center;
    cursor: pointer;
    list-style: none;
}
.network-node summary::-webkit-details-marker {
    display: none;
}
.network-node summary:after {
    content: "+";
    width: 28px;
    height: 28px;
    border-radius: 999px;
    background: #f3f4f6;
    color: #475569;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-weight: 900;
    justify-self: end;
}
.network-node[open] > summary:after {
    content: "-";
}
.network-node.depth-1 {
    margin-left: 24px;
}
.network-node.depth-2 {
    margin-left: 48px;
}
.network-node.depth-3 {
    margin-left: 72px;
}
.network-node.depth-4 {
    margin-left: 96px;
}
.network-node.matched > summary {
    background: #fffbeb;
}
.network-node-avatar {
    width: 42px;
    height: 42px;
    border-radius: 10px;
    background: var(--green);
    color: white;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    font-weight: 900;
}
.network-node-main strong {
    display: block;
    color: #17212c;
    font-size: 15px;
}
.network-node-main em {
    display: block;
    margin-top: 3px;
    color: var(--muted);
    font-size: 12px;
    font-style: normal;
}
.network-status {
    justify-self: start;
    padding: 5px 10px;
    border-radius: 999px;
    background: #f1f5f9;
    color: #475569;
    font-size: 11px;
    font-weight: 900;
}
.network-status.active {
    background: #ecfdf5;
    color: #047857;
}
.network-status.pending {
    background: #fff7ed;
    color: #c2410c;
}
.network-status.deactivated {
    background: #fef2f2;
    color: #dc2626;
}
.network-stat {
    color: var(--muted);
    font-size: 12px;
    font-weight: 800;
}
.network-stat b {
    display: block;
    color: #111827;
    font-size: 15px;
}
.network-children {
    padding: 0 12px 12px;
    display: grid;
    grid-gap: 10px;
    gap: 10px;
}
.network-leaf {
    margin: 0 14px 12px 66px;
    padding: 10px 12px;
    border-left: 2px solid #e5e7eb;
    color: var(--muted);
    font-size: 12px;
}
.certificates-module {
    padding: 4px 2px;
}
.certificates-head {
    display: grid;
    grid-template-columns: minmax(210px, 1fr) minmax(660px, 1.55fr);
    grid-gap: 22px;
    gap: 22px;
    align-items: center;
    margin-bottom: 20px;
}
.certificates-head h2 {
    margin: 0 0 6px;
    color: var(--green);
    font-size: 34px;
    line-height: 1;
}
.certificates-head p {
    margin: 0;
    color: #64748b;
    font-size: 20px;
}
.cert-summary-grid {
    display: grid;
    grid-template-columns: 1.1fr repeat(3, 1fr);
    grid-gap: 12px;
    gap: 12px;
}
.cert-month-card,
.cert-summary-card {
    min-height: 92px;
    border: 1px solid var(--line);
    border-radius: 16px;
    padding: 18px 22px;
    background: white;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.cert-month-card span,
.cert-summary-card span {
    color: #8b95a5;
    font-size: 13px;
    font-weight: 900;
    letter-spacing: 0.7px;
    text-transform: uppercase;
}
.cert-month-card select,
.cert-month-card strong,
.cert-summary-card strong {
    margin-top: 10px;
    color: #020f0a;
    font-size: 23px;
}
.cert-month-card select {
    width: 100%;
    border: 0;
    background: transparent;
    font-weight: 900;
    outline: none;
}
.cert-summary-card.green {
    background: #ecfdf5;
    border-color: #bbf7d0;
}
.cert-summary-card.green span,
.cert-summary-card.green strong {
    color: #058b45;
}
.cert-summary-card.blue {
    background: #eff6ff;
    border-color: #bfdbfe;
}
.cert-summary-card.blue span,
.cert-summary-card.blue strong {
    color: #1d4ed8;
}
.cert-summary-card.orange {
    background: #fff7ed;
    border-color: #fed7aa;
}
.cert-summary-card.orange span,
.cert-summary-card.orange strong {
    color: #c2410c;
}
.cert-summary-grid.compact {
    grid-template-columns: repeat(3, minmax(150px, 1fr));
}
.cert-summary-grid.compact .cert-summary-card {
    min-height: 78px;
    padding: 14px 16px;
}
.cert-tabs {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin: 0 0 18px;
    border-bottom: 1px solid var(--line);
}
.cert-tabs a,
.cert-tabs button {
    min-height: 44px;
    border: 1px solid transparent;
    border-bottom: 0;
    border-radius: 12px 12px 0 0;
    padding: 0 18px;
    background: #f8fafc;
    color: #475569;
    font-weight: 900;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    text-decoration: none;
}
.cert-tabs a.active,
.cert-tabs button.active {
    background: white;
    border-color: var(--line);
    color: var(--green);
    box-shadow: 0 -4px 16px rgba(15, 23, 42, 0.05);
}
.cert-tabs a span,
.cert-tabs button span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 24px;
    height: 24px;
    margin-left: 8px;
    border-radius: 999px;
    background: #ecfdf5;
    color: #047857;
    font-size: 12px;
}
.cert-filters {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 20px;
    flex-wrap: wrap;
}
.cert-filters button {
    min-height: 42px;
    border: 0;
    border-radius: 999px;
    padding: 0 18px;
    background: #f3f4f6;
    color: #314052;
    font-weight: 900;
}
.cert-filters button.active {
    background: var(--gold);
    color: white;
}
.cert-filters input {
    width: min(100%, 280px);
    height: 42px;
    border-radius: 11px;
}
.cert-filters .refresh {
    width: 44px;
    min-height: 42px;
    border-radius: 11px;
    padding: 0;
    font-size: 20px;
}
.cert-filters .small-action.dark {
    border-radius: 10px;
    background: var(--green);
    color: white;
}
.cert-pager {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    margin: 14px 0;
    color: #475569;
    font-size: 14px;
    font-weight: 900;
}
.cert-page-index {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    justify-content: flex-end;
}
.cert-page-index button {
    min-width: 38px;
    min-height: 34px;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    background: white;
    color: #334155;
    font-weight: 900;
}
.cert-page-index button.active {
    border-color: var(--gold);
    background: var(--gold);
    color: white;
}
.cert-page-index button:disabled {
    cursor: not-allowed;
    color: #cbd5e1;
    background: #f8fafc;
}
.cert-table-wrap {
    overflow-x: auto;
    border-radius: 12px;
    background: white;
}
.cert-table {
    min-width: 1080px;
    table-layout: fixed;
}
.cert-table th {
    height: 56px;
    background: #f8fafc;
    color: #5f6b7b;
    font-size: 13px;
    text-transform: uppercase;
}
.cert-table td:first-child,
.cert-table th:first-child {
    width: 72px;
}
.cert-table td:nth-child(2),
.cert-table th:nth-child(2) {
    width: 170px;
}
.cert-table td:nth-child(3),
.cert-table th:nth-child(3) {
    width: 300px;
}
.cert-table td:nth-child(4),
.cert-table th:nth-child(4) {
    width: 160px;
}
.cert-table td:nth-child(5),
.cert-table th:nth-child(5) {
    width: 170px;
}
.cert-table td:nth-child(6),
.cert-table th:nth-child(6) {
    width: 230px;
}
.cert-table td:nth-child(7),
.cert-table th:nth-child(7) {
    width: 80px;
    text-align: center;
}
.cert-table th span {
    margin-left: 4px;
    color: #94a3b8;
    font-size: 11px;
    font-weight: 700;
    text-transform: none;
}
.cert-table td {
    height: 94px;
    color: #253143;
    font-size: 14px;
}
.bp-cert-profit-panel {
    padding-top: 2px;
}
.partner-bp-cert-profit .metric-grid {
    grid-template-columns: 1fr;
    gap: 8px;
    margin-bottom: 12px;
}
.partner-bp-cert-profit .metric {
    padding: 10px 12px;
    text-align: left;
}
.partner-bp-cert-profit .metric strong {
    font-size: 20px;
    text-align: left;
}
.partner-bp-cert-profit .partner-table-title-row {
    padding: 12px;
}
.partner-bp-cert-profit td,
.partner-bp-cert-profit th {
    text-align: left;
}
@media (max-width: 640px) {
    .partner-bp-cert-profit .partner-mini-table-compact td,
    .partner-bp-cert-profit .partner-mini-table-compact th {
        padding: 6px 5px;
        font-size: 12px;
    }
}
.partner-vcert-link {
    color: var(--green);
    font-weight: 900;
    text-decoration: underline;
    text-underline-offset: 2px;
}
.partner-owner-stack {
    display: block;
}
.partner-owner-stack strong {
    display: block;
    font-weight: 900;
}
.partner-owner-stack span {
    display: block;
    margin-top: 2px;
    color: #64748b;
    font-size: 12px;
    font-weight: 800;
    line-height: 1.25;
}
.bp-cert-profit-head {
    display: grid;
    grid-template-columns: minmax(260px, 1fr) minmax(460px, 1.2fr);
    grid-gap: 18px;
    gap: 18px;
    align-items: center;
    margin-bottom: 18px;
}
.bp-cert-profit-head h3 {
    margin: 0 0 6px;
    color: var(--green);
    font-size: 28px;
}
.bp-cert-profit-head p {
    margin: 0;
    color: var(--muted);
}
.bp-cert-profit-table {
    min-width: 1420px;
}
.bp-cert-profit-table td:first-child,
.bp-cert-profit-table th:first-child {
    width: 120px;
}
.bp-cert-profit-table td:nth-child(2),
.bp-cert-profit-table th:nth-child(2) {
    width: 190px;
}
.bp-cert-profit-table td:nth-child(3),
.bp-cert-profit-table th:nth-child(3) {
    width: 210px;
}
.bp-cert-profit-table td:nth-child(4),
.bp-cert-profit-table th:nth-child(4) {
    width: 190px;
}
.bp-cert-profit-table td:nth-child(5),
.bp-cert-profit-table td:nth-child(6),
.bp-cert-profit-table td:nth-child(7),
.bp-cert-profit-table th:nth-child(5),
.bp-cert-profit-table th:nth-child(6),
.bp-cert-profit-table th:nth-child(7) {
    width: 135px;
}
.bp-cert-profit-table td:nth-child(8),
.bp-cert-profit-table th:nth-child(8) {
    width: 110px;
}
.bp-cert-profit-table td:nth-child(9),
.bp-cert-profit-table th:nth-child(9) {
    width: 115px;
}
.bp-cert-profit-table td:nth-child(10),
.bp-cert-profit-table th:nth-child(10) {
    width: 190px;
}
.bp-cert-profit-table td {
    height: 78px;
    vertical-align: middle;
}
.bp-cert-profit-table td span {
    display: block;
    margin-top: 4px;
    color: #64748b;
    font-size: 12px;
    font-weight: 800;
}
.cert-no.virtual {
    color: #7c3aed;
    font-size: 18px;
}
.bp-cert-source-bills {
    max-width: 180px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.cert-no {
    display: block;
    margin-top: 8px;
    color: #c69235;
    font-size: 13px;
}
.cert-holder strong {
    display: block;
    color: #0f172a;
    font-size: 19px;
}
.cert-holder span {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 8px 0 14px;
    color: #8b95a5;
    font-size: 13px;
}
.cert-holder .cert-sponsor-ba {
    display: block;
    margin: -8px 0 12px;
    color: #94a3b8;
    font-size: 11px;
    font-weight: 700;
}
.cert-holder b,
.cert-modal-head h3 span {
    padding: 7px 10px;
    border-radius: 999px;
    background: #dcfce7;
    color: #047857;
    font-size: 12px;
}
.capacity-row {
    display: flex;
    align-items: center;
    gap: 10px;
}
.capacity-track {
    width: 112px;
    height: 8px;
    border-radius: 999px;
    background: #eef2f7;
    overflow: hidden;
}
.capacity-track span {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: #f87171;
}
.capacity-track.unlimited span {
    width: 100%;
    background: linear-gradient(90deg, #10b981, #c5a059);
}
.capacity-row em {
    color: #8b95a5;
    font-style: normal;
    font-size: 12px;
}
.cert-balance,
.cert-earned {
    display: block;
    color: #061e13;
    font-size: 21px;
}
.cert-status {
    display: block;
    margin-top: 8px;
    font-size: 12px;
    font-weight: 900;
}
.cert-status.full {
    color: #ef4444;
}
.cert-status.open {
    color: #059669;
}
.cert-withdrawal {
    color: #0f172a;
    font-weight: 900;
}
.cert-month {
    display: block;
    margin-top: 10px;
    color: #8b95a5;
}
.cert-eye {
    width: 36px;
    height: 36px;
    border: 0;
    border-radius: 999px;
    background: transparent;
    color: #98a2b3;
    font-size: 20px;
}
.cert-eye:hover {
    background: #f3f4f6;
    color: var(--green);
}
.cert-modal-backdrop {
    position: fixed;
    inset: 0;
    z-index: 60;
    background: rgba(0, 0, 0, 0.56);
    display: grid;
    place-items: center;
    padding: 24px;
}
.cert-modal {
    position: relative;
    width: min(100%, 760px);
    max-height: min(92vh, 720px);
    overflow: auto;
    border-radius: 28px;
    background: white;
    box-shadow: 0 30px 80px rgba(0, 0, 0, 0.35);
}
.cert-modal-close {
    position: absolute;
    top: 22px;
    right: 26px;
    width: 36px;
    height: 36px;
    border: 0;
    background: transparent;
    color: #6b7280;
    font-size: 34px;
    line-height: 1;
}
.cert-modal-head {
    display: flex;
    gap: 18px;
    padding: 38px 32px 34px;
}
.cert-ribbon {
    color: var(--gold);
    font-size: 28px;
}
.cert-modal-head h3 {
    margin: 0 0 8px;
    color: #061e13;
    font-size: 31px;
}
.cert-modal-head strong {
    display: block;
    color: #374151;
    font-size: 19px;
}
.cert-modal-head p {
    margin: 8px 0 0;
    color: #8b95a5;
    font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
}
.cert-modal-stats {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    border-top: 1px solid #f1f2f4;
    border-bottom: 1px solid #f1f2f4;
    background: #faf8f4;
}
.cert-modal-stats div {
    padding: 20px 28px;
    text-align: center;
}
.cert-modal-stats div + div {
    border-left: 1px solid #eee9df;
}
.cert-modal-stats span {
    display: block;
    color: #64748b;
    font-size: 13px;
    font-weight: 800;
}
.cert-modal-stats strong {
    display: block;
    margin-top: 6px;
    color: #061e13;
    font-size: 21px;
}
.cert-ledger {
    padding: 24px 26px 28px;
}
.cert-ledger section + section {
    margin-top: 24px;
}
.cert-ledger header {
    display: flex;
    justify-content: space-between;
    margin-bottom: 10px;
    color: #374151;
    font-size: 17px;
}
.cert-ledger-row {
    min-height: 54px;
    display: grid;
    grid-template-columns: 110px 1fr auto;
    grid-gap: 10px;
    gap: 10px;
    align-items: center;
    margin-bottom: 8px;
    padding: 12px 16px;
    border-radius: 14px;
    background: #f8fafc;
}
.cert-ledger-row span {
    color: #374151;
    font-weight: 900;
}
.cert-ledger-row em {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: #8b95a5;
    font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
    font-size: 12px;
    font-style: normal;
}
.cert-ledger-row strong {
    color: #061e13;
    font-size: 17px;
}
.settings-module {
    padding: 26px 28px 34px;
}
.settings-tabs {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
}
.settings-tab-list {
    flex: 1 1;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}
.settings-tab-list button {
    min-height: 40px;
    border: 0;
    border-radius: 8px;
    padding: 9px 17px;
    background: #f0f1f4;
    color: #334155;
    font-size: 14px;
    font-weight: 900;
}
.settings-tab-list button.active {
    background: var(--green);
    color: white;
}
.settings-save {
    min-height: 42px;
    border: 0;
    border-radius: 8px;
    padding: 10px 28px;
    background: #e4c996;
    color: white;
    font-weight: 900;
    display: inline-flex;
    align-items: center;
    gap: 9px;
    white-space: nowrap;
}
.settings-save:disabled {
    opacity: 0.7;
    cursor: wait;
}
.settings-divider {
    height: 1px;
    margin: 18px 0 28px;
    background: #dfe3e8;
}
.settings-panel {
    max-width: 1120px;
}
.settings-info {
    width: min(100%, 865px);
    min-height: 104px;
    border: 1px solid #a8ccff;
    border-radius: 7px;
    padding: 18px 20px;
    background: #eff6ff;
    color: #0f4de3;
    display: grid;
    grid-template-columns: 24px 1fr;
    grid-gap: 14px;
    gap: 14px;
    align-items: start;
}
.settings-info span {
    width: 20px;
    height: 20px;
    border: 2px solid #2563eb;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 13px;
    font-weight: 900;
    line-height: 1;
}
.settings-info p {
    margin: 0;
    line-height: 1.45;
}
.settings-info strong {
    display: block;
}
.settings-message {
    width: min(100%, 865px);
    margin: 14px 0 0;
    padding: 12px 14px;
    border-radius: 8px;
    font-weight: 800;
}
.settings-message.saved {
    background: #ecfdf5;
    color: #047857;
}
.settings-message.error {
    background: #fef2f2;
    color: #b91c1c;
}
.settings-config-head {
    margin-top: 30px;
}
.settings-capacity h3,
.settings-config-head h3,
.settings-empty h3 {
    margin: 0 0 26px;
    color: var(--green);
    font-size: 22px;
}
.settings-config-head p {
    max-width: 830px;
    margin: 0;
    color: #5f6b7b;
    line-height: 1.45;
}
.settings-quick-fields {
    display: flex;
    flex-wrap: wrap;
    gap: 22px 32px;
    margin: 28px 0;
}
.settings-capacity-grid label,
.settings-quick-fields label {
    display: flex;
    align-items: center;
    gap: 16px;
    color: #0f172a;
    font-weight: 500;
}
.settings-capacity-grid span,
.settings-quick-fields span {
    white-space: nowrap;
}
.settings-quick-fields input {
    width: 108px;
    height: 48px;
    border-radius: 8px;
    font-size: 16px;
}
.settings-table-wrap {
    width: min(100%, 865px);
    overflow-x: auto;
}
.settings-table {
    min-width: 865px;
    table-layout: fixed;
}
.settings-table th {
    height: 40px;
    background: #f8fafc;
    color: #5f6b7b;
    font-size: 12px;
    text-transform: uppercase;
}
.settings-table td {
    height: 86px;
    color: #263342;
    font-size: 14px;
}
.settings-table td:first-child,
.settings-table th:first-child {
    width: 90px;
}
.settings-table td:nth-child(2),
.settings-table th:nth-child(2) {
    width: 210px;
}
.settings-table td:nth-child(3),
.settings-table th:nth-child(3) {
    width: 190px;
}
.settings-table td:nth-child(4),
.settings-table td:nth-child(5),
.settings-table th:nth-child(4),
.settings-table th:nth-child(5) {
    width: 120px;
}
.settings-table td:nth-child(6),
.settings-table th:nth-child(6) {
    width: 135px;
}
.settings-table input {
    height: 50px;
    border-radius: 6px;
    font-size: 18px;
}
.settings-level-no {
    color: #0f172a;
    font-size: 20px !important;
    font-weight: 900;
}
.settings-active {
    min-width: 74px;
    height: 28px;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    font-weight: 900;
}
.settings-active.on {
    background: #dcfce7;
    color: #047857;
}
.settings-active.off {
    background: #f3f4f6;
    color: #64748b;
}
.settings-row-action {
    height: 34px;
    border: 0;
    border-radius: 7px;
    padding: 0 14px;
    background: #eef2f7;
    color: #334155;
    font-weight: 900;
}
.settings-empty {
    min-height: 260px;
    padding: 34px 0;
    color: #64748b;
}
.settings-empty h3 {
    margin-bottom: 10px;
}
.mlm-rules-panel {
    max-width: 820px;
}
.mlm-rules-panel .settings-config-head {
    margin-top: 0;
}
.mlm-rules-panel .settings-config-head h3 {
    margin-bottom: 28px;
}
.mlm-rules-panel .settings-config-head p {
    margin-bottom: 28px;
    font-size: 16px;
}
.mlm-card {
    width: min(100%, 756px);
    border: 1px solid #eceff3;
    border-radius: 12px;
    padding: 24px 22px;
    background: white;
}
.mlm-card + .mlm-card,
.withdrawal-preview {
    margin-top: 28px;
}
.mlm-card h4,
.withdrawal-preview h4 {
    margin: 0 0 22px;
    color: var(--green);
    font-family: Georgia, serif;
    font-size: 18px;
}
.mlm-field-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-gap: 22px 18px;
    gap: 22px 18px;
}
.mlm-field-grid label,
.mlm-wide-field {
    display: flex;
    flex-direction: column;
    gap: 8px;
    color: #0f172a;
    font-weight: 500;
}
.mlm-field-grid input,
.mlm-wide-field input {
    height: 47px;
    border-radius: 8px;
    font-size: 16px;
}
.mlm-field-grid em,
.mlm-wide-field em {
    color: #98a2b3;
    font-size: 13px;
    font-style: normal;
    line-height: 1.4;
}
.withdrawal-preview {
    width: min(100%, 756px);
    border: 1px solid #ead9bd;
    border-radius: 12px;
    padding: 24px 22px;
    background: #fffdf8;
}
.preview-row {
    display: grid;
    grid-template-columns: 1fr auto;
    grid-gap: 20px;
    gap: 20px;
    align-items: center;
    min-height: 27px;
    color: #0f172a;
    font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
    font-size: 14px;
}
.preview-row strong {
    color: #020f0a;
}
.preview-rule {
    height: 1px;
    margin: 8px 0;
    background: #ecd9b9;
}
.ba-activation-panel {
    max-width: 820px;
}
.ba-activation-panel .settings-config-head {
    margin-top: 0;
}
.ba-activation-panel .settings-config-head h3 {
    margin-bottom: 28px;
}
.ba-activation-panel .settings-config-head p {
    margin-bottom: 28px;
    font-size: 16px;
}
.activation-alert {
    width: min(100%, 756px);
    min-height: 116px;
    border-radius: 12px;
    padding: 24px;
    display: grid;
    grid-template-columns: 1fr auto;
    grid-gap: 18px;
    gap: 18px;
    align-items: start;
}
.activation-alert.disabled {
    border: 2px solid #fecaca;
    background: #fecaca;
}
.activation-alert.enabled {
    border: 2px solid #bbf7d0;
    background: #f0fdf4;
}
.activation-alert h4 {
    margin: 0 0 8px;
    font-family: Inter, Arial, sans-serif;
    font-size: 17px;
}
.activation-alert.disabled h4 {
    color: #b91c1c;
}
.activation-alert.enabled h4 {
    color: #047857;
}
.activation-alert p {
    margin: 0;
    color: #5f6b7b;
    font-size: 13px;
    line-height: 1.35;
}
.activation-switch {
    position: relative;
    width: 55px;
    height: 32px;
    display: inline-block;
}
.activation-switch input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}
.activation-switch span {
    position: absolute;
    inset: 0;
    border-radius: 999px;
    background: #fb7185;
    border: 2px solid #f87171;
    transition: 0.15s ease;
}
.activation-switch span:before {
    content: "";
    position: absolute;
    left: 4px;
    top: 4px;
    width: 20px;
    height: 20px;
    border-radius: 999px;
    background: white;
    box-shadow: 0 1px 4px rgba(15, 23, 42, 0.22);
    transition: 0.15s ease;
}
.activation-switch input:checked + span {
    background: #22c55e;
    border-color: #16a34a;
}
.activation-switch input:checked + span:before {
    transform: translateX(23px);
}
.activation-card {
    margin-top: 28px;
}
.activation-card h4 {
    margin-bottom: 22px;
}
.activation-note {
    max-width: 680px;
    margin: 0 0 24px;
    color: #5f6b7b;
    font-size: 13px;
    line-height: 1.45;
}
.activation-interpretation {
    width: min(100%, 756px);
    margin-top: 28px;
    border: 1px solid #ead9bd;
    border-radius: 12px;
    padding: 24px 22px;
    background: #fffdf8;
}
.activation-interpretation h4 {
    margin: 0 0 14px;
    color: #0f172a;
    font-family: Inter, Arial, sans-serif;
    font-size: 15px;
}
.activation-interpretation p {
    margin: 0;
    font-weight: 900;
    line-height: 1.45;
}
.activation-interpretation p.disabled {
    color: #ef1111;
}
.activation-interpretation p.enabled {
    color: #047857;
}
.payout-rules-panel {
    max-width: 820px;
}
.payout-rules-panel .settings-config-head {
    margin-top: 0;
}
.payout-rules-panel .settings-config-head h3 {
    margin-bottom: 28px;
}
.payout-field-grid {
    width: min(100%, 756px);
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    grid-gap: 26px;
    gap: 26px;
}
.payout-field-grid label {
    display: flex;
    flex-direction: column;
    gap: 8px;
    color: #0f172a;
    font-weight: 500;
}
.payout-field-grid input {
    height: 47px;
    border-radius: 8px;
    font-size: 16px;
}
.page-locks-panel {
    max-width: 930px;
}
.page-locks-panel .settings-config-head {
    margin-top: 0;
}
.page-locks-panel .settings-config-head h3 {
    margin-bottom: 28px;
}
.page-locks-panel .settings-config-head p {
    max-width: 820px;
    margin-bottom: 28px;
    font-size: 16px;
}
.lock-groups {
    display: grid;
    grid-gap: 28px;
    gap: 28px;
}
.lock-group {
    width: min(100%, 865px);
    border: 1px solid #eceff3;
    border-radius: 12px;
    padding: 24px 22px 22px;
    background: white;
}
.lock-group h4 {
    margin: 0 0 20px;
    color: var(--green);
    font-family: Georgia, serif;
    font-size: 18px;
    display: flex;
    align-items: center;
    gap: 10px;
}
.lock-group h4 span {
    color: var(--green);
    font-family: Inter, Arial, sans-serif;
    font-size: 18px;
}
.lock-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-gap: 14px;
    gap: 14px;
}
.lock-card {
    min-height: 68px;
    border: 1px solid #dfe3e8;
    border-radius: 11px;
    padding: 14px;
    background: #f8fafc;
    display: grid;
    grid-template-columns: 1fr auto;
    grid-gap: 16px;
    gap: 16px;
    align-items: center;
}
.lock-card strong {
    display: block;
    color: #0f172a;
    font-size: 15px;
}
.lock-card span {
    display: block;
    margin-top: 5px;
    color: #8b95a5;
    font-size: 11px;
}
.lock-switch {
    position: relative;
    width: 50px;
    height: 28px;
    display: inline-block;
}
.lock-switch input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}
.lock-switch > span {
    inset: 0;
}
.lock-switch > span,
.lock-switch > span:before {
    position: absolute;
    border-radius: 999px;
    transition: 0.15s ease;
}
.lock-switch > span:before {
    content: "";
    left: 3px;
    top: 3px;
    width: 22px;
    height: 22px;
    background: white;
    box-shadow: 0 1px 4px rgba(15, 23, 42, 0.22);
}
.lock-switch.locked > span {
    background: #f04444;
}
.lock-switch.unlocked > span {
    background: #22c55e;
}
.lock-switch.locked > span:before {
    transform: translateX(22px);
}
.lock-help {
    width: min(100%, 865px);
    margin: 28px 0 0 12px;
    border: 1px solid #ead9bd;
    border-radius: 12px;
    padding: 24px 22px;
    background: #fffdf8;
}
.lock-help h4 {
    margin: 0 0 10px;
    color: #0f172a;
    font-family: Georgia, serif;
    font-size: 16px;
}
.lock-help ul {
    margin: 0;
    padding-left: 22px;
    color: #253143;
    line-height: 1.6;
}
.lock-help strong {
    color: #0f172a;
}
.system-settings-panel {
    max-width: 820px;
}
.system-settings-panel .settings-config-head {
    margin-top: 0;
}
.system-settings-panel .settings-config-head h3 {
    margin-bottom: 28px;
}
.system-subhead h3 {
    font-size: 18px;
}
.system-form {
    width: min(100%, 756px);
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-gap: 24px 28px;
    gap: 24px 28px;
}
.system-form label {
    display: flex;
    flex-direction: column;
    gap: 8px;
    color: #0f172a;
    font-weight: 500;
}
.system-form label.system-wide {
    grid-column: 1/-1;
}
.system-form input {
    height: 47px;
    border-radius: 8px;
    font-size: 16px;
}
.system-divider {
    width: min(100%, 756px);
    height: 1px;
    margin: 26px 0 28px;
    background: #dfe3e8;
}
.system-toggle-list {
    width: min(100%, 756px);
    display: grid;
    grid-gap: 18px;
    gap: 18px;
}
.system-toggle-card {
    min-height: 84px;
    border: 1px solid #dfe3e8;
    border-radius: 12px;
    padding: 18px;
    background: #f8fafc;
    display: grid;
    grid-template-columns: 1fr auto;
    grid-gap: 16px;
    gap: 16px;
    align-items: center;
}
.system-toggle-card strong {
    display: block;
    color: #0f172a;
    font-size: 18px;
}
.system-toggle-card span {
    display: block;
    margin-top: 4px;
    color: #5f6b7b;
    font-size: 13px;
}
.system-switch {
    position: relative;
    width: 50px;
    height: 28px;
    display: inline-block;
}
.system-switch input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}
.system-switch > span {
    inset: 0;
}
.system-switch > span,
.system-switch > span:before {
    position: absolute;
    border-radius: 999px;
    transition: 0.15s ease;
}
.system-switch > span:before {
    content: "";
    left: 3px;
    top: 3px;
    width: 22px;
    height: 22px;
    background: white;
    box-shadow: 0 1px 4px rgba(15, 23, 42, 0.22);
}
.system-switch.on > span {
    background: #22c55e;
}
.system-switch.off > span {
    background: #d1d5db;
}
.system-switch.on > span:before {
    transform: translateX(22px);
}
.system-actions {
    width: min(100%, 756px);
    display: grid;
    grid-gap: 28px;
    gap: 28px;
}
.repair-action h3 {
    margin: 0 0 8px;
    color: var(--green);
    font-size: 18px;
}
.repair-action p {
    max-width: 760px;
    margin: 0 0 14px;
    color: #5f6b7b;
    font-size: 13px;
    line-height: 1.35;
}
.repair-warning {
    display: block;
    margin: 0 0 14px;
    color: #ff3131;
    font-size: 13px;
}
.repair-button {
    min-height: 52px;
    border-radius: 12px;
    padding: 0 22px;
    background: white;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-size: 17px;
    font-weight: 900;
}
.repair-button.red {
    border: 1px solid #ff7878;
    color: #c41212;
}
.repair-button.amber {
    border: 1px solid #f5b21d;
    color: #a64a00;
}
.repair-button.blue {
    border: 1px solid #93c5fd;
    color: #1856d8;
    background: #eff6ff;
}
.security-settings-panel {
    max-width: 980px;
}
.security-settings-panel .settings-config-head {
    margin-top: 0;
}
.security-grid {
    width: min(100%, 920px);
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-gap: 22px;
    gap: 22px;
    align-items: start;
}
.security-card {
    border: 1px solid #eceff3;
    border-radius: 12px;
    padding: 22px;
    background: white;
    display: grid;
    grid-gap: 14px;
    gap: 14px;
}
.security-card.disabled {
    opacity: 0.72;
}
.security-card h4,
.security-users h4 {
    margin: 0 0 6px;
    color: var(--green);
    font-family: Georgia, serif;
    font-size: 18px;
}
.security-card label {
    display: flex;
    flex-direction: column;
    gap: 7px;
    color: #0f172a;
    font-weight: 700;
}
.security-card input,
.security-card select {
    height: 43px;
    border-radius: 8px;
    font-size: 15px;
}
.security-note {
    margin: 0;
    color: #b45309;
    font-size: 13px;
    font-weight: 800;
    line-height: 1.4;
}
.security-submit {
    justify-content: center;
    margin-top: 4px;
}
.security-users {
    width: min(100%, 920px);
    margin-top: 28px;
}
.security-table-wrap {
    width: 100%;
}
.security-table {
    min-width: 820px;
}
.security-table td:first-child,
.security-table th:first-child {
    width: 190px;
}
.security-table td:nth-child(2),
.security-table th:nth-child(2) {
    width: 150px;
}
.security-table td:nth-child(3),
.security-table th:nth-child(3) {
    width: 260px;
}
.security-table td:nth-child(4),
.security-table td:nth-child(5),
.security-table th:nth-child(4),
.security-table th:nth-child(5) {
    width: 110px;
}
.app-settings-panel {
    max-width: 980px;
}
.app-settings-head {
    margin-top: 0;
}
.app-backup-grid {
    width: min(100%, 920px);
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-gap: 22px;
    gap: 22px;
    align-items: start;
}
.app-backup-card {
    min-height: 190px;
}
.app-backup-facts {
    display: grid;
    grid-gap: 12px;
    gap: 12px;
    margin: 0;
}
.app-backup-facts div {
    display: grid;
    grid-template-columns: 120px 1fr;
    grid-gap: 14px;
    gap: 14px;
    align-items: start;
}
.app-backup-facts dt {
    color: #64748b;
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
}
.app-backup-facts dd {
    margin: 0;
    color: #0f172a;
    font-weight: 900;
    overflow-wrap: anywhere;
}
.app-backup-files {
    margin-top: 28px;
}
.app-backup-table-wrap {
    width: min(100%, 920px);
}
.app-backup-table {
    min-width: 840px;
}
.app-backup-table td:first-child,
.app-backup-table th:first-child {
    width: 120px;
}
.app-backup-table td:nth-child(2),
.app-backup-table th:nth-child(2) {
    width: 390px;
}
.app-backup-table td:nth-child(3),
.app-backup-table th:nth-child(3) {
    width: 210px;
}
.app-backup-table td:nth-child(4),
.app-backup-table th:nth-child(4) {
    width: 120px;
}
.app-backup-name {
    font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
    font-size: 13px !important;
    overflow-wrap: anywhere;
}
.admin-affiliate-module h2 {
    margin: 0 0 12px;
    color: var(--green);
    font-size: 38px;
}
.admin-affiliate-module > p {
    margin: 0 0 34px;
    color: #5f6b7b;
    font-size: 23px;
    line-height: 1.45;
}
.admin-affiliate-controls {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-gap: 28px;
    gap: 28px;
    margin-bottom: 24px;
}
.admin-affiliate-controls label {
    display: grid;
    grid-gap: 10px;
    gap: 10px;
    color: #374151;
    font-size: 14px;
    font-weight: 900;
}
.admin-affiliate-controls input,
.admin-affiliate-controls select {
    height: 48px;
    border: 1px solid rgba(197, 160, 89, 0.5);
    border-radius: 12px;
    color: var(--green);
    font-weight: 900;
}
.admin-affiliate-controls input {
    margin-bottom: 8px;
    color: #111827;
    font-weight: 500;
}
.admin-affiliate-search-status {
    margin-top: -4px;
    color: #b45309;
    font-size: 12px;
    font-weight: 800;
    line-height: 1.35;
}
.admin-affiliate-search-form {
    grid-template-columns: minmax(280px, 720px) auto;
    align-items: end;
}
.admin-affiliate-search-form .small-action {
    min-height: 48px;
    margin-bottom: 8px;
    padding-inline: 24px;
}
.admin-affiliate-search-results {
    width: min(100%, 920px);
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-gap: 10px;
    gap: 10px;
    margin: -4px 0 24px;
}
.admin-affiliate-search-results button {
    min-width: 0;
    display: grid;
    grid-gap: 4px;
    gap: 4px;
    border: 1px solid #e1e6ec;
    border-radius: 10px;
    padding: 12px 14px;
    background: white;
    color: #17212c;
    text-align: left;
}
.admin-affiliate-search-results button:hover {
    border-color: rgba(197, 160, 89, 0.7);
    background: #fffcf5;
}
.admin-affiliate-search-results strong {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.admin-affiliate-search-results span {
    color: #667085;
    font-size: 12px;
    font-weight: 800;
}
.admin-recruiter-summary {
    min-height: 72px;
    border: 1px solid rgba(197, 160, 89, 0.22);
    border-radius: 12px;
    padding: 16px;
    background: #fffdf8;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 16px;
    margin-bottom: 24px;
}
.admin-recruiter-summary > div {
    width: 42px;
    height: 42px;
    border-radius: 999px;
    background: var(--green);
    color: white;
    display: grid;
    place-items: center;
    font-size: 14px;
    font-weight: 900;
}
.admin-recruiter-summary span {
    display: grid;
    grid-gap: 3px;
    gap: 3px;
}
.admin-recruiter-summary strong {
    color: #1f2937;
}
.admin-recruiter-summary small {
    color: #667085;
    font-size: 12px;
}
.admin-recruiter-summary b {
    color: var(--gold);
    font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
}
.admin-recruiter-summary em {
    background: #f3e8ff;
    color: #7e22ce;
}
.admin-recruiter-reference i,
.admin-recruiter-summary em,
.admin-recruiter-summary i {
    border-radius: 999px;
    padding: 5px 9px;
    font-size: 12px;
    font-style: normal;
    font-weight: 900;
}
.admin-recruiter-reference i,
.admin-recruiter-summary i {
    background: #fee2e2;
    color: #b91c1c;
}
.admin-recruiter-reference i.active,
.admin-recruiter-summary i.active {
    background: #dcfce7;
    color: #15803d;
}
.admin-affiliate-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(320px, 1fr));
    grid-gap: 24px;
    gap: 24px;
    align-items: start;
    margin-bottom: 34px;
}
.admin-affiliate-card {
    border: 1px solid #edf0f4;
    border-radius: 18px;
    padding: 24px;
    background: white;
    box-shadow: 0 8px 22px rgba(15, 23, 42, 0.04);
}
.staff-module {
    display: grid;
    grid-template-columns: minmax(320px, 420px) 1fr;
    grid-gap: 28px;
    gap: 28px;
    align-items: start;
}
.staff-create-card,
.staff-list-card {
    border: 1px solid #e5e7eb;
    border-radius: 18px;
    background: #fff;
    padding: 26px;
    box-shadow: 0 10px 24px rgba(15, 23, 42, 0.04);
}
.staff-create-card {
    position: -webkit-sticky;
    position: sticky;
    top: 18px;
    background: #f8fafc;
}
.staff-module h2 {
    margin: 0 0 22px;
    color: var(--green);
    font-size: 34px;
}
.staff-create-card form {
    display: grid;
    grid-gap: 16px;
    gap: 16px;
}
.staff-login-hint {
    margin: 0 0 16px;
    padding: 10px 12px;
    background: #eaf6ef;
    border: 1px solid #bfe3cc;
    border-radius: 8px;
    color: #0b6b46;
    font-size: 13px;
    font-weight: 600;
}
.staff-create-card label,
.staff-permissions {
    display: grid;
    grid-gap: 8px;
    gap: 8px;
    color: #334155;
    font-weight: 900;
}
.staff-create-card input,
.staff-create-card select {
    min-height: 50px;
    border: 1px solid #dce3ec;
    border-radius: 12px;
    background: #fff;
    color: #0f172a;
    font-size: 16px;
    padding: 0 14px;
}
.staff-permissions {
    border-top: 1px solid #e5e7eb;
    margin-top: 4px;
    padding-top: 16px;
}
.staff-permissions h3 {
    margin: 0 0 4px;
    color: #0f172a;
    font-size: 18px;
}
.staff-check {
    display: flex !important;
    grid-template-columns: none !important;
    align-items: center;
    gap: 12px !important;
    font-weight: 800 !important;
}
.staff-check input {
    min-height: auto;
    width: 18px;
    height: 18px;
}
.import-submit,
.staff-submit {
    border: 0;
    border-radius: 12px;
    background: var(--green);
    color: #fff;
    font-size: 18px;
    font-weight: 900;
    padding: 16px 20px;
    cursor: pointer;
}
.import-submit:disabled,
.staff-submit:disabled {
    cursor: not-allowed;
    opacity: 0.55;
}
.import-alert,
.staff-message {
    border-radius: 12px;
    padding: 12px 14px;
    font-weight: 900;
}
.import-alert,
.staff-message.error {
    background: #fecaca;
    color: #be123c;
}
.staff-message.success {
    background: #ecfdf5;
    color: #047857;
}
.import-head,
.staff-list-head {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    margin-bottom: 18px;
}
.import-head h2,
.staff-list-head h2 {
    margin: 0;
}
.import-head button,
.staff-list-head button {
    border: 0;
    border-radius: 12px;
    background: #f1f5f9;
    color: #0f172a;
    font-weight: 900;
    padding: 12px 16px;
    cursor: pointer;
}
.staff-empty {
    border: 1px dashed #d8dee8;
    border-radius: 16px;
    color: #64748b;
    padding: 34px;
    text-align: center;
}
.staff-list {
    display: grid;
    grid-gap: 14px;
    gap: 14px;
}
.staff-row {
    display: grid;
    grid-template-columns: 1fr auto;
    grid-gap: 14px;
    gap: 14px;
    border: 1px solid #edf0f4;
    border-radius: 16px;
    padding: 18px;
    background: #fff;
}
.staff-row strong {
    display: block;
    color: #0f172a;
    font-size: 20px;
}
.staff-row span {
    display: block;
    color: #64748b;
    margin-top: 4px;
}
.staff-row-meta {
    display: flex;
    align-items: flex-start;
    gap: 8px;
}
.staff-role,
.staff-status {
    border-radius: 999px;
    padding: 7px 12px;
    font-size: 13px;
    font-weight: 900;
    text-transform: uppercase;
}
.staff-role {
    background: #fff7ed;
    color: #c2410c !important;
}
.staff-status {
    background: #ecfdf5;
    color: #047857 !important;
}
.staff-status.deactivated {
    background: #fecaca;
    color: #be123c !important;
}
.staff-chip-row {
    grid-column: 1/-1;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}
.staff-chip-row span {
    margin: 0;
    border-radius: 999px;
    background: #f1f5f9;
    color: #475569;
    padding: 8px 12px;
    font-size: 13px;
    font-weight: 900;
}
.staff-tabs-hint {
    grid-column: 1/-1;
    margin: 0;
    font-size: 13px;
    font-weight: 700;
    color: #64748b;
}
.staff-tab-grid {
    grid-column: 1/-1;
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    grid-gap: 8px 16px;
    gap: 8px 16px;
}
.staff-row-actions {
    grid-column: 1/-1;
    display: flex;
    gap: 10px;
    justify-content: flex-end;
}
.staff-row-actions button {
    border: 1px solid #dce3ec;
    border-radius: 10px;
    background: #fff;
    color: #0f172a;
    font-weight: 900;
    padding: 10px 16px;
    cursor: pointer;
}
.staff-row-actions .staff-delete {
    border-color: #fecaca;
    color: #be123c;
}
.staff-row-actions .staff-delete:hover {
    background: #fef2f2;
}
.staff-row-editing {
    display: block;
}
.staff-row-editing form {
    display: grid;
    grid-gap: 16px;
    gap: 16px;
}
.staff-row-editing label {
    display: grid;
    grid-gap: 8px;
    gap: 8px;
    color: #334155;
    font-weight: 900;
}
.staff-row-editing input,
.staff-row-editing select {
    min-height: 50px;
    border: 1px solid #dce3ec;
    border-radius: 12px;
    background: #fff;
    color: #0f172a;
    font-size: 16px;
    padding: 0 14px;
}
.import-module h2 {
    margin: 0 0 12px;
    color: var(--green);
    font-size: 38px;
}
.import-module p {
    margin: 0 0 28px;
    color: #5f6b7b;
    font-size: 22px;
    line-height: 1.45;
}
.import-type-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    grid-gap: 24px;
    gap: 24px;
}
.import-type-card {
    display: grid;
    grid-gap: 14px;
    gap: 14px;
    min-height: 190px;
    border: 1px solid #e5e7eb;
    border-radius: 18px;
    background: #fff;
    padding: 26px;
    text-align: left;
    cursor: pointer;
    box-shadow: 0 10px 24px rgba(15, 23, 42, 0.04);
}
.import-type-card strong {
    color: var(--green);
    font-size: 28px;
}
.import-type-card span {
    color: #5f6b7b;
    font-size: 17px;
    line-height: 1.4;
}
.import-type-card em {
    align-self: end;
    color: var(--gold);
    font-style: normal;
    font-weight: 900;
}
.import-drop {
    display: grid;
    place-items: center;
    grid-gap: 12px;
    gap: 12px;
    border: 2px dashed #cbd5e1;
    border-radius: 18px;
    background: #f8fafc;
    color: #475569;
    min-height: 170px;
    margin: 22px 0;
    cursor: pointer;
}
.import-drop input {
    display: none;
}
.import-drop strong {
    color: var(--green);
    font-size: 24px;
}
.import-drop span {
    font-size: 16px;
}
.import-inline-field {
    display: inline-grid;
    gap: 8px;
    margin: 0 18px 18px 0;
    color: #334155;
    font-weight: 900;
}
.import-inline-field input,
.import-inline-field select,
.import-map-grid select {
    min-height: 46px;
    border: 1px solid #dce3ec;
    border-radius: 12px;
    background: #fff;
    color: #0f172a;
    padding: 0 12px;
}
.import-map-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    grid-gap: 16px;
    gap: 16px;
    margin: 10px 0 22px;
}
.import-map-grid label {
    display: grid;
    grid-gap: 8px;
    gap: 8px;
    color: #334155;
    font-weight: 900;
}
.import-preview {
    margin-top: 22px;
}
.import-preview h3 {
    margin: 0 0 12px;
    color: var(--green);
    font-size: 26px;
}
.import-preview-table {
    overflow-x: auto;
    border: 1px solid #e5e7eb;
    border-radius: 14px;
}
.import-preview table {
    width: 100%;
    border-collapse: collapse;
    min-width: 720px;
}
.import-preview td,
.import-preview th {
    border-bottom: 1px solid #eef2f7;
    padding: 13px 14px;
    text-align: left;
}
.import-preview th {
    background: #f8fafc;
    color: #475569;
    font-weight: 900;
}
.import-result {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    align-items: center;
    border-radius: 14px;
    background: #ecfdf5;
    color: #047857;
    margin: 18px 0;
    padding: 16px;
    font-weight: 900;
}
.import-result small {
    flex-basis: 100%;
    color: #64748b;
}
.admin-recruiter-reference h3 {
    margin: 0 0 16px;
    color: #1f2937;
    font-size: 22px;
}
.admin-recruiter-reference table {
    width: 100%;
    min-width: 780px;
    border-collapse: collapse;
    background: white;
}
.admin-recruiter-reference th {
    height: 44px;
    padding: 10px 14px;
    background: #f8fafc;
    color: #667085;
    text-align: left;
    font-size: 12px;
    text-transform: uppercase;
}
.admin-recruiter-reference td {
    height: 58px;
    padding: 12px 14px;
    border-bottom: 1px solid #edf0f4;
    color: #475467;
    font-size: 14px;
}
.admin-recruiter-reference td span {
    color: var(--gold);
    font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
    font-weight: 900;
}
.admin-recruiter-reference button {
    border: 0;
    background: transparent;
    color: var(--gold);
    font-size: 12px;
    font-weight: 900;
}
.invoice-print-page {
    min-height: 100vh;
    background: #e5e7eb;
    padding: 18px;
    color: #111;
    font-family: Arial, Helvetica, sans-serif;
}
.invoice-screen-actions {
    max-width: 210mm;
    margin: 0 auto 14px;
    display: flex;
    justify-content: flex-end;
    gap: 10px;
}
.invoice-screen-actions button {
    min-height: 38px;
    padding: 0 16px;
    border: 0;
    border-radius: 8px;
    background: #64748b;
    color: white;
    font-weight: 900;
}
.invoice-screen-actions button.active {
    background: var(--green);
}
.label-batch-controls {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}
.label-batch-controls input {
    width: 78px;
    min-height: 38px;
    padding: 0 10px;
    border: 1px solid #cbd5e1;
    border-radius: 8px;
    font-weight: 800;
}
.print-range-exclusion-notice {
    max-width: 210mm;
    margin: 0 auto 14px;
    padding: 12px 16px;
    border: 1px solid #fde047;
    border-radius: 8px;
    background: #fffde8;
    color: #a04f00;
    font-size: 13px;
    line-height: 1.5;
}
.print-range-exclusion-notice strong {
    display: block;
    color: #92400e;
}
@media (max-width: 760px) {
    .invoice-screen-actions {
        flex-wrap: wrap;
        justify-content: flex-start;
    }
    .label-batch-controls {
        width: 100%;
    }
}
.invoice-sheet {
    width: 210mm;
    min-height: 297mm;
    margin: 0 auto;
    padding: 9mm 7mm;
    background: white;
    box-shadow: 0 8px 30px rgba(15, 23, 42, 0.16);
    box-sizing: border-box;
}
.invoice-block {
    position: relative;
    height: 137mm;
    display: grid;
    grid-template-columns: 1fr 54mm;
    grid-gap: 5mm;
    gap: 5mm;
    padding-bottom: 5mm;
    box-sizing: border-box;
    break-inside: avoid;
    page-break-inside: avoid;
}
.invoice-block.with-cut-line {
    border-bottom: 1px dashed #999;
    margin-bottom: 5mm;
}
.invoice-address-slip,
.invoice-left-copy {
    border: 2px solid #111;
    background: white;
}
.invoice-left-copy {
    display: grid;
    grid-template-rows: auto auto auto auto 1fr auto;
}
.invoice-top-strip {
    display: grid;
    grid-template-columns: 1fr 0.45fr 0.8fr;
    min-height: 7mm;
    border-bottom: 2px solid #111;
    font-size: 12px;
    font-weight: 700;
}
.invoice-top-strip span {
    display: flex;
    align-items: center;
    justify-content: center;
    border-right: 2px solid #111;
}
.invoice-top-strip span:last-child {
    border-right: 0;
}
.invoice-brand {
    padding: 2mm 3mm 5mm;
    text-align: center;
}
.invoice-brand h1 {
    margin: 0 0 2mm;
    font-size: 18px;
    line-height: 1.05;
    text-transform: uppercase;
}
.invoice-brand p {
    margin: 0;
    font-size: 10px;
    font-weight: 800;
}
.invoice-info-grid {
    min-height: 39mm;
    padding: 0 3mm 3mm;
    display: grid;
    grid-template-columns: 1fr 40mm;
    grid-gap: 8mm;
    gap: 8mm;
    align-items: flex-end;
}
.customer-box {
    border: 2px solid #111;
    padding: 4mm 3mm;
    font-size: 13px;
    font-weight: 800;
    line-height: 1.22;
}
.customer-box p {
    margin: 0 0 2.5mm;
}
.customer-box p:last-child {
    margin-bottom: 0;
}
.customer-box.compact {
    border: 0;
    padding: 0;
    text-align: center;
    font-size: 12px;
    font-weight: 800;
    line-height: 1.12;
}
.customer-box.compact p {
    margin-bottom: 1mm;
}
.qr-slip .customer-box.compact {
    font-size: 11.2px;
    line-height: 1.08;
}
.qr-slip .customer-box.compact p {
    margin-bottom: 0.7mm;
}
.invoice-bill-boxes {
    display: grid;
    grid-gap: 7mm;
    gap: 7mm;
    font-size: 12px;
    text-align: center;
}
.invoice-bill-boxes div {
    border: 2px solid #111;
    min-height: 10mm;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 800;
}
.invoice-bill-boxes p {
    margin: 3mm 0 0;
    font-size: 11px;
}
.invoice-items {
    width: 100%;
    min-width: 0;
    border-collapse: collapse;
    table-layout: fixed;
    font-size: 8.2px;
}
.invoice-items td,
.invoice-items th {
    height: auto;
    padding: 2mm 1mm;
    border: 1.5px solid #111;
    color: #111;
    font-size: 8.2px;
    text-align: center;
    vertical-align: middle;
    letter-spacing: 0;
}
.invoice-items td:nth-child(2),
.invoice-items th:nth-child(2) {
    width: 30%;
    text-align: left;
    font-weight: 800;
}
.invoice-items td:first-child,
.invoice-items th:first-child {
    width: 7%;
}
.invoice-items td:nth-child(3),
.invoice-items td:nth-child(4),
.invoice-items th:nth-child(3),
.invoice-items th:nth-child(4) {
    width: 12%;
}
.invoice-items td:nth-child(5),
.invoice-items th:nth-child(5) {
    width: 10%;
}
.invoice-items td:nth-child(6),
.invoice-items th:nth-child(6) {
    width: 8%;
}
.invoice-items td:nth-child(7),
.invoice-items th:nth-child(7) {
    width: 6%;
}
.invoice-total-area {
    display: grid;
    grid-template-columns: 1fr 42%;
    border-left: 1.5px solid #111;
    border-right: 1.5px solid #111;
    border-bottom: 1.5px solid #111;
}
.invoice-note {
    display: flex;
    align-items: flex-end;
    padding: 0 2mm 1mm;
    font-size: 8.5px;
}
.invoice-total-grid {
    padding: 1mm 1.5mm;
    display: grid;
    grid-template-columns: 1fr 12mm 18mm;
    grid-gap: 0.5mm 1mm;
    gap: 0.5mm 1mm;
    border-left: 1.5px solid #111;
    font-size: 9px;
}
.invoice-total-grid span {
    font-weight: 700;
}
.invoice-total-grid b,
.invoice-total-grid strong {
    text-align: right;
}
.invoice-footer {
    min-height: 9mm;
    padding: 1mm 3mm;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    font-size: 9px;
}
.invoice-footer span,
.invoice-footer strong {
    display: block;
}
.invoice-address-slip {
    min-width: 0;
    padding: 3mm;
    text-align: center;
    display: grid;
    grid-template-rows: 1fr auto auto auto;
    grid-gap: 3mm;
    gap: 3mm;
}
.invoice-address-slip > * {
    min-width: 0;
    max-width: 100%;
}
.invoice-address-slip .customer-box.compact p,
.invoice-address-slip .postman-note,
.invoice-address-slip .slip-from p {
    white-space: normal;
    overflow-wrap: anywhere;
}
.invoice-address-slip.has-delivery-barcode {
    grid-template-rows: auto minmax(0, 1fr) auto auto auto;
    gap: 2mm;
}
.invoice-address-slip.qr-slip {
    grid-template-rows: auto auto auto 1fr auto;
    gap: 1.2mm;
}
.invoice-delivery-barcode {
    width: 100%;
    align-self: center;
    justify-self: center;
    display: grid;
    justify-items: center;
    grid-gap: 0.8mm;
    gap: 0.8mm;
}
.invoice-delivery-barcode img {
    width: 45mm;
    height: 8mm;
    display: block;
    image-rendering: pixelated;
}
.invoice-delivery-barcode strong {
    font-size: 9px;
    line-height: 1;
    letter-spacing: 0.4px;
}
.slip-bill {
    display: grid;
    grid-gap: 1mm;
    gap: 1mm;
    font-size: 11px;
}
.qr-slip .slip-bill {
    gap: 0.7mm;
    font-size: 10.5px;
}
.invoice-qr-block {
    display: grid;
    justify-items: center;
    grid-gap: 0.6mm;
    gap: 0.6mm;
}
.invoice-barcode img {
    width: 45mm;
    height: 9mm;
    display: block;
    image-rendering: pixelated;
}
.invoice-qr-code img {
    width: 30mm;
    height: 30mm;
    display: block;
    image-rendering: pixelated;
}
.invoice-tracking-code {
    display: grid;
    grid-gap: 0.5mm;
    gap: 0.5mm;
    font-size: 8.5px;
    font-weight: 800;
    line-height: 1.05;
}
.invoice-tracking-code strong {
    font-size: 10px;
    letter-spacing: 0.4px;
}
.slip-from h3 {
    margin: 0 0 1mm;
    font-size: 15px;
    text-decoration: underline;
}
.qr-slip .slip-from {
    align-self: end;
}
.slip-from p {
    margin: 0 0 1.5mm;
    font-size: 10.5px;
    font-weight: 800;
    line-height: 1.18;
}
.qr-slip .slip-from h3 {
    font-size: 13px;
    margin-bottom: 0.5mm;
}
.qr-slip .slip-from p {
    font-size: 8.5px;
    margin-bottom: 0.5mm;
    line-height: 1.08;
}
.postman-note {
    align-self: flex-end;
    margin: 0;
    color: red;
    font-size: 9.5px;
    font-weight: 800;
    line-height: 1.3;
}
.qr-slip .postman-note {
    font-size: 7.8px;
    line-height: 1.08;
}
@page {
    size: A4;
    margin: 0;
}
@media print {
    body {
        background: white;
    }
    .invoice-print-page {
        padding: 0;
        background: white;
    }
    .invoice-screen-actions,
    .print-range-exclusion-notice {
        display: none;
    }
    .invoice-sheet {
        width: 210mm;
        height: 297mm;
        margin: 0;
        padding: 9mm 7mm;
        box-shadow: none;
    }
}
@media (max-width: 1180px) {
    .nav-links {
        display: none;
    }
    .nav-links.open {
        position: absolute;
        top: calc(100% + 10px);
        left: 16px;
        right: 16px;
        z-index: 30;
        display: grid;
        grid-gap: 8px;
        gap: 8px;
        padding: 14px;
        border: 1px solid rgba(17, 24, 39, 0.1);
        border-radius: 12px;
        background: #fff;
        box-shadow: 0 16px 36px rgba(17, 24, 39, 0.14);
    }
    .nav-links.open a {
        display: block;
        text-align: center;
    }
    .menu-button {
        display: block;
    }
    .brand {
        flex: 1 1 auto;
    }
}
@media (max-width: 980px) {
    .grid-3,
    .grid-4 {
        grid-template-columns: 1fr 1fr;
    }
    .about-journey,
    .contact-grid,
    .hero-grid,
    .modules-panel,
    .offer,
    .order-layout,
    .product-skeleton-grid {
        grid-template-columns: 1fr;
        flex-direction: column;
        align-items: stretch;
    }
    .admin-affiliate-controls,
    .admin-affiliate-grid,
    .admin-affiliate-search-results,
    .import-map-grid,
    .import-type-grid,
    .partner-affiliate-grid,
    .staff-module {
        grid-template-columns: 1fr;
    }
    .staff-create-card {
        position: static;
    }
    .order-form {
        order: 1;
    }
    .order-product-preview {
        order: 2;
        position: static;
    }
    .hero-grid {
        gap: 40px;
        transform: translateY(24px);
    }
    .hero p,
    .hero-copy {
        text-align: center;
    }
    .hero p {
        margin-inline: auto;
    }
    .hero-product {
        justify-self: center;
    }
    .module-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
    .filters {
        grid-template-columns: 1fr 160px;
    }
    .bill-tree-filters {
        grid-template-columns: 1fr 1fr;
    }
    .dashboard {
        width: min(100% - 24px, 760px);
    }
    .cert-summary-grid,
    .certificates-head {
        grid-template-columns: 1fr;
    }
    .settings-tabs {
        flex-direction: column;
    }
    .settings-save {
        align-self: flex-start;
    }
}
@media (max-width: 640px) {
    .export-actions,
    .filters,
    .grid-3,
    .grid-4,
    .metric-grid,
    .module-grid,
    .thank-you-grid {
        grid-template-columns: 1fr;
    }
    .nav-inner,
    .site-header {
        min-height: 74px;
    }
    .nav-inner {
        width: min(100% - 28px, 1810px);
    }
    .bill-tree-head {
        flex-direction: column;
    }
    .settings-module {
        padding: 18px 16px 26px;
    }
    .settings-tab-list button {
        width: 100%;
        justify-content: center;
    }
    .settings-info {
        grid-template-columns: 1fr;
    }
    .settings-quick-fields label {
        width: 100%;
        align-items: flex-start;
        flex-direction: column;
        gap: 8px;
    }
    .settings-quick-fields input {
        width: 100%;
    }
    .app-backup-facts div,
    .app-backup-grid,
    .lock-grid,
    .mlm-field-grid,
    .payout-field-grid,
    .security-grid,
    .system-form {
        grid-template-columns: 1fr;
    }
    .app-backup-facts div {
        gap: 4px;
    }
    .activation-alert {
        grid-template-columns: 1fr;
    }
    .tree-node-row {
        justify-content: flex-start;
    }
    .brand {
        gap: 10px;
        font-size: 12px;
        letter-spacing: 1.5px;
    }
    .brand img {
        width: 78px;
        height: 46px;
    }
    .brand span {
        min-width: 0;
    }
    .brand b {
        white-space: normal;
    }
    .brand small {
        font-size: 7px;
        letter-spacing: 1.5px;
    }
    .field-row {
        grid-template-columns: 1fr;
        gap: 0;
    }
    .admin-topbar {
        align-items: flex-start;
        flex-direction: column;
    }
    .cert-ledger-row,
    .cert-modal-stats {
        grid-template-columns: 1fr;
    }
}
.form-success {
    margin: 0 0 18px;
    padding: 11px 13px;
    border: 1px solid #bbf7d0;
    border-radius: 10px;
    background: #f0fdf4;
    color: #15803d;
    font-size: 13px;
    font-weight: 800;
    text-align: center;
}
.register-card {
    width: min(100% - 32px, 560px);
    padding-bottom: 42px;
}
.register-card h1 {
    white-space: normal;
    line-height: 1.1;
}
.register-card textarea {
    min-height: 86px;
}
.register-card input[readonly] {
    background: #f3f4f6;
    color: #4b5563;
    cursor: not-allowed;
}
.register-success-card {
    text-align: center;
    padding-top: 36px;
}
.register-success-badge {
    width: 76px;
    height: 76px;
    margin: 0 auto 18px;
    border-radius: 50%;
    background: linear-gradient(135deg, #0aa346, #15803d);
    color: white;
    display: grid;
    place-items: center;
    box-shadow: 0 14px 26px rgba(21, 128, 61, 0.28);
}
.register-success-card h1 {
    white-space: normal;
}
.register-success-message {
    margin: 0 0 24px;
    color: var(--muted);
    text-align: center;
    line-height: 1.6;
    font-size: 15px;
}
.register-code-box {
    margin: 0 0 28px;
    padding: 20px 18px;
    border-radius: 18px;
    background: linear-gradient(135deg, rgba(6, 30, 19, 0.97), rgba(6, 30, 19, 0.9));
    box-shadow: 0 18px 30px rgba(6, 30, 19, 0.18);
}
.form-notice {
    margin: 0 0 18px;
    padding: 11px 13px;
    border: 1px solid #bbf7d0;
    border-radius: 10px;
    background: #f0fdf4;
    color: #15803d;
    font-size: 13px;
}
.form-notice,
.verify-otp-input {
    font-weight: 800;
    text-align: center;
}
.verify-otp-input {
    font-size: 24px;
    letter-spacing: 6px;
}
.verify-resend-form {
    margin-top: 14px;
    text-align: center;
}
.verify-resend-form button {
    background: none;
    border: none;
    padding: 0;
    color: var(--green);
    font-size: 14px;
    font-weight: 700;
    text-decoration: underline;
    cursor: pointer;
}
.partner-unverified-badge {
    display: inline-block;
    margin-left: 8px;
    padding: 2px 8px;
    border-radius: 999px;
    background: #fef3c7;
    color: #92400e;
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.4px;
}
.register-code-label {
    display: block;
    color: var(--gold);
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 2.5px;
    text-transform: uppercase;
    margin-bottom: 8px;
}
.register-code-value {
    display: block;
    color: white;
    font-size: 30px;
    font-weight: 900;
    letter-spacing: 1.5px;
    font-family: Georgia, serif;
}
.track-order-form {
    display: flex;
    gap: 12px;
    align-items: end;
    flex-wrap: wrap;
    margin-bottom: 24px;
}
.track-order-form label {
    display: grid;
    grid-gap: 6px;
    gap: 6px;
    font-weight: 800;
    font-size: 13px;
    color: #142033;
}
.track-order-form input {
    min-width: 220px;
    min-height: 44px;
    padding: 0 12px;
    border: 1px solid #d8dee8;
    border-radius: 8px;
    font-size: 15px;
}
.track-order-form button {
    min-height: 44px;
    padding: 0 22px;
}
.track-order-result {
    margin-top: 8px;
}
.track-order-actions {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    margin: 8px 0 12px;
}
.track-order-intro {
    margin: -2px 0 20px;
    text-align: left;
}
.track-order-tabs {
    margin: -4px 0 24px;
    border-bottom: 1px solid #dfe4eb;
    display: flex;
    gap: 6px;
}
.track-order-tabs button {
    min-height: 46px;
    border: 0;
    border-bottom: 3px solid transparent;
    padding: 0 18px;
    background: transparent;
    color: #64748b;
    font: inherit;
    font-weight: 900;
    cursor: pointer;
}
.track-order-tabs button.active {
    border-bottom-color: var(--gold);
    color: var(--green);
}
.track-order-tabs button span {
    min-width: 22px;
    min-height: 22px;
    margin-left: 6px;
    border-radius: 999px;
    padding: 2px 7px;
    background: #eef2f7;
    color: #475569;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
}
.my-orders-heading {
    margin-bottom: 18px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
}
.my-orders-heading h2 {
    margin: 0 0 4px;
    color: var(--green);
    font-size: 25px;
}
.my-orders-heading p {
    margin: 0;
    color: #64748b;
    font-size: 14px;
}
.my-orders-heading > strong {
    min-width: 46px;
    min-height: 46px;
    border-radius: 50%;
    background: #eef7f1;
    color: var(--green);
    display: grid;
    place-items: center;
    font-size: 19px;
}
.my-orders-list {
    margin: 0;
    padding: 0;
    display: grid;
    grid-gap: 14px;
    gap: 14px;
    list-style: none;
}
.my-order-card {
    border: 1px solid #dfe6e2;
    border-radius: 15px;
    background: #fff;
    overflow: hidden;
    box-shadow: 0 7px 20px rgba(15, 23, 42, 0.04);
}
.my-order-card header {
    padding: 16px 18px;
    border-bottom: 1px solid #edf1ef;
    background: #fbfdfc;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}
.my-order-card header div,
.my-order-details div {
    min-width: 0;
    display: grid;
    grid-gap: 4px;
    gap: 4px;
}
.my-order-card small {
    color: #7b8984;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}
.my-order-card header strong {
    color: var(--green);
    font-size: 21px;
}
.my-order-status {
    border-radius: 999px;
    padding: 6px 10px;
    background: #eef2f7;
    color: #475569;
    font-size: 11px;
    font-weight: 900;
    text-transform: uppercase;
}
.my-order-status.status-delivered,
.my-order-status.status-in_progress,
.my-order-status.status-paid {
    background: #e9f8ef;
    color: #147744;
}
.my-order-status.status-cod_pending {
    background: #fff7df;
    color: #9a6200;
}
.my-order-status.status-cancelled,
.my-order-status.status-returned {
    background: #fff0f0;
    color: #b42318;
}
.my-order-details {
    padding: 17px 18px;
    display: grid;
    grid-template-columns: 0.75fr 1.8fr 0.7fr 1fr;
    grid-gap: 18px;
    gap: 18px;
}
.my-order-details strong {
    overflow-wrap: anywhere;
    color: #25352f;
    font-size: 14px;
    line-height: 1.45;
}
.my-orders-empty {
    min-height: 190px;
    border: 1px dashed #cfd8d3;
    border-radius: 14px;
    padding: 28px;
    display: grid;
    place-content: center;
    grid-gap: 6px;
    gap: 6px;
    text-align: center;
}
.my-orders-empty strong {
    color: var(--green);
    font-size: 20px;
}
.my-orders-empty p {
    margin: 0;
    color: #64748b;
}
@media (max-width: 820px) {
    .my-order-details {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}
.inventory-heading {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 20px;
}
.inventory-heading h2 {
    margin: 0 0 6px;
}
.inventory-heading p {
    margin: 0;
    color: #64748b;
}
.inventory-section-tabs {
    display: flex;
    width: max-content;
    gap: 5px;
    margin: 0 0 18px;
    padding: 5px;
    border: 1px solid #dfe7e2;
    border-radius: 13px;
    background: #f1f5f3;
}
.inventory-section-tabs button {
    min-width: 118px;
    border: 0;
    border-radius: 9px;
    background: transparent;
    color: #52635a;
    padding: 11px 20px;
    font: inherit;
    font-weight: 900;
    cursor: pointer;
}
.inventory-section-tabs button.active {
    background: #0b6b46;
    color: #fff;
    box-shadow: 0 3px 10px rgba(11, 107, 70, 0.18);
}
.inventory-section-heading {
    margin: 0 0 14px;
}
.inventory-section-heading h3 {
    margin: 0 0 4px;
    color: #173e2d;
    font-size: 22px;
}
.inventory-section-heading p {
    margin: 0;
    color: #64748b;
}
.inventory-stock-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(245px, 1fr));
    grid-gap: 14px;
    gap: 14px;
}
.inventory-stock-card {
    border: 1px solid #dfe7e2;
    border-radius: 16px;
    background: #fff;
    padding: 18px;
    box-shadow: 0 8px 22px rgba(15, 23, 42, 0.04);
}
.inventory-stock-card > span {
    display: block;
    color: #475569;
    font-weight: 900;
}
.inventory-stock-card > strong {
    display: inline-block;
    margin: 8px 8px 12px 0;
    color: #0b6b46;
    font-size: 36px;
    line-height: 1;
}
.inventory-stock-card > small {
    color: #64748b;
    font-weight: 800;
}
.inventory-stock-card form {
    display: grid;
    grid-template-columns: 76px 1fr auto;
    grid-gap: 7px;
    gap: 7px;
    margin-top: 9px;
}
.inventory-stock-card button,
.inventory-stock-card input {
    min-width: 0;
    min-height: 42px;
    border: 1px solid #d8e1dc;
    border-radius: 9px;
    padding: 8px 10px;
    font: inherit;
}
.inventory-stock-card button {
    border: 0;
    background: #0b6b46;
    color: #fff;
    font-weight: 900;
    cursor: pointer;
}
.inventory-stock-card button:disabled {
    opacity: 0.55;
}
.inventory-alert {
    border-radius: 10px;
    padding: 12px 14px;
    font-weight: 800;
}
.inventory-alert.error {
    background: #fee2e2;
    color: #b91c1c;
}
.inventory-alert.success {
    background: #dcfce7;
    color: #047857;
}
.inventory-activity {
    margin-top: 24px;
}
.inventory-activity h3 {
    margin: 0 0 12px;
}
.inventory-activity article {
    display: grid;
    grid-template-columns: minmax(130px, 1fr) auto minmax(180px, 1fr);
    grid-gap: 14px;
    gap: 14px;
    align-items: center;
    border-top: 1px solid #e5e7eb;
    padding: 12px 4px;
}
.inventory-activity article span {
    display: block;
    color: #64748b;
    font-size: 13px;
}
.inventory-activity article b {
    font-size: 20px;
}
.inventory-activity article b.positive {
    color: #047857;
}
.inventory-activity article b.negative {
    color: #b45309;
}
.inventory-activity-meta {
    text-align: right;
}
@media (max-width: 640px) {
    .inventory-heading {
        display: block;
    }
    .inventory-heading a {
        display: inline-block;
        margin-top: 12px;
    }
    .inventory-stock-grid {
        grid-template-columns: 1fr;
    }
    .inventory-section-tabs {
        width: 100%;
    }
    .inventory-section-tabs button {
        flex: 1 1;
        min-width: 0;
    }
    .inventory-stock-card form {
        grid-template-columns: 72px 1fr;
    }
    .inventory-stock-card form button {
        grid-column: 1/-1;
    }
    .inventory-activity article {
        grid-template-columns: 1fr auto;
    }
    .inventory-activity-meta {
        grid-column: 1/-1;
        text-align: left;
    }
}
@media (max-width: 520px) {
    .track-order-tabs button {
        flex: 1 1;
        padding-inline: 8px;
    }
    .my-orders-heading {
        align-items: flex-start;
    }
    .my-order-details {
        grid-template-columns: 1fr;
        gap: 14px;
    }
    .my-order-card header {
        align-items: flex-start;
    }
}
.partner-search-form {
    margin: 18px 0 0;
    display: grid;
    grid-template-columns: minmax(260px, 1fr) auto auto;
    grid-gap: 10px;
    gap: 10px;
    align-items: center;
}
.partner-search-form input {
    height: 42px;
    border-radius: 9px;
}
.partner-search-form a,
.partner-search-form button {
    min-height: 42px;
    border: 0;
    border-radius: 9px;
    padding: 0 18px;
    background: var(--green);
    color: white;
    font-weight: 900;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}
.partner-search-form a {
    background: #eef2f7;
    color: #334155;
}
.partner-pagination {
    margin-top: 16px;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 12px;
    color: #64748b;
    font-size: 13px;
    font-weight: 800;
}
.partner-pagination a {
    min-height: 36px;
    border-radius: 8px;
    padding: 9px 14px;
    background: #eef2f7;
    color: #334155;
}
.partner-pagination a.disabled {
    opacity: 0.45;
    pointer-events: none;
}
@media (max-width: 720px) {
    .partner-search-form {
        grid-template-columns: 1fr;
    }
    .partner-pagination {
        justify-content: flex-start;
        flex-wrap: wrap;
    }
}
@media (max-width: 1000px) {
    .new-profit-ledger-row {
        grid-template-columns: minmax(220px, 0.9fr) minmax(0, 2.1fr);
    }
    .new-profit-month-values > div {
        padding-inline: 12px;
    }
}
@media (max-width: 720px) {
    .new-profit-title-row {
        margin-bottom: 12px;
        align-items: flex-start;
    }
    .new-profit-title-row p {
        max-width: 280px;
        line-height: 1.3;
    }
    .new-profit-current-period {
        display: none;
    }
    .new-profit-panel {
        gap: 18px;
    }
    .new-profit-summary-strip {
        grid-template-columns: 1fr;
    }
    .new-profit-summary-item {
        min-height: 72px;
        padding: 9px 4px;
        gap: 8px;
    }
    .new-profit-summary-strip > * + * {
        border-top: 1px solid #d5ded9;
        border-left: 0;
    }
    .new-profit-breakdown-popover {
        position: static;
        width: auto;
        max-height: none;
        margin: 6px 0 10px;
    }
    .new-profit-settlement-popover {
        transform: none;
    }
    .new-profit-section-heading {
        align-items: flex-start;
    }
    .new-profit-ledger-row {
        display: block;
        min-height: 0;
    }
    .new-profit-stream-title {
        min-height: 48px;
        padding: 6px 4px;
        gap: 6px;
    }
    .new-profit-stream-title > i {
        width: 4px;
        height: 30px;
    }
    .new-profit-stream-title h3 {
        font-size: 15px;
    }
    .new-profit-stream-title span {
        margin-top: 2px;
        font-size: 7px;
        line-height: 1.15;
    }
    .new-profit-stream-title span strong {
        margin-left: 3px;
        font-size: 8px;
    }
    .new-profit-stream-title .new-profit-stream-action {
        position: absolute;
        right: 9px;
        margin-top: -14px;
        font-size: 7px;
    }
    .new-profit-month-values {
        border-top: 1px solid #e0e6e3;
    }
    .new-profit-month-values > div {
        min-width: 0;
        min-height: 48px;
        padding: 5px 3px;
        align-items: flex-start;
    }
    .new-profit-month-values > div:first-child {
        border-left: 0;
    }
    .new-profit-month-values .full-label {
        display: none;
    }
    .new-profit-month-values .short-label {
        display: inline;
    }
    .new-profit-month-values dt {
        min-height: 14px;
        font-size: 7px;
        line-height: 1.1;
        letter-spacing: 0.025em;
    }
    .new-profit-month-values dd,
    .new-profit-stream-total dd {
        margin-top: 2px;
        font-size: 10px;
        line-height: 1.15;
    }
    .new-profit-month-values > div.new-profit-stream-total {
        align-items: flex-start;
    }
    .new-profit-certificate-breakdown {
        padding: 6px 4px;
        grid-template-columns: 1fr;
        gap: 4px;
    }
    .new-profit-certificate-breakdown header {
        padding: 5px 6px;
    }
    .new-profit-certificate-breakdown dl div {
        padding: 4px 6px;
    }
    .new-profit-settlement-status {
        margin: 0 0 7px;
    }
    .new-profit-settlement-wrap {
        overflow: visible;
    }
    .new-profit-settlement-table {
        min-width: 0;
        display: block;
    }
    .new-profit-settlement-table thead {
        display: none;
    }
    .new-profit-settlement-table tbody {
        display: block;
    }
    .new-profit-settlement-table tr {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .new-profit-settlement-table td,
    .new-profit-settlement-table td:first-child {
        min-width: 0;
        min-height: 54px;
        height: auto;
        padding: 8px 6px;
        border-bottom: 1px solid #e0e6e3;
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        justify-content: center;
        text-align: left;
        white-space: normal;
    }
    .new-profit-settlement-table td:nth-child(2n) {
        border-right: 1px solid #e0e6e3;
    }
    .new-profit-settlement-table td:first-child {
        grid-column: 1/-1;
        min-height: 48px;
        border-right: 0;
        background: rgba(255, 255, 255, 0.45);
    }
    .new-profit-settlement-table td:before {
        content: attr(data-label);
        display: block;
        margin-bottom: 3px;
        color: #87938c;
        font-size: 8px;
        font-weight: 900;
        letter-spacing: 0.06em;
        text-transform: uppercase;
    }
    .new-profit-settlement-table td:first-child:before {
        display: none;
    }
    .new-profit-settlement-note {
        line-height: 1.3;
    }
}
@media (max-width: 430px) {
    .new-profit-summary-copy > strong {
        font-size: 24px;
    }
    .new-profit-month-values dd,
    .new-profit-stream-total dd {
        font-size: 9px;
        letter-spacing: -0.02em;
    }
}
.bank-detail-card {
    margin-top: 22px;
    min-height: 0;
}
.partner-field input,
.user-info-grid input {
    min-height: 49px;
}
.partner-field input,
.partner-field textarea,
.user-info-grid input {
    width: 100%;
    border: 1px solid #dfe4eb;
    border-radius: 12px;
    padding: 12px 14px;
    background: #f8fafc;
    color: #06111d;
    font: inherit;
    font-size: 15px;
}
.partner-field textarea {
    min-height: 140px;
    resize: vertical;
}
.feedback-thread {
    display: flex;
    flex-direction: column;
    gap: 14px;
    max-height: 420px;
    overflow-y: auto;
    margin: 8px 0 24px;
    padding-right: 4px;
}
.feedback-thread-empty {
    color: #687386;
    font-size: 14px;
}
.feedback-message {
    max-width: 80%;
    border-radius: 14px;
    padding: 12px 16px;
    background: #f1f5f9;
}
.feedback-message.self {
    align-self: flex-end;
    background: #eafbf1;
}
.feedback-message.admin {
    align-self: flex-start;
    background: #f1f5f9;
}
.feedback-message-meta {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    font-size: 12px;
    color: #687386;
    margin-bottom: 4px;
}
.feedback-message p {
    margin: 0;
    font-size: 14px;
    color: #0f172a;
    white-space: pre-wrap;
}
.feedback-conversation-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
    max-width: 820px;
}
.feedback-conversation .feedback-thread {
    max-height: none;
    padding: 18px 4px 4px;
}
.feedback-conversation .partner-field {
    margin-top: 8px;
}
.profile-save-button,
.user-info-card header button {
    min-height: 38px;
    border: 0;
    border-radius: 9px;
    padding: 8px 16px;
    background: var(--green);
    color: white;
    font-weight: 900;
    cursor: pointer;
}
.profile-save-button:disabled,
.user-info-card header button:disabled {
    opacity: 0.6;
    cursor: wait;
}
.form-error {
    margin: 0 0 18px;
    padding: 11px 13px;
    border: 1px solid #fecaca;
    border-radius: 10px;
    background: #fef2f2;
    color: #b91c1c;
    font-size: 13px;
    font-weight: 800;
    text-align: center;
}
.user-info-list {
    display: grid;
    grid-gap: 14px;
    gap: 14px;
    margin-top: 18px;
}
.user-info-card {
    border: 1px solid var(--line);
    border-radius: 12px;
    background: white;
    overflow: hidden;
}
.user-info-card header {
    padding: 14px 16px;
    border-bottom: 1px solid #eef0f3;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
}
.user-info-card header div {
    display: grid;
    grid-gap: 4px;
    gap: 4px;
}
.user-info-card header strong {
    color: #17212c;
    font-size: 18px;
}
.user-info-card header span {
    color: #64748b;
    font-size: 13px;
    font-weight: 800;
}
.user-info-grid {
    padding: 16px;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    grid-gap: 14px;
    gap: 14px;
}
.user-info-grid label {
    display: grid;
    grid-gap: 7px;
    gap: 7px;
}
.user-info-grid label.wide {
    grid-column: span 2;
}
.user-info-grid span {
    color: #354052;
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
}
@media (max-width: 760px) {
    .partner-portal {
        display: block;
    }
    .partner-sidebar {
        position: static;
        height: auto;
    }
    .partner-sidebar-brand {
        min-height: 0;
        padding: 16px;
        align-items: flex-start;
        text-align: left;
    }
    .partner-sidebar-brand img {
        width: 72px;
        height: 50px;
        margin-bottom: 10px;
    }
    .partner-side-nav {
        display: flex;
        overflow-x: auto;
        padding: 10px;
        gap: 8px;
    }
    .partner-side-nav a,
    .partner-sidebar-logout {
        min-width: max-content;
        min-height: 42px;
        border: 1px solid rgba(255, 255, 255, 0.1);
        border-radius: 9px;
        padding: 0 12px;
        grid-template-columns: 18px auto;
        gap: 8px;
        font-size: 14px;
    }
    .partner-side-nav a.active {
        border-color: var(--gold);
    }
    .partner-sidebar-logout {
        margin: 0 10px 12px;
    }
    .partner-content {
        padding: 22px 14px 34px;
    }
    .partner-page-title {
        font-size: 24px;
        margin-bottom: 18px;
    }
    .partner-profile-card {
        border-radius: 14px;
        padding: 18px 14px;
    }
    .partner-profile-head {
        flex-direction: column;
        gap: 12px;
    }
    .certificate-modal-facts,
    .partner-profile-grid,
    .user-info-grid {
        grid-template-columns: 1fr;
    }
    .partner-field.wide,
    .user-info-grid label.wide {
        grid-column: auto;
    }
    .partner-certificate-grid {
        grid-template-columns: 1fr;
        gap: 16px;
    }
    .partner-certificate-card {
        min-height: 0;
        border-radius: 24px;
        padding: 22px 18px;
    }
    .partner-certificate-card dl div {
        grid-template-columns: 1fr;
        gap: 4px;
    }
    .partner-certificate-card dd {
        text-align: left;
    }
    .partner-certificate-modal {
        border-radius: 22px;
    }
    .partner-certificate-modal header {
        min-height: 0;
        padding: 22px 18px;
    }
    .certificate-modal-body {
        padding: 22px 18px;
    }
    .dashboard {
        width: min(100% - 16px, 760px);
    }
    .modules-panel {
        padding: 10px;
        gap: 10px;
    }
    .module-grid {
        display: flex;
        overflow-x: auto;
        grid-template-columns: none;
    }
    .module {
        min-width: max-content;
    }
    .filters {
        grid-template-columns: 1fr;
    }
    .user-info-card header {
        align-items: stretch;
        flex-direction: column;
    }
    .user-info-card header button {
        width: 100%;
    }
}
.partner-actions {
    min-width: 260px;
}
.partner-actions button.edit {
    border: 1px solid #dfe4eb;
}
.partner-actions button.edit span {
    margin-right: 4px;
    font-size: 14px;
}
.partner-edit-backdrop {
    position: fixed;
    inset: 0;
    z-index: 120;
    padding: 18px;
    background: rgba(15, 23, 42, 0.56);
    display: grid;
    place-items: center;
    overflow-y: auto;
}
.partner-edit-modal {
    width: min(100%, 760px);
    max-height: calc(100vh - 36px);
    overflow-y: auto;
    border-radius: 14px;
    background: white;
    box-shadow: 0 28px 80px rgba(15, 23, 42, 0.28);
}
.partner-edit-modal header {
    padding: 18px 20px;
    border-bottom: 1px solid var(--line);
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
}
.partner-edit-modal header h2 {
    margin: 0 0 4px;
    color: var(--green);
    font-size: 24px;
}
.partner-edit-modal header p {
    margin: 0;
    color: var(--gold);
    font-weight: 900;
}
.partner-edit-modal header button {
    width: 34px;
    height: 34px;
    border: 0;
    border-radius: 8px;
    background: #f1f5f9;
    color: #334155;
    font-size: 20px;
}
.partner-edit-grid {
    padding: 18px 20px;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-gap: 14px;
    gap: 14px;
}
.partner-edit-grid label {
    display: grid;
    grid-gap: 7px;
    gap: 7px;
}
.partner-edit-grid label.wide {
    grid-column: 1/-1;
}
.partner-edit-grid span {
    color: #354052;
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
}
.partner-edit-grid input {
    width: 100%;
    min-height: 42px;
    border: 1px solid #dfe4eb;
    border-radius: 9px;
    padding: 10px 12px;
    background: #f8fafc;
    color: #06111d;
    font: inherit;
}
.partner-edit-modal footer {
    padding: 14px 20px 20px;
    display: flex;
    justify-content: flex-end;
    gap: 10px;
}
.partner-portal {
    display: block;
    background: #f8fafc;
}
.partner-sidebar {
    position: static;
    height: auto;
    min-height: 0;
    padding: 16px 20px;
    background: white;
    color: #17212c;
    border-bottom: 1px solid var(--line);
    box-shadow: 0 1px 3px rgba(15, 23, 42, 0.04);
}
.partner-sidebar-brand {
    min-height: 0;
    padding: 0 0 14px;
    border: 0;
    flex-direction: row;
    justify-content: flex-start;
    gap: 14px;
    text-align: left;
}
.partner-sidebar-brand img {
    width: 58px;
    height: 42px;
    border-radius: 8px;
    margin: 0;
    border: 1px solid #eef0f3;
}
.partner-sidebar-brand strong {
    color: var(--green);
    font-size: 20px;
}
.partner-sidebar-brand span {
    margin-top: 4px;
    color: var(--gold);
    font-size: 13px;
}
.partner-side-nav {
    padding: 4px;
    border-radius: 8px;
    background: #f0f1f3;
    display: grid;
    grid-template-columns: repeat(4, minmax(132px, 1fr));
    grid-gap: 6px 10px;
    gap: 6px 10px;
}
.partner-side-nav a,
.partner-sidebar-logout {
    min-height: 44px;
    padding: 8px 14px;
    border: 0;
    border-radius: 7px;
    color: #667085;
    font-size: 16px;
    font-weight: 900;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}
.partner-side-nav a.active {
    background: white;
    color: var(--green);
    box-shadow: 0 1px 5px rgba(15, 23, 42, 0.1);
}
.partner-nav-icon {
    display: none;
}
.partner-sidebar-logout {
    margin: 10px 0 0;
    background: #fff5f5;
    color: #b42318;
    border: 1px solid #ffd4d4;
}
.partner-sidebar-logout span {
    display: none;
}
.partner-content {
    padding: 28px min(4vw, 56px) 60px;
}
@media (max-width: 760px) {
    .partner-actions {
        min-width: 220px;
    }
    .partner-edit-grid {
        grid-template-columns: 1fr;
        padding: 16px;
    }
    .partner-edit-grid label.wide {
        grid-column: auto;
    }
    .partner-edit-modal footer {
        flex-direction: column-reverse;
    }
    .partner-edit-modal footer button {
        width: 100%;
    }
    .partner-sidebar {
        padding: 12px;
    }
    .partner-side-nav {
        display: flex;
        overflow-x: auto;
        grid-template-columns: none;
    }
    .partner-side-nav a {
        min-width: max-content;
    }
    .partner-sidebar-logout {
        justify-content: center;
    }
}
.partner-certificate-grid {
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    gap: 16px;
}
.partner-certificate-card {
    min-height: 270px;
    border-width: 2px;
    border-radius: 28px;
    padding: 18px 20px 16px;
}
.certificate-ribbon {
    width: 24px;
    height: 30px;
    margin-bottom: 8px;
}
.certificate-ribbon:before {
    left: 2px;
    width: 20px;
    height: 20px;
    border-width: 3px;
}
.certificate-ribbon:after {
    left: 6px;
    top: 17px;
    width: 12px;
    height: 13px;
    border-left-width: 3px;
    border-right-width: 3px;
}
.partner-certificate-card h2,
.partner-certificate-number {
    font-size: 15px;
    line-height: 1.15;
}
.certificate-card-line {
    width: 54px;
    height: 2px;
    margin: 9px auto 12px;
}
.partner-certificate-card dl {
    gap: 7px;
}
.partner-certificate-card dl div {
    grid-template-columns: 0.9fr 1.25fr;
    gap: 10px;
}
.partner-certificate-card dt {
    font-size: 13px;
}
.partner-certificate-card dd {
    font-size: 14px;
}
.certificate-progress {
    margin-top: 12px;
    gap: 4px 10px;
    font-size: 11px;
}
.certificate-progress i {
    height: 7px;
}
.partner-certificate-card p {
    padding-top: 10px;
    font-size: 12px;
}
@media (max-width: 760px) {
    .partner-certificate-grid {
        grid-template-columns: 1fr;
        gap: 12px;
    }
    .partner-certificate-card {
        border-radius: 18px;
        padding: 16px;
    }
    .partner-certificate-card dl div {
        grid-template-columns: 1fr 1.2fr;
        gap: 8px;
    }
    .partner-certificate-card dd {
        text-align: right;
    }
}
.partner-certificate-modal {
    width: min(100% - 20px, 560px);
    max-height: min(92vh, 640px);
    border-radius: 26px;
}
.partner-certificate-modal header {
    min-height: 92px;
    padding: 20px 22px;
    gap: 14px;
    flex: none;
}
.partner-certificate-modal header h2 {
    margin-bottom: 6px;
    font-size: 24px;
    line-height: 1.08;
}
.partner-certificate-modal header p {
    font-size: 15px;
}
.partner-certificate-modal header a {
    font-size: 30px;
}
.certificate-modal-body {
    padding: 22px 24px 24px;
}
.certificate-modal-facts {
    gap: 14px 30px;
    margin-bottom: 20px;
}
.certificate-modal-facts span {
    font-size: 15px;
}
.certificate-modal-facts strong {
    font-size: 17px;
}
.certificate-modal-body h3 {
    margin-bottom: 10px;
    font-size: 22px;
}
.certificate-month-table td,
.certificate-month-table th {
    height: 38px;
    padding: 8px 10px;
    font-size: 14px;
}
.partner-tx-list {
    margin-top: 4px;
}
.partner-tx-row {
    display: grid;
    grid-template-columns: 90px 1fr auto;
    grid-gap: 10px;
    gap: 10px;
    align-items: center;
    margin-bottom: 8px;
    padding: 10px 14px;
    border-radius: 12px;
    background: #f8fafc;
}
.partner-tx-row span {
    color: #374151;
    font-weight: 800;
    font-size: 13px;
}
.partner-tx-row em {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: #64748b;
    font-style: normal;
    font-size: 12px;
}
.partner-tx-row strong {
    color: #0aa346;
    font-size: 15px;
    text-align: right;
}
.partner-tx-empty {
    padding: 14px;
    color: #64748b;
    font-size: 14px;
}
@media (max-width: 760px) {
    .partner-certificate-modal {
        width: min(100% - 14px, 520px);
        max-height: min(92vh, 600px);
        border-radius: 18px;
    }
    .partner-certificate-modal header {
        padding: 18px 16px;
    }
    .partner-certificate-modal header h2 {
        font-size: 21px;
    }
    .certificate-modal-body {
        padding: 18px 16px;
    }
    .certificate-modal-facts {
        grid-template-columns: 1fr 1fr;
        gap: 12px;
    }
    .certificate-month-table td,
    .certificate-month-table th {
        font-size: 13px;
    }
    .partner-tx-row {
        grid-template-columns: 1fr;
        gap: 4px;
        padding: 10px 12px;
    }
    .partner-tx-row strong {
        text-align: left;
    }
}
.partner-list-total {
    margin-top: 14px;
    color: #64748b;
    font-size: 13px;
    font-weight: 900;
    text-align: right;
}
@media (max-width: 720px) {
    .partner-list-total {
        text-align: left;
    }
}
.partner-table-wrap {
    position: relative;
    overflow-x: auto;
    max-width: 100%;
}
.partner-table {
    min-width: 1120px;
}
.partner-table td:first-child,
.partner-table th:first-child {
    width: 48px;
}
.partner-table td:nth-child(2),
.partner-table th:nth-child(2) {
    width: 76px;
}
.partner-table td:nth-child(3),
.partner-table th:nth-child(3) {
    width: 180px;
}
.partner-table td:nth-child(4),
.partner-table th:nth-child(4) {
    width: 170px;
}
.partner-table td:nth-child(5),
.partner-table th:nth-child(5) {
    width: 230px;
}
.partner-table td:nth-child(6),
.partner-table th:nth-child(6) {
    width: 135px;
}
.partner-table td:nth-child(7),
.partner-table th:nth-child(7) {
    width: 210px;
}
.partner-table td:nth-child(8),
.partner-table th:nth-child(8) {
    width: 125px;
}
.partner-table td:nth-child(9),
.partner-table th:nth-child(9) {
    width: 110px;
}
.partner-table td:nth-child(10),
.partner-table th:nth-child(10) {
    position: -webkit-sticky;
    position: sticky;
    right: 0;
    z-index: 4;
    width: 148px;
    background: #fff;
    box-shadow: -10px 0 18px rgba(15, 23, 42, 0.06);
}
.partner-table th:nth-child(10) {
    z-index: 5;
    background: #f8fafc;
}
.partner-table td {
    overflow: hidden;
}
.partner-table td:nth-child(3),
.partner-table td:nth-child(5) {
    overflow-wrap: anywhere;
}
.partner-address {
    max-width: none;
    display: -webkit-box;
    overflow: hidden;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    line-height: 1.25;
}
.partner-actions {
    min-width: 0;
    width: 128px;
    display: grid;
    grid-template-columns: 1fr;
    grid-gap: 6px;
    align-items: stretch;
}
.partner-actions button {
    width: 100%;
    min-height: 34px;
}
.partner-actions button.edit {
    background: #eef2f7;
    color: #17212c;
    border: 1px solid #dbe3ee;
}
.partner-actions button.edit span {
    margin-right: 5px;
}
.partner-actions button.status {
    background: #ecfdf5;
    color: #047857;
}
.partner-actions button.danger {
    background: #fef2f2;
    color: #b91c1c;
}
.partner-action-error {
    font-size: 10px;
}
@media (max-width: 760px) {
    .partner-table {
        min-width: 1040px;
    }
    .partner-table td:nth-child(10),
    .partner-table th:nth-child(10) {
        width: 132px;
    }
    .partner-actions {
        width: 112px;
    }
    .partner-actions button {
        font-size: 11px;
    }
}
.partner-table {
    min-width: 980px;
    table-layout: fixed;
}
.partner-table td:first-child,
.partner-table th:first-child {
    width: 42px;
}
.partner-table td:nth-child(2),
.partner-table th:nth-child(2) {
    width: 70px;
}
.partner-table td:nth-child(3),
.partner-table th:nth-child(3) {
    width: 155px;
}
.partner-table td:nth-child(4),
.partner-table th:nth-child(4) {
    width: 150px;
}
.partner-table td:nth-child(5),
.partner-table th:nth-child(5) {
    width: 220px;
}
.partner-table td:nth-child(6),
.partner-table th:nth-child(6) {
    width: 120px;
}
.partner-table td:nth-child(7),
.partner-table th:nth-child(7) {
    width: 180px;
}
.partner-table td:nth-child(8),
.partner-table th:nth-child(8) {
    width: 110px;
}
.partner-table td:nth-child(9),
.partner-table th:nth-child(9) {
    position: static;
    right: auto;
    z-index: auto;
    width: 220px;
    background: inherit;
    box-shadow: none;
}
.partner-table th:nth-child(9) {
    background: #f8fafc;
}
.partner-table td {
    height: 62px;
    padding: 10px;
}
.partner-address {
    -webkit-line-clamp: 2;
    font-size: 13px;
}
.partner-actions {
    width: 170px;
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    align-items: center;
}
.partner-actions button {
    width: auto;
    min-height: 30px;
    padding: 0 9px;
    border-radius: 7px;
    font-size: 12px;
    line-height: 1;
}
.partner-actions button.edit {
    min-width: 62px;
}
.partner-actions button.status {
    min-width: 82px;
}
.partner-actions button.danger {
    min-width: 64px;
}
@media (max-width: 760px) {
    .partner-table {
        min-width: 900px;
    }
    .partner-table td:nth-child(5),
    .partner-table th:nth-child(5) {
        width: 190px;
    }
    .partner-table td:nth-child(7),
    .partner-table th:nth-child(7) {
        width: 155px;
    }
    .partner-table td:nth-child(9),
    .partner-table th:nth-child(9) {
        width: 190px;
    }
    .partner-actions {
        width: 150px;
        gap: 5px;
    }
    .partner-actions button {
        min-height: 28px;
        padding: 0 7px;
        font-size: 11px;
    }
}
.order-edit-button {
    border: 1px solid #d7e0ea;
    background: #eef3f8;
    color: #172234;
    border-radius: 8px;
    min-height: 36px;
    padding: 0 14px;
    font-weight: 800;
    cursor: pointer;
}
.order-edit-modal {
    max-width: min(980px, calc(100vw - 24px));
}
.order-edit-scroll {
    max-height: 70vh;
    overflow: auto;
    padding-right: 4px;
}
.order-edit-section {
    border-top: 1px solid #e8edf3;
    padding-top: 14px;
    margin-top: 14px;
}
.order-edit-section:first-child {
    border-top: 0;
    margin-top: 0;
    padding-top: 0;
}
.order-edit-section h3 {
    margin: 0 0 10px;
    font-size: 16px;
    color: #172234;
}
.order-edit-modal textarea {
    min-height: 86px;
    resize: vertical;
}
.order-risk-warning {
    display: flex;
    gap: 10px;
    align-items: flex-start;
    margin-top: 14px;
    padding: 12px;
    border: 1px solid #f6c453;
    background: #fff9df;
    border-radius: 8px;
    color: #7a3d00;
    font-weight: 700;
}
.order-risk-warning input {
    width: auto;
    margin-top: 3px;
}
.order-audit-list p {
    margin: 8px 0;
    padding: 10px;
    background: #f8fafc;
    border-radius: 8px;
    color: #475569;
    font-size: 13px;
}
@media (max-width: 760px) {
    .order-edit-modal {
        max-width: calc(100vw - 12px);
    }
    .order-edit-scroll {
        max-height: 74vh;
    }
}
.password-reset-field small {
    display: block;
    margin-top: 6px;
    color: #64748b;
    font-size: 12px;
    font-weight: 700;
}
.password-reset-field input[readonly] {
    background: #f8fafc;
    color: #64748b;
}
.password-input-wrap {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
}
.password-input-wrap input {
    width: 100%;
    padding-right: 52px !important;
}
.password-info-toggle {
    position: absolute;
    right: 12px;
    width: 30px;
    height: 30px;
    border: 1px solid #d7e0ea;
    border-radius: 50%;
    background: #fff;
    color: #022c1f;
    font-weight: 900;
    font-family: Georgia, serif;
    line-height: 1;
    cursor: pointer;
}
.input-shell .password-input-wrap input {
    padding-left: 0;
}
.input-shell .password-info-toggle {
    right: 0;
}
.dispatch-address {
    min-width: 220px;
    max-width: 320px;
}
.dispatch-page-link.print-batch {
    background: var(--leaf);
    color: white;
    border-color: var(--leaf);
}
.reports-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 18px;
}
.daily-reports-panel {
    border: 1px solid var(--line);
    border-radius: 12px;
    padding: 18px 20px;
    margin-bottom: 22px;
    background: #fffdf8;
}
.daily-reports-panel h3 {
    margin: 0 0 6px;
}
.daily-reports-panel .subtext {
    margin: 0 0 12px;
    color: var(--muted);
    font-size: 13px;
}
.daily-report-current {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 12px 16px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: white;
}
.daily-report-current div {
    display: grid;
    grid-gap: 3px;
    gap: 3px;
}
.daily-report-current span,
.daily-report-picker label span {
    color: var(--muted);
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
}
.daily-report-current strong {
    color: #061e13;
    font-size: 20px;
}
.daily-report-current em {
    color: #9a5b13;
    font-style: normal;
    font-weight: 800;
}
.daily-report-missing {
    padding: 10px 12px;
    border-radius: 8px;
    background: #fff7ed;
    color: #9a3412 !important;
}
.daily-report-picker {
    display: flex;
    align-items: flex-end;
    gap: 12px;
    flex-wrap: wrap;
    margin-top: 12px;
}
.daily-report-picker label {
    display: grid;
    grid-gap: 6px;
    gap: 6px;
}
.daily-report-picker input {
    min-height: 40px;
    border: 1px solid var(--line);
    border-radius: 8px;
    padding: 8px 12px;
    font: inherit;
}
.report-filters {
    display: flex;
    align-items: flex-end;
    gap: 12px;
    margin-bottom: 18px;
    flex-wrap: wrap;
}
.report-filters label {
    display: grid;
    grid-gap: 6px;
    gap: 6px;
    color: var(--muted);
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
}
.report-filters input {
    min-height: 40px;
    border: 1px solid var(--line);
    border-radius: 8px;
    padding: 8px 12px;
    font: inherit;
}
.reports-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-gap: 16px;
    gap: 16px;
    margin-top: 18px;
}
.report-card {
    overflow: hidden;
    border: 1px solid var(--line);
    border-radius: 10px;
    padding: 0;
    background: #fff;
}
.report-card h3 {
    margin: 0;
    padding: 14px 16px;
    background: var(--green);
    color: white;
    font-family: inherit;
    font-size: 15px;
    font-weight: 900;
    letter-spacing: 0.3px;
}
.report-table {
    min-width: 0;
    width: 100%;
}
.report-table td {
    height: 44px;
    padding: 10px 16px;
    border-top: 1px solid #f1f2f4;
}
.report-table td:last-child {
    text-align: right;
    font-weight: 900;
    color: #17212c;
}
.report-card .subtext {
    padding: 14px 16px 16px;
}
@media (max-width: 980px) {
    .reports-head {
        flex-direction: column;
    }
    .reports-grid {
        grid-template-columns: 1fr;
    }
}
.event-invitation-overlay {
    position: fixed;
    inset: 0;
    z-index: 10000;
    overflow-y: auto;
    padding: 12px;
    background: rgba(2, 15, 10, 0.82);
    -webkit-backdrop-filter: blur(7px);
    backdrop-filter: blur(7px);
    display: flex;
    align-items: flex-start;
    justify-content: center;
}
.event-invitation-modal {
    position: relative;
    width: min(430px, 100%);
    overflow: hidden;
    margin: auto;
    border-radius: 20px;
    background: white;
    box-shadow: 0 24px 80px rgba(0, 0, 0, 0.42);
}
.event-invitation-close-form {
    position: absolute;
    top: 8px;
    right: 8px;
    z-index: 1;
    margin: 0;
}
.event-invitation-close {
    width: 44px;
    height: 44px;
    border: 0;
    border-radius: 50%;
    padding: 0;
    background: rgba(2, 15, 10, 0.55);
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font: inherit;
    font-size: 24px;
    line-height: 1;
    cursor: pointer;
}
.event-invitation-close:hover {
    background: rgba(2, 15, 10, 0.75);
}
.event-invitation-copy {
    padding: 15px 18px 13px;
    background: #062f22;
    color: white;
    text-align: center;
}
.event-invitation-copy span {
    color: #f6cf6a;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 1.6px;
    text-transform: uppercase;
}
.event-invitation-copy h1 {
    margin: 4px 0 0;
    color: white;
    font-size: 20px;
}
.event-invitation-modal > img {
    display: block;
    width: 100%;
    height: auto;
}
.event-invitation-actions {
    position: -webkit-sticky;
    position: sticky;
    bottom: 0;
    padding: 12px;
    background: white;
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 10px;
    gap: 10px;
    box-shadow: 0 -8px 20px rgba(15, 23, 42, 0.08);
}
.event-invitation-actions button {
    min-height: 50px;
    border: 0;
    border-radius: 10px;
    padding: 10px 12px;
    font: inherit;
    font-size: 14px;
    font-weight: 900;
    cursor: pointer;
}
.event-invitation-modal button.secure {
    background: #0b6b46;
    color: white;
}
.event-invitation-modal button.visit {
    background: #f2f4f3;
    color: #15382c;
}
.partner-event-intro {
    margin: -12px 0 24px;
    color: #64748b;
    font-size: 16px;
}
.partner-event-list {
    max-width: 980px;
    display: grid;
    grid-gap: 18px;
    gap: 18px;
}
.partner-event-card {
    overflow: hidden;
    border: 1px solid #dfe5e1;
    border-radius: 18px;
    background: white;
    box-shadow: 0 10px 28px rgba(15, 23, 42, 0.06);
}
.partner-event-summary {
    display: grid;
    grid-template-columns: minmax(190px, 240px) 1fr;
}
.partner-event-summary > img {
    display: block;
    width: 100%;
    height: 100%;
    max-height: 390px;
    object-fit: cover;
    object-position: top;
    background: #f4f6f5;
}
.partner-event-date {
    padding: 28px 16px;
    background: var(--green);
    color: white;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
}
.partner-event-date strong {
    font-size: 40px;
    line-height: 1;
}
.partner-event-date span {
    margin-top: 7px;
    color: #f6cf6a;
    font-size: 18px;
    font-weight: 900;
    text-transform: uppercase;
}
.partner-event-body {
    padding: 26px 28px 28px;
}
.partner-event-body h2 {
    margin: 8px 0 12px;
    color: var(--green);
    font-size: 26px;
}
.partner-event-body > p {
    margin: 5px 0;
    color: #526173;
}
.partner-event-state {
    display: inline-flex;
    border-radius: 999px;
    padding: 5px 10px;
    font-size: 11px;
    font-weight: 900;
    text-transform: uppercase;
}
.partner-event-state.open {
    background: #dcfce7;
    color: #166534;
}
.partner-event-state.closed {
    background: #f1f5f9;
    color: #475569;
}
.partner-event-response {
    margin-top: 18px;
    border-radius: 11px;
    padding: 13px 15px;
    font-weight: 800;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}
.partner-event-response span {
    color: inherit;
    opacity: 0.72;
    font-size: 12px;
    font-weight: 700;
}
.partner-event-response.available {
    background: #dcfce7;
    color: #166534;
}
.partner-event-response.unavailable {
    background: #fee2e2;
    color: #991b1b;
}
.partner-event-response.pending {
    background: #fff7ed;
    color: #9a3412;
}
.partner-event-preview-note {
    margin: 0 !important;
    padding: 16px 20px;
    border-top: 1px solid #e5e7eb;
    color: #9a5b13 !important;
    font-weight: 800;
}
.partner-event-fee-note {
    margin-top: 10px !important;
    padding: 8px 10px;
    background: #fff7ed;
    border: 1px solid #fdba74;
    border-radius: 8px;
    color: #9a3412 !important;
    font-size: 12.5px !important;
    font-weight: 700;
}
.partner-event-empty {
    border: 1px dashed #cbd5e1;
    border-radius: 14px;
    padding: 26px;
    background: white;
    color: #64748b;
}
.event-booking-panels {
    border-top: 1px solid #e4e9e6;
    background: #fbfcfb;
}
.event-booking-tabs {
    padding: 10px 14px 0;
    display: flex;
    gap: 6px;
    background: white;
    border-bottom: 1px solid #e4e9e6;
}
.event-booking-tabs button {
    min-height: 44px;
    border: 0;
    border-bottom: 3px solid transparent;
    padding: 9px 16px;
    background: transparent;
    color: #64748b;
    font: inherit;
    font-weight: 900;
    cursor: pointer;
}
.event-booking-tabs button.active {
    border-bottom-color: #0b6b46;
    color: #0b6b46;
}
.event-booking-tabs button:focus-visible {
    outline: 3px solid rgba(11, 107, 70, 0.2);
    outline-offset: -3px;
}
.event-booking-tabs-admin {
    min-height: 54px;
    padding: 0 18px;
    align-items: center;
    justify-content: space-between;
}
.event-booking-tabs-admin strong {
    color: #0b6b46;
}
.event-booking-tabs-admin span {
    border-radius: 999px;
    padding: 5px 9px;
    background: #eef2f0;
    color: #64748b;
    font-size: 10px;
    font-weight: 900;
    text-transform: uppercase;
}
.event-registration-form {
    background: #fbfcfb;
}
.event-registration-booked {
    padding: 18px 22px 4px;
}
.event-booked-list {
    margin: 12px 0 8px;
    padding: 0;
    list-style: none;
    display: grid;
    grid-gap: 8px;
    gap: 8px;
}
.event-booked-list li {
    padding: 10px 14px;
    border: 1px solid #d6e5dd;
    border-radius: 9px;
    background: #f6fbf8;
    color: #2b4a3e;
    font-size: 13px;
}
.event-booked-list li strong {
    color: #123524;
}
.event-registration-self {
    padding: 18px 22px;
    background: #eef8f2;
}
.event-registration-self label {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    cursor: pointer;
}
.event-registration-self input {
    width: 20px;
    height: 20px;
    margin-top: 2px;
    accent-color: #0b6b46;
}
.event-registration-self span {
    display: grid;
    grid-gap: 3px;
    gap: 3px;
}
.event-registration-self strong {
    color: #123a2d;
}
.event-registration-self small {
    color: #60756d;
}
.event-companion-heading {
    padding: 20px 22px 12px;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
}
.event-companion-heading h3 {
    margin: 0 0 3px;
    color: #123a2d;
    font-size: 18px;
}
.event-companion-heading p {
    margin: 0;
    color: #64748b;
    font-size: 13px;
}
.event-self-reminder {
    margin-top: 8px !important;
    padding: 8px 10px;
    background: #eaf6ef;
    border: 1px solid #bfe3cc;
    border-radius: 8px;
    color: #0b6b46 !important;
    font-size: 12.5px !important;
    font-weight: 700;
}
.event-add-actions {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    justify-content: flex-end;
}
.event-add-actions button {
    min-height: 38px;
    border: 1px solid #b7c8c0;
    border-radius: 8px;
    padding: 8px 11px;
    background: white;
    color: #0b6b46;
    font: inherit;
    font-size: 12px;
    font-weight: 900;
    cursor: pointer;
}
.event-companion-list {
    padding: 0 22px 18px;
    display: grid;
    grid-gap: 12px;
    gap: 12px;
}
.event-companion-card {
    border: 1px solid #d9e1dd;
    border-radius: 12px;
    padding: 14px;
    background: white;
}
.event-companion-card-head {
    margin-bottom: 12px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}
.event-companion-card-head strong {
    color: #123a2d;
}
.event-companion-card-head button {
    border: 0;
    background: transparent;
    color: #b42318;
    font: inherit;
    font-size: 12px;
    font-weight: 900;
    cursor: pointer;
}
.event-field {
    display: grid;
    grid-gap: 6px;
    gap: 6px;
}
.event-field > span {
    color: #465b53;
    font-size: 12px;
    font-weight: 900;
}
.event-field input {
    width: 100%;
    min-height: 44px;
    border: 1px solid #cbd5d0;
    border-radius: 8px;
    padding: 10px 12px;
    background: white;
    color: #17212c;
    font: inherit;
}
.event-field input:focus {
    border-color: #0b6b46;
    outline: 3px solid rgba(11, 107, 70, 0.12);
}
.event-field small {
    color: #72827c;
}
.event-guest-fields {
    display: grid;
    grid-template-columns: 1.2fr 1fr 1.4fr;
    grid-gap: 12px;
    gap: 12px;
}
.event-no-companions {
    margin: 0;
    padding: 15px;
    border: 1px dashed #cbd5e1;
    border-radius: 10px;
    color: #64748b;
    text-align: center;
}
.event-fee-reminder {
    margin: 0 22px 14px;
    padding: 10px 14px;
    background: #fff7ed;
    border: 1px solid #fdba74;
    border-radius: 9px;
    color: #9a3412;
    font-size: 13px;
    font-weight: 700;
}
.event-form-message {
    margin: 0 22px 14px;
    border-radius: 9px;
    padding: 12px 14px;
    font-weight: 800;
}
.event-form-message.success {
    background: #dcfce7;
    color: #166534;
}
.event-form-message.error {
    background: #fee2e2;
    color: #991b1b;
}
.event-registration-submit {
    padding: 16px 22px;
    border-top: 1px solid #e1e7e4;
    background: white;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}
.event-registration-submit span {
    color: #64748b;
}
.event-registration-submit span strong {
    color: #123a2d;
    font-size: 20px;
}
.event-registration-submit > button {
    min-height: 46px;
    border: 0;
    border-radius: 9px;
    padding: 11px 22px;
    background: #0b6b46;
    color: white;
    font: inherit;
    font-weight: 900;
    cursor: pointer;
}
.event-registration-submit > button:disabled {
    cursor: not-allowed;
    opacity: 0.55;
}
.event-seat-view {
    min-height: 220px;
    padding: 22px;
    background: linear-gradient(180deg, #f7fbf8, #fff);
}
.event-seat-empty,
.event-seat-loading {
    margin: 0;
    border: 1px dashed #b8c9c1;
    border-radius: 12px;
    padding: 30px 18px;
    color: #64748b;
    text-align: center;
}
.event-seat-empty strong {
    color: #123a2d;
    font-size: 18px;
}
.event-seat-empty p {
    margin: 6px 0 0;
}
.event-seat-heading {
    margin-bottom: 14px;
}
.event-seat-heading span {
    color: #64748b;
    font-size: 12px;
    font-weight: 800;
}
.event-seat-heading h3 {
    margin: 4px 0 0;
    color: #123a2d;
    font-size: 22px;
}
.event-seat-list {
    display: grid;
    grid-gap: 10px;
    gap: 10px;
}
.event-seat-card {
    border: 1px solid #cfe0d7;
    border-radius: 13px;
    padding: 15px 17px;
    background: white;
    box-shadow: 0 5px 16px rgba(15, 73, 52, 0.06);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
}
.event-seat-card > div:first-child {
    display: grid;
    grid-gap: 4px;
    gap: 4px;
}
.event-seat-card > div:first-child strong {
    color: #123a2d;
    font-size: 16px;
}
.event-seat-card > div:first-child span {
    color: #64748b;
    font-size: 12px;
}
.event-seat-number {
    min-width: 100px;
    display: grid;
    justify-items: center;
}
.event-seat-number span {
    color: #64748b;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: 0.5px;
    text-transform: uppercase;
}
.event-seat-number strong {
    color: #0b6b46;
    font-size: 38px;
    line-height: 1;
}
.reports-subnav {
    margin: 0 0 22px;
    border-bottom: 1px solid var(--line);
    display: flex;
    gap: 6px;
    overflow-x: auto;
}
.reports-subnav a {
    flex: 0 0 auto;
    padding: 11px 14px;
    border-bottom: 3px solid transparent;
    color: #64748b;
    font-size: 13px;
    font-weight: 900;
    text-decoration: none;
}
.reports-subnav a.active {
    border-bottom-color: #0b6b46;
    color: #0b6b46;
}
.all-earnings-month-form {
    width: min(100%, 360px);
    margin: 0 0 16px;
    padding: 12px;
    border: 1px solid #d7e2dc;
    border-radius: 12px;
    background: #f8fbf9;
    display: grid;
    grid-template-columns: minmax(180px, 1fr) auto;
    align-items: end;
    grid-gap: 10px;
    gap: 10px;
}
.all-earnings-month-form label {
    display: grid;
    grid-gap: 5px;
    gap: 5px;
    color: #52625c;
    font-size: 11px;
    font-weight: 900;
}
.all-earnings-month-form input {
    height: 39px;
    border: 1px solid #cfd9d4;
    border-radius: 8px;
    padding: 0 10px;
    background: #fff;
    color: #17221d;
    font-weight: 800;
}
.all-earnings-month-form button {
    min-height: 39px;
    border: 0;
    border-radius: 8px;
    padding: 0 14px;
    background: var(--green);
    color: #fff;
    font-size: 12px;
    font-weight: 900;
}
.all-earnings-role-toggle {
    display: flex;
    gap: 8px;
    margin: 0 0 16px;
}
.all-earnings-role-toggle a {
    min-width: 72px;
    padding: 9px 18px;
    border: 1px solid #cfd9d4;
    border-radius: 999px;
    color: #52625c;
    background: #fff;
    font-size: 13px;
    font-weight: 900;
    text-align: center;
    text-decoration: none;
}
.all-earnings-role-toggle a.active {
    border-color: var(--green);
    color: #fff;
    background: var(--green);
}
.all-earnings-range-form {
    width: min(100%, 720px);
    margin: 0 0 14px;
    padding: 13px;
    display: grid;
    grid-template-columns: minmax(180px, 1fr) 82px 82px auto auto;
    align-items: end;
    grid-gap: 10px;
    gap: 10px;
    border: 1px solid #d7e2dc;
    border-radius: 12px;
    background: #f8fbf9;
}
.all-earnings-range-form > div {
    display: grid;
    grid-gap: 3px;
    gap: 3px;
    align-self: center;
}
.all-earnings-range-form > div strong {
    color: var(--green);
    font-size: 14px;
}
.all-earnings-range-form > div span {
    color: #64748b;
    font-size: 11px;
}
.all-earnings-range-form label {
    display: grid;
    grid-gap: 4px;
    gap: 4px;
    color: #52625c;
    font-size: 11px;
    font-weight: 900;
}
.all-earnings-range-form input {
    width: 100%;
    min-width: 0;
    height: 38px;
    border: 1px solid #cfd9d4;
    border-radius: 8px;
    padding: 0 9px;
    background: #fff;
    color: #17221d;
    font-weight: 800;
}
.all-earnings-range-form a,
.all-earnings-range-form button {
    min-height: 38px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 0;
    border-radius: 8px;
    padding: 0 13px;
    font-size: 12px;
    font-weight: 900;
}
.all-earnings-range-form button {
    background: var(--green);
    color: #fff;
}
.all-earnings-range-form a {
    background: #e9eeeb;
    color: #52625c;
}
.all-earnings-range-result {
    width: min(100%, 720px);
    margin: 0 0 14px;
    padding: 12px 14px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    border-radius: 10px;
    background: #eaf7ef;
    color: #185c3f;
}
.all-earnings-range-result span {
    font-size: 12px;
    font-weight: 800;
}
.all-earnings-range-result strong {
    color: #063d28;
    font-size: 20px;
    white-space: nowrap;
}
.all-earnings-range-error {
    width: min(100%, 720px);
    margin: 0 0 14px;
    padding: 10px 12px;
    border-radius: 8px;
    background: #fff1f2;
    color: #b42318;
    font-size: 12px;
    font-weight: 800;
}
.all-earnings-table {
    width: min(100%, 720px);
    min-width: 0;
    table-layout: fixed;
}
.all-earnings-table td:first-child,
.all-earnings-table th:first-child {
    width: 9%;
    text-align: center;
}
.all-earnings-table td:nth-child(2),
.all-earnings-table th:nth-child(2) {
    width: 38%;
}
.all-earnings-table td:nth-child(3),
.all-earnings-table th:nth-child(3) {
    width: 25%;
}
.all-earnings-table td:nth-child(4),
.all-earnings-table th:nth-child(4) {
    width: 28%;
    text-align: right;
}
.all-earnings-table.has-today {
    width: min(100%, 780px);
}
.all-earnings-table.has-today td:first-child,
.all-earnings-table.has-today th:first-child {
    width: 8%;
}
.all-earnings-table.has-today td:nth-child(2),
.all-earnings-table.has-today th:nth-child(2) {
    width: 30%;
}
.all-earnings-table.has-today td:nth-child(3),
.all-earnings-table.has-today th:nth-child(3) {
    width: 19%;
}
.all-earnings-table.has-today td:nth-child(4),
.all-earnings-table.has-today th:nth-child(4) {
    width: 22%;
}
.all-earnings-table.has-today td:nth-child(5),
.all-earnings-table.has-today th:nth-child(5) {
    width: 21%;
    text-align: right;
    white-space: nowrap;
}
.all-earnings-table .today-increase {
    white-space: nowrap;
    text-align: right;
}
@media (max-width: 640px) {
    .all-earnings-month-form {
        width: 100%;
        grid-template-columns: 1fr;
    }
    .all-earnings-month-form button {
        width: 100%;
    }
    .all-earnings-range-form {
        grid-template-columns: 1fr 1fr;
    }
    .all-earnings-range-form > div {
        grid-column: 1/-1;
    }
    .all-earnings-range-form a,
    .all-earnings-range-form button {
        width: 100%;
    }
    .all-earnings-range-result {
        align-items: flex-start;
        flex-direction: column;
        gap: 5px;
    }
    .all-earnings-table td,
    .all-earnings-table th {
        padding: 10px 7px;
        font-size: 12px;
    }
    .all-earnings-table td:first-child,
    .all-earnings-table th:first-child {
        width: 10%;
    }
    .all-earnings-table td:nth-child(2),
    .all-earnings-table th:nth-child(2) {
        width: 37%;
    }
    .all-earnings-table td:nth-child(3),
    .all-earnings-table th:nth-child(3) {
        width: 25%;
    }
    .all-earnings-table td:nth-child(4),
    .all-earnings-table th:nth-child(4) {
        width: 28%;
    }
    .all-earnings-table.has-today td:first-child,
    .all-earnings-table.has-today th:first-child {
        width: 9%;
    }
    .all-earnings-table.has-today td:nth-child(2),
    .all-earnings-table.has-today th:nth-child(2) {
        width: 29%;
    }
    .all-earnings-table.has-today td:nth-child(3),
    .all-earnings-table.has-today th:nth-child(3) {
        width: 19%;
    }
    .all-earnings-table.has-today td:nth-child(4),
    .all-earnings-table.has-today th:nth-child(4) {
        width: 22%;
    }
    .all-earnings-table.has-today td:nth-child(5),
    .all-earnings-table.has-today th:nth-child(5) {
        width: 21%;
    }
}
.meeting-registration-reports {
    display: grid;
    grid-gap: 18px;
    gap: 18px;
}
.meeting-report-empty {
    border: 1px dashed #cbd5e1;
    border-radius: 12px;
    padding: 24px;
    background: white;
}
.meeting-report-card {
    overflow: hidden;
    border: 1px solid var(--line);
    border-radius: 13px;
    background: white;
    box-shadow: 0 8px 24px rgba(15, 23, 42, 0.05);
}
.meeting-report-card > header {
    padding: 18px 20px;
    background: #062f22;
    color: white;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
}
.meeting-report-card > header span:first-child {
    color: #f6cf6a;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: 1.2px;
    text-transform: uppercase;
}
.meeting-report-card > header h3 {
    margin: 4px 0;
    color: white;
    font-size: 20px;
}
.meeting-report-card > header p {
    margin: 0;
    color: rgba(255, 255, 255, 0.72);
    font-size: 12px;
}
.meeting-registration-controls {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    justify-content: flex-end;
}
.meeting-registration-toggle {
    display: inline-flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 4px;
}
.meeting-registration-toggle button {
    min-height: 38px;
    white-space: nowrap;
}
.meeting-registration-toggle-error {
    color: #b3261e;
    font-size: 11px;
    font-weight: 700;
    max-width: 220px;
    text-align: right;
}
.meeting-registration-state {
    border-radius: 999px;
    padding: 6px 10px;
    font-size: 10px;
    font-weight: 900;
    text-transform: uppercase;
}
.meeting-registration-state.open {
    background: #dcfce7;
    color: #166534;
}
.meeting-registration-state.closed {
    background: #e2e8f0;
    color: #475569;
}
.meeting-report-metrics {
    padding: 16px 18px;
    background: #f8faf9;
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    grid-gap: 10px;
    gap: 10px;
}
.meeting-report-metrics > div {
    border: 1px solid #e1e7e4;
    border-radius: 9px;
    padding: 12px;
    background: white;
    display: grid;
    grid-gap: 3px;
    gap: 3px;
}
.meeting-report-metrics strong {
    color: #123a2d;
    font-size: 24px;
}
.meeting-report-metrics span {
    color: #64748b;
    font-size: 10px;
    font-weight: 900;
    text-transform: uppercase;
}
.meeting-report-table-wrap {
    overflow-x: auto;
}
.meeting-report-table {
    width: 100%;
    min-width: 980px;
    border-collapse: collapse;
}
.meeting-report-table td,
.meeting-report-table th {
    padding: 12px 14px;
    border-top: 1px solid #edf1ef;
    text-align: left;
    font-size: 12px;
}
.meeting-report-table th {
    border-top: 0;
    background: #f8fafc;
    color: #64748b;
    font-size: 10px;
    text-transform: uppercase;
}
.meeting-report-table td strong {
    color: #17212c;
}
.event-availability-reports {
    margin: 0 0 22px;
    display: grid;
    grid-gap: 14px;
    gap: 14px;
}
.event-report-heading h3 {
    margin: 0 0 4px;
    color: var(--green);
}
.event-report-heading .subtext {
    margin: 0;
    color: var(--muted);
    font-size: 13px;
}
.event-report-card {
    overflow: hidden;
    border: 1px solid var(--line);
    border-radius: 12px;
    background: white;
}
.event-report-title {
    padding: 16px 18px;
    background: #062f22;
    color: white;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
}
.event-report-title h4 {
    margin: 0 0 4px;
    color: white;
    font-size: 17px;
}
.event-report-title p {
    margin: 0;
    color: rgba(255, 255, 255, 0.72);
    font-size: 12px;
}
.event-report-title-actions {
    display: flex;
    align-items: center;
    gap: 10px;
    flex: 0 0 auto;
}
.event-report-voting-state {
    border-radius: 999px;
    padding: 5px 9px;
    background: #f6cf6a;
    color: #3f2d00;
    font-size: 11px;
    font-weight: 900;
    text-transform: uppercase;
}
.event-report-metrics {
    padding: 14px 18px;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    grid-gap: 10px;
    gap: 10px;
    background: #fbfcfb;
    border-bottom: 1px solid var(--line);
}
.event-report-metric {
    border: 1px solid transparent;
    border-left: 4px solid #64748b;
    border-radius: 8px;
    padding: 10px 12px;
    background: white;
    display: grid;
    grid-gap: 3px;
    gap: 3px;
    text-decoration: none;
    transition:
        transform 0.15s ease,
        box-shadow 0.15s ease,
        border-color 0.15s ease;
}
.event-report-metric.available {
    border-left-color: #16a34a;
}
.event-report-metric.unavailable {
    border-left-color: #dc2626;
}
.event-report-metric.pending {
    border-left-color: #d97706;
}
.event-report-metric:hover {
    transform: translateY(-1px);
    box-shadow: 0 5px 14px rgba(15, 23, 42, 0.1);
}
.event-report-metric:focus-visible {
    outline: 3px solid #f6cf6a;
    outline-offset: 2px;
}
.event-report-metric.selected {
    border-color: #0f766e;
    box-shadow: 0 0 0 2px rgba(15, 118, 110, 0.15);
}
.event-report-metrics strong {
    color: #0f172a;
    font-size: 22px;
}
.event-report-metrics span {
    color: #64748b;
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
}
.event-report-list-heading {
    padding: 12px 18px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    background: #f8fafc;
    border-bottom: 1px solid var(--line);
}
.event-report-list-heading div {
    display: flex;
    align-items: baseline;
    gap: 10px;
}
.event-report-list-heading strong {
    color: #0f172a;
}
.event-report-list-heading span {
    color: #64748b;
    font-size: 12px;
    font-weight: 800;
}
.event-report-list-heading a {
    color: #0f766e;
    font-size: 12px;
    font-weight: 900;
    text-decoration: none;
}
.event-report-empty {
    margin: 0;
    padding: 22px 18px;
    color: #64748b;
}
.event-report-table-wrap {
    overflow-x: auto;
}
.event-report-table {
    width: 100%;
    min-width: 760px;
    border-collapse: collapse;
}
.event-report-table td,
.event-report-table th {
    padding: 11px 14px;
    border-top: 1px solid #eef1f4;
    text-align: left;
    font-size: 13px;
}
.event-report-table th {
    border-top: 0;
    background: #f8fafc;
    color: #64748b;
    font-size: 11px;
    text-transform: uppercase;
}
.event-report-status {
    display: inline-flex;
    border-radius: 999px;
    padding: 5px 9px;
    font-size: 11px;
    font-weight: 900;
}
.event-report-status.available {
    background: #dcfce7;
    color: #166534;
}
.event-report-status.unavailable {
    background: #fee2e2;
    color: #991b1b;
}
.event-report-status.pending {
    background: #fff7ed;
    color: #9a3412;
}
@media (max-width: 720px) {
    .event-invitation-overlay {
        padding: 0;
        background: white;
    }
    .event-invitation-modal {
        width: 100%;
        min-height: 100%;
        border-radius: 0;
        box-shadow: none;
    }
    .event-invitation-copy {
        padding-top: max(14px, env(safe-area-inset-top));
    }
    .event-invitation-modal form {
        padding-bottom: max(12px, env(safe-area-inset-bottom));
    }
    .partner-event-summary {
        grid-template-columns: 112px 1fr;
    }
    .partner-event-summary > img {
        max-height: 280px;
    }
    .partner-event-date {
        padding: 22px 10px;
    }
    .partner-event-date strong {
        font-size: 30px;
    }
    .partner-event-body {
        padding: 20px 17px 22px;
    }
    .partner-event-response {
        align-items: flex-start;
        flex-direction: column;
    }
    .event-companion-heading {
        flex-direction: column;
    }
    .event-add-actions {
        width: 100%;
        justify-content: stretch;
    }
    .event-add-actions button {
        flex: 1 1;
    }
    .event-guest-fields {
        grid-template-columns: 1fr;
    }
    .event-registration-submit {
        align-items: stretch;
        flex-direction: column;
    }
    .event-registration-submit > button {
        width: 100%;
    }
    .event-booking-tabs button {
        flex: 1 1;
        padding-inline: 8px;
    }
    .event-seat-view {
        padding: 16px;
    }
    .event-seat-card {
        align-items: flex-start;
    }
    .event-report-metrics {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .meeting-report-card > header {
        flex-direction: column;
    }
    .meeting-report-metrics {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}
.timeline-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-top: 6px;
    color: #064e3b;
    font-size: 12px;
    font-weight: 900;
    text-decoration: none;
}
.timeline-link:hover {
    text-decoration: underline;
}
.order-row-actions {
    display: grid;
    grid-gap: 6px;
    gap: 6px;
    align-items: start;
}
.timeline-page {
    padding: 24px;
    background: #f8fafc;
    min-height: 100vh;
}
.timeline-back {
    display: inline-flex;
    margin-bottom: 16px;
    color: #064e3b;
    font-weight: 900;
    text-decoration: none;
}
.timeline-back-button {
    padding: 0;
    border: 0;
    background: none;
    font: inherit;
    cursor: pointer;
}
.timeline-header {
    display: flex;
    justify-content: space-between;
    gap: 24px;
    padding: 24px;
    border-radius: 8px;
    background: #062f22;
    color: white;
}
.timeline-header h1 {
    color: white;
    margin: 8px 0;
}
.timeline-summary {
    display: grid;
    grid-template-columns: auto auto;
    grid-gap: 8px 18px;
    gap: 8px 18px;
    min-width: 260px;
    align-content: center;
}
.timeline-summary span {
    color: rgba(255, 255, 255, 0.72);
    font-weight: 800;
}
.timeline-summary strong {
    color: #f7d66b;
}
.timeline-section {
    margin-top: 18px;
    padding: 22px;
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    background: white;
}
.timeline-section h2 {
    margin: 0 0 16px;
    font-size: 28px;
}
.timeline-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    grid-gap: 12px;
    gap: 12px;
}
.timeline-card {
    display: grid;
    grid-gap: 10px;
    gap: 10px;
    padding: 16px;
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    background: #fbfaf7;
}
.timeline-card div {
    display: grid;
    grid-gap: 4px;
    gap: 4px;
}
.timeline-card span,
.timeline-event time {
    color: #64748b;
    font-size: 13px;
    font-weight: 800;
    text-transform: uppercase;
}
.timeline-card strong {
    color: #142033;
    overflow-wrap: anywhere;
}
.timeline-list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    grid-gap: 12px;
    gap: 12px;
}
.timeline-event {
    display: grid;
    grid-template-columns: 180px 1fr;
    grid-gap: 18px;
    gap: 18px;
    padding: 16px;
    border: 1px solid #e5e7eb;
    border-radius: 8px;
}
.timeline-event-title {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}
.timeline-event-title strong {
    color: #111827;
}
.timeline-event-title span {
    padding: 4px 8px;
    border-radius: 999px;
    background: #e7f8ef;
    color: #047857;
    font-size: 12px;
    font-weight: 900;
}
.timeline-event p {
    margin: 8px 0;
    color: #334155;
}
.timeline-event-ids {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}
.timeline-event-ids span {
    padding: 4px 8px;
    border-radius: 6px;
    background: #f8f4ec;
    color: #b9811f;
    font-size: 12px;
    font-weight: 900;
    overflow-wrap: anywhere;
}
.timeline-event pre {
    margin: 10px 0 0;
    padding: 12px;
    max-height: 260px;
    overflow: auto;
    border-radius: 8px;
    background: #0f172a;
    color: #e2e8f0;
    font-size: 12px;
    white-space: pre-wrap;
}
@media (max-width: 760px) {
    .timeline-page {
        padding: 12px;
    }
    .timeline-header {
        display: grid;
    }
    .timeline-summary {
        min-width: 0;
    }
    .timeline-event,
    .timeline-summary {
        grid-template-columns: 1fr;
    }
}
.recover-order-button {
    min-height: 32px;
    border: 0;
    border-radius: 8px;
    background: #dcfce7;
    color: #047857;
    font-size: 12px;
    font-weight: 900;
    cursor: pointer;
}
.recover-order-button:hover {
    background: #bbf7d0;
}
.recover-order-button:disabled {
    cursor: wait;
    opacity: 0.65;
}
.details-action-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 32px;
    padding: 0 10px;
    border-radius: 8px;
    background: #eaf2ff;
    color: #1d4ed8;
    font-size: 12px;
    font-weight: 900;
    text-decoration: none;
}
.details-action-link:hover {
    background: #dbeafe;
}
.payment-details-page {
    padding: 24px;
    background: #f8fafc;
    min-height: 100vh;
}
.payment-details-hero {
    display: flex;
    justify-content: space-between;
    gap: 24px;
    padding: 24px;
    border-radius: 8px;
    background: #062f22;
    color: white;
}
.payment-details-hero h1 {
    color: white;
    margin: 8px 0;
}
.payment-decision {
    display: grid;
    grid-gap: 6px;
    gap: 6px;
    min-width: 190px;
    align-content: center;
    justify-items: center;
    padding: 16px;
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.12);
}
.payment-decision span,
.payment-decision-card span {
    color: #64748b;
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
}
.payment-decision strong {
    color: #f7d66b;
    font-size: 26px;
}
.payment-decision-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-gap: 16px;
    gap: 16px;
    margin-top: 18px;
}
.payment-decision-card {
    padding: 18px;
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    background: white;
}
.payment-decision-card strong {
    display: block;
    margin-top: 6px;
    color: #111827;
    font-size: 22px;
}
.payment-decision-card p {
    margin: 10px 0 0;
    color: #475569;
}
.payment-decision-card.good {
    border-color: #86efac;
    background: #f0fdf4;
}
.payment-decision-card.warn {
    border-color: #facc15;
    background: #fefce8;
}
.payment-decision-card.bad {
    border-color: #fecaca;
    background: #fecaca;
}
.payment-detail-table {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-gap: 12px;
    gap: 12px;
}
.payment-detail-table div {
    display: grid;
    grid-gap: 4px;
    gap: 4px;
    padding: 12px;
    border-radius: 8px;
    background: #fbfaf7;
}
.payment-detail-table span {
    color: #64748b;
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
}
.payment-detail-table strong {
    color: #142033;
    overflow-wrap: anywhere;
}
.payment-guide-list {
    margin: 0 0 16px;
    padding-left: 20px;
    color: #334155;
}
.payment-guide-list li {
    margin: 8px 0;
}
.details-secondary-link {
    display: inline-flex;
    min-height: 36px;
    align-items: center;
    padding: 0 14px;
    border-radius: 8px;
    background: #064e3b;
    color: white;
    font-weight: 900;
    text-decoration: none;
}
@media (max-width: 760px) {
    .payment-details-page {
        padding: 12px;
    }
    .payment-decision-grid,
    .payment-detail-table,
    .payment-details-hero {
        grid-template-columns: 1fr;
        display: grid;
    }
}
.payouts-module .owner-earnings-toolbar {
    gap: 12px;
    align-items: flex-start;
}
.payouts-toolbar {
    display: grid;
    grid-template-columns: 130px 145px minmax(220px, 1fr) auto auto;
    grid-gap: 8px;
    gap: 8px;
    align-items: center;
    flex: 1 1 640px;
    max-width: 900px;
}
.payouts-toolbar input,
.payouts-toolbar select {
    width: 100%;
    min-height: 34px;
    height: 34px;
    border-radius: 7px;
    padding: 5px 9px;
    font-size: 0.88rem;
}
.payout-export-button,
.payout-toolbar-button {
    min-height: 34px;
    height: 34px;
    padding: 6px 12px;
    border-radius: 7px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    white-space: nowrap;
}
.payouts-table-wrap table {
    min-width: 1040px;
    table-layout: fixed;
}
.payouts-table-wrap td,
.payouts-table-wrap th {
    padding: 7px 10px;
    font-size: 0.9rem;
    line-height: 1.18;
    vertical-align: middle;
}
.payouts-table-wrap th {
    font-size: 0.78rem;
    letter-spacing: 0;
    color: #5f6878;
}
.payouts-table-wrap td:first-child,
.payouts-table-wrap th:first-child {
    width: 42px;
    text-align: center;
}
.payouts-table-wrap td:nth-child(2),
.payouts-table-wrap th:nth-child(2) {
    width: 250px;
    text-align: left;
}
.payouts-table-wrap td:nth-child(3),
.payouts-table-wrap th:nth-child(3) {
    width: 70px;
    text-align: center;
}
.payouts-table-wrap td:nth-child(4),
.payouts-table-wrap th:nth-child(4) {
    width: 82px;
    text-align: center;
}
.payouts-table-wrap td:nth-child(5),
.payouts-table-wrap td:nth-child(6),
.payouts-table-wrap td:nth-child(7),
.payouts-table-wrap th:nth-child(5),
.payouts-table-wrap th:nth-child(6),
.payouts-table-wrap th:nth-child(7) {
    width: 126px;
    text-align: right;
}
.payouts-table-wrap td:nth-child(8),
.payouts-table-wrap th:nth-child(8) {
    width: 150px;
    text-align: right;
}
.payouts-table-wrap td:nth-child(9),
.payouts-table-wrap th:nth-child(9) {
    width: 86px;
    text-align: center;
}
.payouts-table-wrap td:nth-child(10),
.payouts-table-wrap th:nth-child(10) {
    width: 112px;
    text-align: center;
}
.payouts-table-wrap .owner-earning-amount {
    font-size: 0.98rem;
    font-weight: 800;
    white-space: nowrap;
}
.payout-row-button {
    min-height: 30px;
    height: 30px;
    padding: 4px 10px;
    border-radius: 7px;
    font-size: 0.86rem;
    text-decoration: none;
}
.payout-paid-control,
.payout-row-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    white-space: nowrap;
}
.payout-paid-control {
    gap: 7px;
}
.payout-paid-control input {
    width: 15px;
    height: 15px;
}
.payouts-table-wrap details summary strong {
    font-size: 0.92rem;
}
.payouts-table-wrap details summary span {
    font-size: 0.84rem;
}
body:has(.payouts-table-wrap .payout-row-details[open]) {
    overflow: hidden;
}
.payouts-table-wrap .payout-row-details {
    position: relative;
}
.payouts-table-wrap .payout-row-details[open] {
    z-index: 1000;
}
.payouts-table-wrap .payout-row-details[open]:before {
    content: "";
    position: fixed;
    inset: 0;
    z-index: 1000;
    background: rgba(15, 23, 42, 0.3);
    pointer-events: none;
}
.payouts-table-wrap .payout-row-details[open] > summary {
    position: fixed;
    top: 16px;
    left: 50%;
    z-index: 1002;
    width: min(920px, calc(100vw - 32px));
    min-height: 60px;
    padding: 11px 92px 11px 16px;
    transform: translateX(-50%);
    border: 1px solid #e5e7eb;
    border-bottom: 0;
    border-radius: 10px 10px 0 0;
    background: #fff;
    box-shadow: 0 18px 40px rgba(15, 23, 42, 0.2);
}
.payouts-table-wrap .payout-row-details[open] > summary:after {
    content: "Close ×";
    position: absolute;
    top: 50%;
    right: 16px;
    transform: translateY(-50%);
    color: #8a651f;
    font-size: 0.86rem;
    font-weight: 900;
    white-space: nowrap;
}
.payout-details-panel {
    position: fixed;
    top: 76px;
    left: 50%;
    z-index: 1001;
    width: min(920px, calc(100vw - 32px));
    max-height: calc(100vh - 92px);
    padding: 14px;
    overflow-y: auto;
    overscroll-behavior: contain;
    transform: translateX(-50%);
    border: 1px solid #e5e7eb;
    border-radius: 0 0 10px 10px;
    background: #fff;
    box-shadow: 0 18px 40px rgba(15, 23, 42, 0.2);
}
.payout-details-metrics {
    grid-template-columns: repeat(4, minmax(132px, 1fr));
    gap: 10px;
    margin-bottom: 12px;
}
.payout-details-metrics .metric {
    min-height: 88px;
    padding: 12px 14px;
}
.payout-details-metrics .metric strong {
    font-size: 1.08rem;
    line-height: 1.15;
    white-space: nowrap;
}
.one-view-metrics {
    grid-template-columns: repeat(5, minmax(140px, 1fr));
}
.one-view-metrics .metric {
    min-height: 76px;
    padding: 12px 14px;
}
.one-view-metrics .metric strong {
    font-size: 1rem;
}
.payout-details-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(150px, 1fr));
    grid-gap: 10px;
    gap: 10px;
    margin-bottom: 12px;
}
.payout-details-footer {
    position: -webkit-sticky;
    position: sticky;
    bottom: -14px;
    z-index: 5;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: flex-start;
    margin: 12px -14px -14px;
    padding: 12px 14px 14px;
    border-top: 1px solid #e5e7eb;
    background: rgba(255, 255, 255, 0.98);
    box-shadow: 0 -8px 20px rgba(15, 23, 42, 0.06);
}
.manual-payout-toggle,
.payout-details-footer > .payout-detail-action {
    flex: 1 1 140px;
    min-width: 0;
}
.payout-details-footer > .muted {
    flex: 0 0 auto;
}
.manual-payout-toggle[open] {
    flex-basis: 100%;
}
.manual-payout-toggle > summary {
    width: 100%;
    cursor: pointer;
    list-style: none;
}
.manual-payout-toggle > summary::-webkit-details-marker {
    display: none;
}
.manual-payout-toggle > summary:after {
    content: "+";
    margin-left: 8px;
}
.manual-payout-toggle[open] > summary:after {
    content: "−";
}
.manual-payout-hide,
.manual-payout-toggle[open] .manual-payout-show {
    display: none;
}
.manual-payout-toggle[open] .manual-payout-hide {
    display: inline;
}
.payout-details-form {
    display: grid;
    grid-template-columns: minmax(130px, 160px) minmax(180px, 1fr);
    grid-gap: 8px;
    gap: 8px;
    align-items: end;
    margin: 10px 0 0;
    max-height: 45vh;
    overflow-y: auto;
}
.payout-details-form .partner-field.wide {
    grid-column: 1/-1;
}
.payout-details-form .partner-field {
    min-width: 0;
}
.payout-details-form select {
    width: 100%;
    min-height: 43px;
    border: 1px solid #d9e1ec;
    border-radius: 8px;
    padding: 9px 10px;
    background: #fff;
    color: #17212c;
    font: inherit;
}
.payout-detail-action {
    min-height: 43px;
    height: 43px;
    padding: 9px 14px;
    border-radius: 8px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    text-decoration: none;
    line-height: 1.05;
}
@media (max-width: 520px) {
    .payout-details-form {
        grid-template-columns: 1fr;
    }
}
@media (max-width: 920px) {
    .payouts-toolbar {
        grid-template-columns: 1fr 1fr;
        max-width: none;
    }
    .payouts-toolbar input[name="payoutSearch"] {
        grid-column: 1/-1;
    }
}
.partner-payout-card {
    margin-bottom: 0;
}
@media (max-width: 760px) {
    .partner-content:has(.partner-payout-card) {
        padding-bottom: 12px;
    }
    .partner-payout-metrics {
        margin-bottom: 14px;
    }
    .partner-payout-card h3 {
        padding: 14px 16px;
        font-size: 21px;
    }
}
@media (max-width: 760px) {
    .partner-portal:has(.partner-payout-card) {
        min-height: 0;
    }
}
.payout-bank-panel {
    grid-column: span 2;
    min-height: 126px;
    border: 1px solid var(--line);
    border-left: 5px solid var(--gold);
    border-radius: 12px;
    padding: 18px 22px;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
}
.payout-bank-panel strong {
    display: block;
    color: var(--green);
    font-size: 24px;
    font-weight: 900;
}
.payout-bank-panel span {
    display: block;
    margin-top: 5px;
    color: #64748b;
    font-size: 14px;
    font-weight: 800;
}
.payout-bank-actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 10px;
}
.payout-bank-button {
    min-height: 38px;
    border: 1px solid #d9e1ec;
    border-radius: 8px;
    padding: 8px 14px;
    background: #f8fafc;
    color: #334155;
    font-weight: 900;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    white-space: nowrap;
}
.payout-bank-button.primary {
    border-color: var(--gold);
    background: var(--gold);
    color: #fff;
}
.payout-bank-button:disabled {
    opacity: 0.55;
    cursor: not-allowed;
}
@media (max-width: 980px) {
    .payout-bank-panel {
        grid-column: 1/-1;
    }
}
@media (max-width: 640px) {
    .payout-bank-panel {
        align-items: stretch;
        flex-direction: column;
        padding: 16px;
    }
    .payout-bank-actions {
        justify-content: stretch;
    }
    .payout-bank-button {
        flex: 1 1 140px;
    }
}
.payout-bank-upload {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 10px;
}
.payout-bank-type {
    border: 1px solid #d9e1ec;
    border-radius: 8px;
    background: #fff;
    font: inherit;
}
.payout-bank-file,
.payout-bank-type {
    min-height: 38px;
    padding: 8px 10px;
    color: #334155;
    font-size: 13px;
    font-weight: 900;
}
.payout-bank-file {
    max-width: 150px;
    border: 1px dashed #cbd5e1;
    border-radius: 8px;
    background: #f8fafc;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    position: relative;
}
.payout-bank-file input {
    position: absolute;
    inset: 0;
    opacity: 0;
    cursor: pointer;
}
.payout-bank-comment {
    min-height: 38px;
    width: min(280px, 100%);
    border: 1px solid #d9e1ec;
    border-radius: 8px;
    padding: 8px 10px;
    background: #fff;
    color: #334155;
    font: inherit;
    font-size: 13px;
}
@media (max-width: 640px) {
    .payout-bank-upload {
        width: 100%;
        justify-content: stretch;
    }
    .payout-bank-type {
        flex: 1 1 100px;
    }
    .payout-bank-file {
        flex: 1 1 140px;
        max-width: none;
    }
    .payout-bank-comment {
        flex: 1 1 100%;
        width: 100%;
    }
}
.payout-history-panel {
    max-height: 260px;
    margin: 12px 0;
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    background: #fbfcfe;
    overflow: auto;
}
.payout-history-panel h4 {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    z-index: 3;
    margin: 0;
    padding: 10px 12px;
    border-bottom: 1px solid #e5e7eb;
    color: #17212c;
    background: #fbfcfe;
    font-family: inherit;
    font-size: 14px;
    font-weight: 900;
}
.payout-history-panel table {
    width: 100%;
    min-width: 640px;
    border-collapse: collapse;
    font-size: 12px;
}
.payout-history-panel td,
.payout-history-panel th {
    padding: 8px 10px;
    border-bottom: 1px solid #eef2f7;
    text-align: left;
    vertical-align: top;
}
.payout-history-panel th {
    position: -webkit-sticky;
    position: sticky;
    top: 39px;
    z-index: 2;
    color: #64748b;
    background: #f8fafc;
    font-size: 11px;
    text-transform: uppercase;
}
.payout-history-panel td:first-child,
.payout-history-panel td:nth-child(2) {
    white-space: nowrap;
}
.payout-history-panel td:nth-child(3) {
    font-weight: 900;
    white-space: nowrap;
}
.payout-history-panel p {
    margin: 0;
    padding: 10px 12px;
    color: #64748b;
    font-size: 12px;
    font-weight: 800;
}
.payout-advance-warning {
    margin: 12px 0;
    padding: 14px 16px;
    border: 2px solid #b7791f;
    border-radius: 8px;
    background: #fff8e6;
    color: #5f410d;
}
.payout-advance-warning p {
    margin: 0 0 10px;
}
.payout-advance-warning .payout-warning-title {
    color: #8a5b12;
    font-size: 1.02rem;
    font-weight: 900;
}
.payout-advance-facts {
    display: grid;
    grid-template-columns: repeat(3, minmax(150px, 1fr));
    grid-gap: 8px;
    gap: 8px;
    margin: 10px 0;
}
.payout-advance-facts span {
    padding: 10px;
    border: 1px solid #ead5a5;
    border-radius: 7px;
    background: #fff;
    font-size: 12px;
    font-weight: 800;
}
.payout-advance-facts strong {
    display: block;
    margin-top: 3px;
    color: #17212c;
    font-size: 15px;
}
.payout-warning-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    align-items: center;
}
.payout-warning-actions form {
    margin: 0;
}
.payout-warning-actions button {
    border: 0;
    background: #9a6700;
    color: #fff;
}
@media (max-width: 700px) {
    .payout-advance-facts {
        grid-template-columns: 1fr;
    }
}
.partner-payment-history-card {
    margin-top: 16px;
}
.partner-payment-history-wrap {
    overflow-x: auto;
}
.partner-payment-history-table {
    width: 100%;
    min-width: 560px;
    border-collapse: collapse;
    font-size: 13px;
}
.partner-payment-history-table td,
.partner-payment-history-table th {
    padding: 11px 14px;
    border-bottom: 1px solid #eef2f7;
    text-align: left;
    vertical-align: top;
}
.partner-payment-history-table th {
    color: #64748b;
    font-size: 11px;
    font-weight: 900;
    text-transform: uppercase;
}
.partner-payment-history-table td:nth-child(3) {
    font-weight: 900;
    white-space: nowrap;
}
@media (max-width: 760px) {
    .partner-payment-history-card {
        margin-top: 12px;
    }
}
.certificate-progress-card {
    margin: 12px 0;
    padding: 12px;
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    background: #fffdf8;
}
.certificate-progress-card h3,
.certificate-progress-card h4 {
    margin: 0 0 10px;
    font-size: 1rem;
    color: #111827;
}
.certificate-progress-summary {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    grid-gap: 8px;
    gap: 8px;
    margin-bottom: 10px;
}
.certificate-progress-summary div {
    min-width: 0;
    padding: 10px;
    border: 1px solid #ead8aa;
    border-radius: 8px;
    background: #fff;
}
.certificate-progress-summary span,
.certificate-tile-heading span {
    display: block;
    color: #64748b;
    font-size: 0.72rem;
    font-weight: 800;
    text-transform: uppercase;
}
.certificate-progress-summary strong {
    display: inline-block;
    margin-right: 8px;
    color: #111827;
    font-size: 1.15rem;
}
.certificate-progress-summary em {
    color: #b45309;
    font-style: normal;
    font-weight: 800;
}
.certificate-tile-section {
    margin-top: 10px;
}
.certificate-history-toggle summary,
.certificate-tile-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin-bottom: 8px;
}
.certificate-history-toggle summary strong,
.certificate-tile-heading strong {
    color: #92400e;
    font-size: 0.86rem;
}
.certificate-tile-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(96px, 1fr));
    grid-gap: 8px;
    gap: 8px;
}
.certificate-memento {
    min-height: 72px;
    padding: 10px 8px;
    border: 1px solid #b8872f;
    border-radius: 8px;
    background: linear-gradient(160deg, #fff8dc, #e6b64d 45%, #b77a1f);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.65),
        0 6px 14px rgba(146, 64, 14, 0.16);
    color: #2b1b06;
    text-align: center;
}
.certificate-memento-link {
    display: block;
    text-decoration: none;
    transition:
        transform 0.15s ease,
        box-shadow 0.15s ease;
}
.certificate-memento-link:hover {
    transform: translateY(-1px);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.65),
        0 10px 18px rgba(146, 64, 14, 0.22);
}
.certificate-inline-link {
    color: #92400e;
    font-weight: 900;
    text-decoration: underline;
    text-underline-offset: 3px;
}
.certificate-memento span {
    display: block;
    overflow: hidden;
    color: #3f2b08;
    font-size: 0.72rem;
    font-weight: 900;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.certificate-memento strong {
    display: block;
    margin-top: 8px;
    font-size: 0.98rem;
    line-height: 1.05;
}
.certificate-history-toggle {
    margin-top: 10px;
}
.certificate-history-toggle summary {
    min-height: 38px;
    padding: 8px 10px;
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    background: #f8fafc;
    cursor: pointer;
    list-style: none;
}
.certificate-history-toggle summary::-webkit-details-marker {
    display: none;
}
.certificate-history-toggle summary:before {
    content: "+";
    display: inline-flex;
    width: 22px;
    height: 22px;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    background: #c9a24f;
    color: #fff;
    font-weight: 900;
}
.certificate-history-toggle[open] summary:before {
    content: "-";
}
.certificate-progress-empty {
    margin: 0;
    padding: 10px;
    color: #64748b;
    font-size: 0.9rem;
}
@media (max-width: 720px) {
    .certificate-progress-summary {
        grid-template-columns: 1fr;
    }
    .certificate-tile-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}
.timeline-filters {
    display: grid;
    grid-template-columns: minmax(260px, 1fr) 150px 150px 150px auto auto;
    grid-gap: 10px;
    gap: 10px;
    align-items: center;
}
.timeline-filters input,
.timeline-filters select {
    min-height: 42px;
    border: 1px solid #dbe2ea;
    border-radius: 8px;
    padding: 8px 10px;
    background: white;
    color: #0f172a;
}
.system-timeline-list > li {
    list-style: none;
}
.system-timeline-event {
    display: block;
    padding: 0;
    overflow: hidden;
}
.system-timeline-event > summary {
    display: grid;
    grid-template-columns: 180px 1fr;
    grid-gap: 18px;
    gap: 18px;
    padding: 16px;
    cursor: pointer;
    list-style: none;
}
.system-timeline-event > summary::-webkit-details-marker {
    display: none;
}
.system-timeline-event > summary:before {
    content: "+";
    width: 26px;
    height: 26px;
    display: inline-grid;
    place-items: center;
    border-radius: 50%;
    background: #c5a059;
    color: white;
    font-weight: 900;
    grid-column: 1;
    grid-row: 1;
    transform: translateY(28px);
}
.system-timeline-event[open] > summary:before {
    content: "-";
}
.system-timeline-event > summary time {
    margin-left: 38px;
}
.system-timeline-details {
    border-top: 1px solid #e5e7eb;
    padding: 0 16px 16px 236px;
}
.system-timeline-details p {
    color: #64748b;
}
.timeline-event-ids a {
    padding: 4px 8px;
    border-radius: 6px;
    background: #edf7f1;
    color: #047857;
    font-size: 12px;
    font-weight: 900;
    overflow-wrap: anywhere;
}
.category-payment {
    border-left: 4px solid #2563eb;
}
.category-admin {
    border-left: 4px solid #f97316;
}
.category-ledger {
    border-left: 4px solid #047857;
}
.category-certificate {
    border-left: 4px solid #c5a059;
}
.category-payout {
    border-left: 4px solid #0f766e;
}
.category-order {
    border-left: 4px solid #111827;
}
@media (max-width: 980px) {
    .timeline-filters {
        grid-template-columns: 1fr 1fr;
    }
    .system-timeline-event > summary {
        grid-template-columns: 1fr;
    }
    .system-timeline-event > summary:before {
        grid-column: 1;
        transform: none;
    }
    .system-timeline-event > summary time {
        margin-left: 38px;
    }
    .system-timeline-details {
        padding: 0 16px 16px;
    }
}
.dispatch-print-menu {
    position: relative;
    display: inline-flex;
}
.dispatch-print-menu button.dispatch-page-link {
    border: 0;
}
.dispatch-print-menu button.dispatch-page-link:disabled {
    opacity: 0.45;
    cursor: not-allowed;
}
.dispatch-print-dialog {
    position: fixed;
    top: 84px;
    right: 24px;
    z-index: 30;
    display: grid;
    grid-gap: 10px;
    gap: 10px;
    width: min(320px, 90vw);
    max-height: calc(100vh - 108px);
    overflow-y: auto;
    padding: 14px;
    border: 1px solid #d8dee8;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 18px 45px rgba(15, 23, 42, 0.18);
}
.dispatch-print-dialog-title {
    color: #142033;
    font-weight: 900;
}
.dispatch-print-dialog-actions {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    grid-gap: 8px;
    gap: 8px;
}
.dispatch-print-dialog-actions.range-actions {
    grid-template-columns: 1fr 1fr;
}
.dispatch-print-dialog-actions .dispatch-page-link {
    min-width: 0;
    padding-inline: 8px;
    border: 0;
    font-size: 13px;
}
.dispatch-print-dialog-actions button.dispatch-page-link.active {
    background: #142033;
}
.dispatch-range-fields {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 8px;
    gap: 8px;
}
.dispatch-range-fields label {
    display: grid;
    grid-gap: 4px;
    gap: 4px;
    color: #536176;
    font-size: 11px;
    font-weight: 900;
    text-transform: uppercase;
}
.dispatch-range-fields input {
    width: 100%;
    min-height: 38px;
    border: 1px solid #d8dee8;
    border-radius: 8px;
    padding: 6px 8px;
    color: #061e13;
    font-weight: 800;
}
@media (max-width: 720px) {
    .dispatch-print-dialog {
        right: auto;
        left: 0;
    }
    .dispatch-print-dialog-actions {
        grid-template-columns: 1fr;
    }
}
.dispatch-tracking-import {
    position: relative;
    display: inline-block;
}
.dispatch-tracking-import-help {
    margin: 0;
    font-size: 12px;
    color: #536176;
    line-height: 1.5;
}
.dispatch-print-error {
    color: #9c0006;
    font-weight: 700;
}
.dispatch-tracking-import-status {
    margin: 0;
    font-size: 12px;
    color: #1d4ed8;
    font-weight: 700;
}
.dispatch-tracking-import-error {
    margin: 0;
    font-size: 12px;
    color: #b91c1c;
    font-weight: 700;
}
.dispatch-tracking-import-warning {
    margin: 0;
    font-size: 12px;
    color: #92400e;
    font-weight: 700;
}
.dispatch-tracking-import-result {
    display: grid;
    grid-gap: 6px;
    gap: 6px;
    padding: 8px;
    border-radius: 8px;
    background: #f8fafc;
}
.dispatch-tracking-import-result p {
    margin: 0;
    font-size: 13px;
}
.custom-print-bills-input {
    width: 100%;
    box-sizing: border-box;
    min-height: 64px;
    border: 1px solid #d8dee8;
    border-radius: 8px;
    padding: 8px 10px;
    color: #061e13;
    font-weight: 700;
    font-family: inherit;
    resize: vertical;
}
.delete-cancelled-order-button {
    min-height: 32px;
    border: 0;
    border-radius: 8px;
    background: #fee2e2;
    color: #991b1b;
    font-size: 12px;
    font-weight: 900;
    cursor: pointer;
}
.delete-cancelled-order-button:hover {
    background: #fecaca;
}
.delete-cancelled-order-button:disabled {
    cursor: wait;
    opacity: 0.65;
}
.public-invoice-page {
    min-height: 100vh;
    background: #f7f8f6;
    color: #10231c;
    padding: 32px 16px;
}
.public-invoice-shell {
    max-width: 860px;
    margin: 0 auto;
    background: #fff;
    border: 1px solid #dfe5df;
    border-radius: 8px;
    padding: 28px;
    box-shadow: 0 16px 40px rgba(20, 35, 28, 0.08);
}
.public-invoice-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 20px;
    border-bottom: 2px solid #10231c;
    padding-bottom: 18px;
}
.public-invoice-kicker {
    margin: 0 0 6px;
    color: #a17d2c;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0;
}
.public-invoice-header h1 {
    margin: 0;
    font-size: 28px;
    line-height: 1.2;
}
.public-invoice-header p {
    margin: 6px 0 0;
}
.public-invoice-status {
    border: 1px solid #41b870;
    color: #0a7a3b;
    background: #e9fff1;
    border-radius: 999px;
    padding: 8px 14px;
    font-weight: 800;
}
.public-invoice-meta {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    grid-gap: 12px;
    gap: 12px;
    margin: 22px 0;
}
.public-invoice-meta div,
.public-invoice-section,
.public-invoice-totals {
    border: 1px solid #dfe5df;
    border-radius: 8px;
    padding: 14px;
}
.public-invoice-meta span,
.public-invoice-totals span {
    display: block;
    color: #607168;
    font-size: 13px;
    margin-bottom: 4px;
}
.public-invoice-meta strong,
.public-invoice-totals strong {
    font-size: 16px;
}
.public-invoice-section {
    margin-top: 14px;
}
.public-invoice-section h2 {
    margin: 0 0 10px;
    font-size: 18px;
}
.public-invoice-section p {
    margin: 4px 0;
}
.public-invoice-item-row,
.public-invoice-totals div {
    display: flex;
    justify-content: space-between;
    gap: 16px;
}
.public-invoice-totals {
    margin-top: 14px;
    display: grid;
    grid-gap: 10px;
    gap: 10px;
}
.public-invoice-grand {
    border-top: 1px solid #dfe5df;
    padding-top: 10px;
}
.public-invoice-grand strong {
    font-size: 22px;
}
@media (max-width: 720px) {
    .public-invoice-shell {
        padding: 18px;
    }
    .public-invoice-header {
        display: block;
    }
    .public-invoice-status {
        display: inline-block;
        margin-top: 14px;
    }
    .public-invoice-meta {
        grid-template-columns: 1fr 1fr;
    }
}
.recover-order-menu {
    position: relative;
    display: inline-flex;
}
.recover-order-popover {
    position: absolute;
    right: 0;
    top: calc(100% + 6px);
    z-index: 20;
    display: grid;
    grid-gap: 6px;
    gap: 6px;
    width: 170px;
    padding: 8px;
    border: 1px solid #d8dee8;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 12px 30px rgba(15, 23, 42, 0.18);
}
.recover-order-popover button {
    min-height: 30px;
    border: 0;
    border-radius: 6px;
    background: #f3f6fb;
    color: #142033;
    font-size: 12px;
    font-weight: 900;
    cursor: pointer;
}
.recover-order-popover button:hover {
    background: #e6edf8;
}
.public-bill-page {
    min-height: 100vh;
    background: #f4f5f3;
    padding: 18px 8px;
    color: #000;
}
.public-bill-sheet {
    width: min(100%, 980px);
    margin: 0 auto;
    background: #fff;
    border: 2px solid #111;
    font-family: Arial, Helvetica, sans-serif;
}
.public-bill-top-strip {
    display: grid;
    grid-template-columns: 1fr 0.45fr 1fr;
    border-bottom: 2px solid #111;
    min-height: 48px;
    align-items: center;
    text-align: center;
    font-size: 16px;
}
.public-bill-top-strip > * {
    height: 100%;
    display: grid;
    place-items: center;
}
.public-bill-top-strip > * + * {
    border-left: 2px solid #111;
}
.public-bill-brand {
    text-align: center;
    padding: 8px 14px 18px;
}
.public-bill-brand h1 {
    margin: 0;
    color: #001a13;
    font-family:
        Georgia,
        Times New Roman,
        serif;
    font-size: 34px;
    line-height: 1.12;
    letter-spacing: 0;
}
.public-bill-brand p {
    margin: 8px 0 0;
    font-weight: 800;
    font-size: 15px;
}
.public-bill-info-row {
    display: grid;
    grid-template-columns: 1fr 290px;
    grid-gap: 56px;
    gap: 56px;
    padding: 8px 22px 14px;
    align-items: start;
}
.public-bill-customer-box {
    border: 2px solid #111;
    padding: 16px 18px;
    min-height: 190px;
    font-size: 18px;
    font-weight: 800;
    line-height: 1.28;
}
.public-bill-customer-box p {
    margin: 0 0 12px;
}
.public-bill-side-boxes {
    display: grid;
    grid-gap: 28px;
    gap: 28px;
    padding-top: 18px;
    text-align: center;
    font-size: 16px;
}
.public-bill-side-boxes p {
    margin: 8px 0 0;
}
.public-bill-box {
    border: 2px solid #111;
    min-height: 58px;
    display: grid;
    place-items: center;
    font-size: 18px;
}
.public-bill-items {
    border-collapse: collapse;
    border-top: 2px solid #111;
    font-size: 12px;
}
.public-bill-items td,
.public-bill-items th {
    border-right: 1px solid #111;
    border-bottom: 1px solid #111;
    padding: 10px 8px;
    text-align: center;
    vertical-align: middle;
}
.public-bill-items td:last-child,
.public-bill-items th:last-child {
    border-right: 0;
}
.public-bill-items th {
    font-weight: 900;
}
.public-bill-items td:nth-child(2) {
    text-align: left;
    font-weight: 900;
}
.public-bill-items td:nth-child(2),
.public-bill-items th:nth-child(2) {
    width: 34%;
}
.public-bill-items td:nth-child(3),
.public-bill-items th:nth-child(3) {
    width: 12%;
}
.public-bill-items td:nth-child(4),
.public-bill-items th:nth-child(4) {
    width: 11%;
}
.public-bill-items td:nth-child(5),
.public-bill-items th:nth-child(5) {
    width: 10%;
}
.public-bill-items td:nth-child(6),
.public-bill-items th:nth-child(6) {
    width: 8%;
}
.public-bill-total-area {
    display: grid;
    grid-template-columns: 1.45fr 1fr;
    min-height: 184px;
    border-bottom: 2px solid #111;
}
.public-bill-note {
    display: flex;
    align-items: flex-end;
    padding: 0 0 12px 18px;
    border-right: 1px solid #111;
    font-size: 13px;
}
.public-bill-total-grid {
    display: grid;
    grid-template-columns: 1fr 48px 100px;
    align-content: start;
    grid-gap: 8px 8px;
    gap: 8px 8px;
    padding: 8px 10px;
    font-size: 14px;
}
.public-bill-total-grid span {
    font-weight: 800;
}
.public-bill-total-grid b,
.public-bill-total-grid strong {
    text-align: right;
}
.public-bill-footer {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    min-height: 62px;
    padding: 12px 20px;
    font-size: 13px;
}
.public-bill-footer div {
    display: grid;
    grid-gap: 4px;
    gap: 4px;
}
.public-bill-footer b:last-child {
    padding-right: 40px;
}
@media (max-width: 720px) {
    .public-bill-page {
        padding: 0;
        background: #fff;
    }
    .public-bill-sheet {
        width: 100%;
        border-width: 1px;
    }
    .public-bill-top-strip {
        grid-template-columns: 1fr;
        font-size: 12px;
        min-height: 0;
    }
    .public-bill-top-strip > * {
        min-height: 30px;
    }
    .public-bill-top-strip > * + * {
        border-left: 0;
        border-top: 1px solid #111;
    }
    .public-bill-brand {
        padding: 8px;
    }
    .public-bill-brand h1 {
        font-size: 22px;
    }
    .public-bill-brand p {
        font-size: 11px;
    }
    .public-bill-info-row {
        grid-template-columns: 1fr;
        gap: 8px;
        padding: 8px;
    }
    .public-bill-customer-box {
        min-height: 0;
        font-size: 13px;
        padding: 10px;
    }
    .public-bill-customer-box p {
        margin-bottom: 7px;
    }
    .public-bill-side-boxes {
        grid-template-columns: 1fr 1fr;
        gap: 8px;
        padding-top: 0;
        font-size: 12px;
    }
    .public-bill-side-boxes p {
        grid-column: 1/-1;
    }
    .public-bill-box {
        min-height: 42px;
        font-size: 13px;
    }
    .public-bill-items {
        font-size: 9px;
    }
    .public-bill-items td,
    .public-bill-items th {
        padding: 6px 3px;
    }
    .public-bill-total-area {
        grid-template-columns: 1fr;
        min-height: 0;
    }
    .public-bill-note {
        border-right: 0;
        border-bottom: 1px solid #111;
        padding: 10px 8px;
        font-size: 10px;
    }
    .public-bill-total-grid {
        grid-template-columns: 1fr 34px 80px;
        font-size: 11px;
    }
    .public-bill-footer {
        min-height: 44px;
        padding: 8px;
        font-size: 10px;
    }
    .public-bill-footer b:last-child {
        padding-right: 0;
    }
}
.label-print-sheet {
    display: grid;
    grid-gap: 6mm;
    gap: 6mm;
    justify-content: start;
    align-content: start;
    padding: 8mm;
    background: #fff;
}
.label-jpeg-image {
    display: block;
    width: 43mm;
    height: 70mm;
    object-fit: contain;
    background: #fff;
    break-inside: avoid;
    page-break-inside: avoid;
}
@media print {
    .label-print-page {
        background: #fff;
        padding: 0;
    }
    .label-print-page .invoice-screen-actions,
    .label-print-page .print-range-exclusion-notice {
        display: none !important;
    }
    .label-print-sheet {
        padding: 0;
        gap: 0;
    }
    .label-jpeg-image {
        width: 43mm;
        height: 70mm;
        margin: 0;
    }
}
.sheet-print-page {
    background: #f1f5f9;
    padding: 24px 0;
}
.a4-sheet {
    width: 297mm;
    height: 210mm;
    margin: 0 auto 12mm;
    padding: 5mm;
    display: grid;
    grid-template-columns: repeat(6, 48mm);
    grid-template-rows: repeat(2, 100mm);
    justify-content: center;
    align-content: center;
    background: #fff;
    box-shadow: 0 12px 30px rgba(15, 23, 42, 0.12);
}
.a4-sheet,
.a4-sheet .label-jpeg-image {
    break-inside: avoid;
    page-break-inside: avoid;
}
@media print {
    .sheet-print-page {
        background: #fff;
        padding: 0;
    }
    .sheet-print-page .invoice-screen-actions,
    .sheet-print-page .print-range-exclusion-notice {
        display: none !important;
    }
    .a4-sheet {
        width: 297mm;
        height: 210mm;
        margin: 0;
        padding: 0;
        box-shadow: none;
    }
}
.lotus-st12-print-page {
    min-height: 100vh;
    background: #f1f5f9;
    padding: 24px 0;
}
.lotus-st12-calibration-note {
    width: min(92vw, 760px);
    margin: 0 auto 18px;
    padding: 14px 18px;
    display: grid;
    grid-gap: 4px;
    gap: 4px;
    border: 1px solid #cbd5e1;
    border-radius: 10px;
    background: #fff;
    color: #0f172a;
    box-shadow: 0 8px 20px rgba(15, 23, 42, 0.08);
}
.lotus-st12-calibration-note span {
    color: #475569;
}
.lotus-st12-sheet {
    box-sizing: border-box;
    width: 100mm;
    height: 50mm;
    margin: 0 auto 12mm;
    padding: 0;
    display: block;
    background: #fff;
    box-shadow: 0 12px 30px rgba(15, 23, 42, 0.12);
    break-inside: avoid;
    page-break-inside: avoid;
}
.lotus-st12-calibration-label {
    box-sizing: border-box;
    position: relative;
    width: 100mm;
    height: 50mm;
    display: grid;
    place-content: center;
    grid-gap: 1.5mm;
    gap: 1.5mm;
    border: 0.2mm solid #111;
    color: #111;
    text-align: center;
    font-family: Arial, Helvetica, sans-serif;
}
.lotus-st12-calibration-label:after,
.lotus-st12-calibration-label:before {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    background: #111;
    transform: translate(-50%, -50%);
}
.lotus-st12-calibration-label:before {
    width: 10mm;
    height: 0.2mm;
}
.lotus-st12-calibration-label:after {
    width: 0.2mm;
    height: 10mm;
}
.lotus-st12-calibration-label span {
    font-size: 5mm;
    font-weight: 800;
    line-height: 1;
}
.lotus-st12-calibration-label small {
    font-size: 2.5mm;
    font-weight: 700;
}
@media print {
    .lotus-st12-print-page {
        min-height: 0;
        background: #fff;
        padding: 0;
    }
    .lotus-st12-calibration-note,
    .lotus-st12-print-page .invoice-screen-actions {
        display: none !important;
    }
    .lotus-st12-sheet {
        width: 97mm;
        height: 48.5mm;
        margin: 0 0 0 1.5mm;
        box-shadow: none;
        overflow: hidden;
    }
    .lotus-st12-sheet .label-jpeg-image,
    .lotus-st12-sheet .lotus-st12-calibration-label {
        width: 97mm !important;
        height: 48.5mm !important;
    }
}
.public-bill-sheet {
    overflow: hidden;
}
.public-bill-items {
    table-layout: fixed;
    width: 100%;
    max-width: 100%;
}
.public-bill-items td,
.public-bill-items th {
    box-sizing: border-box;
    overflow-wrap: anywhere;
}
.public-bill-items td:first-child,
.public-bill-items th:first-child {
    width: 7%;
}
.public-bill-items td:nth-child(2),
.public-bill-items th:nth-child(2) {
    width: 33%;
}
.public-bill-items td:nth-child(3),
.public-bill-items th:nth-child(3) {
    width: 11%;
}
.public-bill-items td:nth-child(4),
.public-bill-items th:nth-child(4) {
    width: 10%;
}
.public-bill-items td:nth-child(5),
.public-bill-items th:nth-child(5) {
    width: 9%;
}
.public-bill-items td:nth-child(6),
.public-bill-items td:nth-child(7),
.public-bill-items th:nth-child(6),
.public-bill-items th:nth-child(7) {
    width: 7%;
}
.public-bill-items td:nth-child(8),
.public-bill-items td:nth-child(9),
.public-bill-items th:nth-child(8),
.public-bill-items th:nth-child(9) {
    width: 8%;
}
@media (max-width: 720px) {
    .public-bill-items {
        display: block;
        table-layout: auto;
        font-size: 12px;
        border-top: 2px solid #111;
    }
    .public-bill-items thead {
        display: none;
    }
    .public-bill-items tbody,
    .public-bill-items td,
    .public-bill-items tr {
        display: block;
        width: 100% !important;
    }
    .public-bill-items tr {
        border-bottom: 1px solid #111;
    }
    .public-bill-items td {
        display: grid;
        grid-template-columns: 112px 1fr;
        grid-gap: 8px;
        gap: 8px;
        padding: 7px 10px;
        border-right: 0;
        border-bottom: 1px solid #d1d5db;
        text-align: left;
        font-size: 12px;
        line-height: 1.25;
    }
    .public-bill-items td:last-child {
        border-bottom: 0;
    }
    .public-bill-items td:before {
        font-weight: 900;
        color: #111;
    }
    .public-bill-items td:first-child:before {
        content: "S. NO.";
    }
    .public-bill-items td:nth-child(2):before {
        content: "PARTICULARS";
    }
    .public-bill-items td:nth-child(3):before {
        content: "BATCH NO";
    }
    .public-bill-items td:nth-child(4):before {
        content: "MFG DATE";
    }
    .public-bill-items td:nth-child(5):before {
        content: "HSN CODE";
    }
    .public-bill-items td:nth-child(6):before {
        content: "GST";
    }
    .public-bill-items td:nth-child(7):before {
        content: "QTY.";
    }
    .public-bill-items td:nth-child(8):before {
        content: "RATE";
    }
    .public-bill-items td:nth-child(9):before {
        content: "AMT.";
    }
}
.label-download-link {
    display: none;
}
.print-range-error {
    margin: 60px auto;
    max-width: 520px;
    padding: 28px;
    border: 2px solid #e5e7eb;
    text-align: center;
    background: #fff;
}
.print-range-error h1 {
    margin: 0 0 12px;
    color: #061e13;
    font-size: 28px;
}
.print-range-error p {
    margin: 0;
    color: #7f1d1d;
    font-size: 18px;
    font-weight: 800;
}
.icon-newCertificate:before {
    inset: 2px 5px 5px;
    border-radius: 3px;
}
.icon-newCertificate:after {
    content: "C";
    inset: auto;
    left: 8px;
    top: 2px;
    border: 0;
    font-family: Georgia, serif;
    font-size: 17px;
    line-height: 22px;
    font-weight: 900;
}
.new-certificate-page {
    max-width: 1500px;
    margin: 0 auto;
}
.new-certificate-toolbar {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 24px;
    margin-bottom: 24px;
}
.new-certificate-toolbar .partner-page-title {
    margin-bottom: 8px;
}
.new-certificate-toolbar > div > p {
    margin: 0;
    color: #64748b;
    font-size: 15px;
}
.new-certificate-actions {
    display: flex;
    align-items: flex-end;
    gap: 12px;
}
.new-certificate-actions label {
    display: grid;
    grid-gap: 6px;
    gap: 6px;
    color: #475569;
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.06em;
}
.new-certificate-actions button,
.new-certificate-actions select {
    min-height: 42px;
    border-radius: 10px;
    font: inherit;
    font-weight: 900;
}
.new-certificate-actions select {
    min-width: 185px;
    border: 1px solid #cbd5e1;
    padding: 0 36px 0 12px;
    background: white;
    color: #172033;
}
.new-certificate-actions button {
    border: 1px solid #c99a35;
    padding: 0 18px;
    background: #0a3a25;
    color: white;
    cursor: pointer;
    box-shadow: 0 8px 18px rgba(6, 35, 22, 0.12);
}
.new-certificate-actions button:hover {
    background: #115136;
}
.new-certificate-document {
    position: relative;
    isolation: isolate;
    aspect-ratio: 1.414/1;
    min-height: 650px;
    display: grid;
    grid-template-columns: minmax(0, 1.65fr) minmax(300px, 0.9fr);
    overflow: hidden;
    border: 1px solid #c69b42;
    border-radius: 6px;
    background: #fbf7ee;
    color: #172033;
    box-shadow: 0 22px 55px rgba(31, 41, 55, 0.16);
}
.new-certificate-document:before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -2;
    background: radial-gradient(circle at 16% 20%, rgba(203, 164, 82, 0.16), transparent 28%),
        radial-gradient(circle at 76% 78%, rgba(12, 68, 44, 0.11), transparent 30%),
        linear-gradient(135deg, #fffdf8, #f5eddd);
}
.new-certificate-document:after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    opacity: 0.24;
    background-image: linear-gradient(45deg, rgba(153, 112, 34, 0.12) 1px, transparent 0),
        linear-gradient(-45deg, rgba(153, 112, 34, 0.08) 1px, transparent 0);
    background-size: 28px 28px;
}
.new-certificate-border {
    position: absolute;
    inset: 12px;
    z-index: 3;
    border: 1px solid rgba(138, 98, 29, 0.75);
    pointer-events: none;
}
.new-certificate-border:after,
.new-certificate-border:before {
    content: "";
    position: absolute;
    width: 76px;
    height: 76px;
    border-color: #bd8c31;
}
.new-certificate-border:before {
    left: 6px;
    top: 6px;
    border-left: 5px double #bd8c31;
    border-top: 5px double #bd8c31;
}
.new-certificate-border:after {
    right: 6px;
    bottom: 6px;
    border-right: 5px double #bd8c31;
    border-bottom: 5px double #bd8c31;
}
.new-certificate-award {
    min-width: 0;
    padding: 40px 44px 28px;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}
.new-certificate-brand {
    display: flex;
    align-items: center;
    gap: 12px;
    color: #073521;
}
.new-certificate-brand img {
    width: 68px;
    height: 48px;
    object-fit: contain;
    border-radius: 8px;
    background: white;
}
.new-certificate-brand div {
    display: grid;
    justify-items: start;
    line-height: 1;
}
.new-certificate-brand strong {
    font-family: Georgia, serif;
    font-size: 23px;
    letter-spacing: 0.04em;
}
.new-certificate-brand span {
    margin-top: 5px;
    color: #b18331;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: 0.22em;
}
.new-certificate-heading {
    margin-top: 22px;
}
.new-certificate-heading > span {
    color: #9a6b21;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 0.22em;
    text-transform: uppercase;
}
.new-certificate-heading h2 {
    margin: 8px 0 10px;
    color: #082f20;
    font-family: Georgia, serif;
    font-size: clamp(27px, 2.3vw, 45px);
    font-weight: 500;
    line-height: 1.08;
}
.new-certificate-heading i {
    display: block;
    width: 138px;
    height: 1px;
    margin: 0 auto;
    background: #c69942;
    position: relative;
}
.new-certificate-heading i:after {
    content: "";
    position: absolute;
    width: 9px;
    height: 9px;
    left: 50%;
    top: 50%;
    border: 1px solid #c69942;
    transform: translate(-50%, -50%) rotate(45deg);
    background: #faf5ea;
}
.new-certificate-presented {
    margin: 22px 0 5px;
    color: #67746d;
    font-family: Georgia, serif;
    font-size: 14px;
    font-style: italic;
}
.new-certificate-award > h3 {
    margin: 0;
    color: #102f23;
    font-family: Georgia, serif;
    font-size: clamp(29px, 3vw, 54px);
    font-weight: 500;
    line-height: 1.08;
}
.new-certificate-recognition {
    max-width: 670px;
    margin: 13px auto 19px;
    color: #43534c;
    font-family: Georgia, serif;
    font-size: 15px;
    line-height: 1.45;
}
.new-certificate-value-grid {
    width: min(610px, 92%);
    display: grid;
    grid-template-columns: 1fr 1fr;
    border: 1px solid #d8c294;
    border-radius: 12px;
    overflow: hidden;
    background: rgba(255, 255, 255, 0.62);
}
.new-certificate-value-grid > div {
    padding: 13px 14px;
    display: grid;
    grid-gap: 4px;
    gap: 4px;
}
.new-certificate-value-grid > div + div {
    border-left: 1px solid #d8c294;
}
.new-certificate-value-grid span {
    color: #6c746f;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}
.new-certificate-value-grid strong {
    color: #0a6b3d;
    font-family: Georgia, serif;
    font-size: 25px;
}
.new-certificate-progress {
    width: min(610px, 92%);
    margin-top: 10px;
}
.new-certificate-progress > div {
    display: flex;
    justify-content: space-between;
    color: #596760;
    font-size: 11px;
    font-weight: 900;
}
.new-certificate-progress > i {
    height: 6px;
    display: block;
    overflow: hidden;
    border-radius: 999px;
    background: #e7dfce;
}
.new-certificate-progress em {
    height: 100%;
    display: block;
    border-radius: inherit;
    background: linear-gradient(90deg, #0b7042, #c49a42);
}
.new-certificate-facts {
    width: min(660px, 96%);
    margin: 17px 0 0;
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 0 24px;
    gap: 0 24px;
    text-align: left;
}
.new-certificate-facts div {
    min-width: 0;
    padding: 7px 0;
    display: grid;
    grid-template-columns: minmax(85px, 0.8fr) minmax(0, 1.25fr);
    grid-gap: 10px;
    gap: 10px;
    border-bottom: 1px solid rgba(171, 145, 92, 0.3);
}
.new-certificate-facts dt {
    color: #738078;
    font-size: 11px;
}
.new-certificate-facts dd {
    min-width: 0;
    margin: 0;
    overflow-wrap: anywhere;
    color: #20352b;
    font-size: 11px;
    font-weight: 900;
    text-align: right;
}
.new-certificate-status {
    display: inline-flex;
    padding: 3px 8px;
    border-radius: 999px;
    background: #e8f7ee;
    color: #08733e;
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}
.new-certificate-status.status-cancelled {
    background: #feecec;
    color: #a12222;
}
.new-certificate-status.status-locked {
    background: #fff4d8;
    color: #90610e;
}
.new-certificate-signatures {
    width: min(650px, 94%);
    margin-top: auto;
    padding-top: 18px;
    display: grid;
    grid-template-columns: 1fr 72px 1fr;
    align-items: end;
    grid-gap: 24px;
    gap: 24px;
}
.new-certificate-signatures > div:not(.new-certificate-seal) {
    display: grid;
    grid-gap: 6px;
    gap: 6px;
    color: #68736d;
    font-size: 9px;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}
.new-certificate-signatures i {
    display: block;
    border-top: 1px solid #74603b;
}
.new-certificate-seal {
    width: 66px;
    height: 66px;
    border: 3px double #9a6b21;
    border-radius: 999px;
    display: grid;
    place-items: center;
    background: #c79534;
    color: #102f23;
    font-family: Georgia, serif;
    font-size: 20px;
    font-weight: 900;
    box-shadow: inset 0 0 0 5px #e7c572;
}
.new-certificate-statement {
    min-width: 0;
    padding: 42px 32px 28px;
    border-left: 1px solid #cdb985;
    background: rgba(8, 47, 32, 0.94);
    color: #eef5f0;
    display: flex;
    flex-direction: column;
}
.new-certificate-statement > div:first-child {
    display: flex;
    justify-content: space-between;
    gap: 10px;
    color: #d4bd83;
    font-size: 9px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}
.new-certificate-statement h3 {
    margin: 30px 0 5px;
    color: #f1d89d;
    font-family: Georgia, serif;
    font-size: 25px;
}
.new-certificate-statement > p {
    margin: 0 0 18px;
    color: #bdcbc3;
    font-size: 11px;
    line-height: 1.45;
}
.new-certificate-statement table {
    width: 100%;
    min-width: 0;
    table-layout: fixed;
    border-collapse: collapse;
    font-size: 11px;
}
.new-certificate-statement td:first-child,
.new-certificate-statement th:first-child {
    width: 38px;
}
.new-certificate-statement td,
.new-certificate-statement th {
    padding: 8px 5px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.16);
    text-align: left;
}
.new-certificate-statement td:last-child,
.new-certificate-statement th:last-child {
    text-align: right;
}
.new-certificate-statement thead th {
    color: #d7c18b;
    font-size: 9px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}
.new-certificate-statement tfoot th {
    padding-top: 11px;
    color: #f7dda0;
    font-size: 12px;
}
.new-certificate-terms {
    margin-top: auto;
    padding: 14px;
    border: 1px solid rgba(221, 190, 116, 0.38);
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.055);
}
.new-certificate-terms strong {
    color: #f0d493;
    font-size: 10px;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}
.new-certificate-terms p {
    margin: 5px 0 0;
    color: #d2dcd6;
    font-size: 9px;
    line-height: 1.45;
}
.new-certificate-statement .new-certificate-ledger-note {
    margin: 11px 0 0;
    color: #d8c48f;
    font-size: 9px;
    text-align: center;
}
.new-certificate-empty {
    min-height: 430px;
    display: grid;
    place-items: center;
    align-content: center;
    grid-gap: 10px;
    gap: 10px;
    border: 1px dashed #c6d1ca;
    border-radius: 20px;
    background: white;
    text-align: center;
}
.new-certificate-empty > span {
    width: 64px;
    height: 64px;
    display: grid;
    place-items: center;
    border: 2px solid #c99a35;
    border-radius: 50%;
    color: #0a3a25;
    font-family: Georgia, serif;
    font-size: 32px;
}
.new-certificate-empty h2 {
    margin: 8px 0 0;
    color: #0a3a25;
    font-family: Georgia, serif;
}
.new-certificate-empty p {
    max-width: 520px;
    margin: 0;
    color: #64748b;
}
@media (max-width: 1050px) {
    .new-certificate-document {
        aspect-ratio: auto;
        grid-template-columns: 1fr;
    }
    .new-certificate-statement {
        border-left: 0;
        border-top: 1px solid #cdb985;
    }
    .new-certificate-terms {
        margin-top: 28px;
    }
}
@media (max-width: 720px) {
    .new-certificate-actions,
    .new-certificate-toolbar {
        align-items: stretch;
        flex-direction: column;
    }
    .new-certificate-actions select {
        width: 100%;
    }
    .new-certificate-document {
        min-height: 0;
    }
    .new-certificate-award {
        padding: 32px 24px 24px;
    }
    .new-certificate-brand strong {
        font-size: 18px;
    }
    .new-certificate-value-grid {
        grid-template-columns: 1fr;
    }
    .new-certificate-value-grid > div + div {
        border-left: 0;
        border-top: 1px solid #d8c294;
    }
    .new-certificate-facts {
        grid-template-columns: 1fr;
    }
    .new-certificate-signatures {
        grid-template-columns: 1fr 54px 1fr;
        gap: 10px;
    }
    .new-certificate-seal {
        width: 52px;
        height: 52px;
        font-size: 16px;
    }
    .new-certificate-statement {
        padding: 32px 24px 24px;
    }
}
@media print {
    body:has(.new-certificate-document) {
        background: #fff !important;
    }
    body:has(.new-certificate-document) * {
        visibility: hidden !important;
    }
    body:has(.new-certificate-document) .new-certificate-document,
    body:has(.new-certificate-document) .new-certificate-document * {
        visibility: visible !important;
    }
    body:has(.new-certificate-document) .new-certificate-document {
        position: absolute;
        inset: 0 auto auto 0;
        width: 100%;
        min-height: 0;
        aspect-ratio: 1.414/1;
        border-radius: 0;
        box-shadow: none;
        print-color-adjust: exact;
        -webkit-print-color-adjust: exact;
    }
    .new-certificate-award {
        padding: 26px 32px 20px;
    }
    .new-certificate-statement {
        padding: 28px 24px 20px;
    }
    .new-certificate-heading,
    .new-certificate-presented {
        margin-top: 15px;
    }
}
.new-certificate-sections {
    display: inline-flex;
    gap: 6px;
    margin: 0 0 22px;
    padding: 5px;
    border: 1px solid #d8dfda;
    border-radius: 14px;
    background: #eef2ef;
}
.new-certificate-sections button {
    min-height: 42px;
    display: inline-flex;
    align-items: center;
    gap: 9px;
    border: 0;
    border-radius: 10px;
    padding: 0 15px;
    background: transparent;
    color: #64748b;
    font: inherit;
    font-size: 13px;
    font-weight: 900;
    cursor: pointer;
}
.new-certificate-sections button.active {
    background: white;
    color: #073b27;
    box-shadow: 0 4px 12px rgba(15, 23, 42, 0.08);
}
.new-certificate-sections button strong {
    min-width: 23px;
    height: 23px;
    padding: 0 6px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    background: #dce9e1;
    color: #0a7042;
    font-size: 11px;
}
.new-certificate-sections button.active strong {
    background: #0b6c42;
    color: white;
}
.virtual-records-panel {
    display: grid;
    grid-gap: 22px;
    gap: 22px;
}
.virtual-records-summary {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    grid-gap: 12px;
    gap: 12px;
}
.virtual-records-summary article {
    min-width: 0;
    padding: 18px;
    border: 1px solid #d5e2da;
    border-radius: 16px;
    background: white;
    box-shadow: 0 7px 20px rgba(15, 23, 42, 0.04);
}
.virtual-records-summary span {
    display: block;
    color: #64748b;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}
.virtual-records-summary strong {
    display: block;
    margin-top: 7px;
    overflow-wrap: anywhere;
    color: #06482d;
    font-family: Georgia, serif;
    font-size: 25px;
    line-height: 1;
}
.virtual-records-summary small {
    display: block;
    margin-top: 7px;
    color: #84918a;
    font-size: 10px;
}
.virtual-records-intro {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 24px;
    padding: 25px 28px;
    border: 1px solid #1d6145;
    border-radius: 18px;
    background: linear-gradient(135deg, #062f20, #0b5235);
    color: white;
    box-shadow: 0 16px 35px rgba(6, 47, 32, 0.13);
}
.virtual-records-intro span {
    color: #e0bd70;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}
.virtual-records-intro h2 {
    margin: 5px 0 0;
    color: white;
    font-family: Georgia, serif;
    font-size: 28px;
}
.virtual-records-intro p {
    max-width: 620px;
    margin: 0;
    color: #c9d9d1;
    font-size: 12px;
    line-height: 1.55;
    text-align: right;
}
.virtual-records-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-gap: 16px;
    gap: 16px;
}
.virtual-record-card {
    min-width: 0;
    overflow: hidden;
    border: 1px solid #cddbd3;
    border-radius: 18px;
    background: linear-gradient(145deg, #fff, #f4f8f5);
    color: #17241e;
    box-shadow: 0 10px 26px rgba(15, 23, 42, 0.06);
}
.virtual-record-card:before {
    content: "SYSTEM-GENERATED • NON-TRANSFERABLE";
    display: block;
    padding: 6px 18px;
    background: #0a3d29;
    color: #d7bc7d;
    font-size: 8px;
    font-weight: 900;
    letter-spacing: 0.12em;
}
.virtual-record-card > header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    padding: 19px 20px 12px;
}
.virtual-record-card header span {
    color: #738178;
    font-size: 9px;
    font-weight: 900;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}
.virtual-record-card header h3 {
    margin: 4px 0 0;
    color: #083c28;
    font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
    font-size: 26px;
    letter-spacing: 0.03em;
}
.virtual-record-card header > strong {
    padding: 5px 9px;
    border-radius: 999px;
    background: #e7f7ed;
    color: #087442;
    font-size: 9px;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}
.virtual-record-card.status-filled header > strong {
    background: #e8ecf8;
    color: #394d87;
}
.virtual-record-source {
    margin: 0 20px;
    padding: 13px 14px;
    border: 1px solid #d8e1dc;
    border-radius: 12px;
    background: white;
}
.virtual-record-source span {
    display: block;
    color: #8a958f;
    font-size: 9px;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}
.virtual-record-source strong {
    display: block;
    margin-top: 4px;
    color: #183b2c;
    font-size: 14px;
}
.virtual-record-source small {
    display: block;
    margin-top: 3px;
    color: #68766f;
    font-size: 11px;
}
.virtual-record-relationship {
    margin: 12px 20px 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}
.virtual-record-relationship span {
    color: #8d671f;
    font-size: 11px;
    font-weight: 900;
}
.virtual-record-relationship em {
    padding: 4px 8px;
    border-radius: 6px;
    background: #eef2ef;
    color: #59675f;
    font-size: 9px;
    font-style: normal;
    font-weight: 900;
}
.virtual-record-card dl {
    margin: 14px 20px 0;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    border-top: 1px solid #dce3df;
    border-bottom: 1px solid #dce3df;
}
.virtual-record-card dl div {
    min-width: 0;
    padding: 11px 8px;
}
.virtual-record-card dl div + div {
    border-left: 1px solid #dce3df;
}
.virtual-record-card dt {
    color: #849088;
    font-size: 8px;
    font-weight: 900;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}
.virtual-record-card dd {
    margin: 5px 0 0;
    overflow-wrap: anywhere;
    color: #123a29;
    font-size: 12px;
    font-weight: 900;
}
.virtual-record-progress {
    margin: 13px 20px 0;
}
.virtual-record-progress > div {
    display: flex;
    justify-content: space-between;
    color: #66756d;
    font-size: 9px;
    font-weight: 900;
}
.virtual-record-progress > i {
    height: 6px;
    display: block;
    overflow: hidden;
    border-radius: 999px;
    background: #dfe7e2;
}
.virtual-record-progress em {
    height: 100%;
    display: block;
    border-radius: inherit;
    background: linear-gradient(90deg, #08a05c, #c59a3e);
}
.virtual-record-card footer {
    padding: 15px 20px 18px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}
.virtual-record-card footer span {
    color: #77837c;
    font-size: 10px;
}
.virtual-record-card footer button {
    min-height: 35px;
    border: 1px solid #0d7045;
    border-radius: 9px;
    padding: 0 12px;
    background: #0a4d31;
    color: white;
    font: inherit;
    font-size: 10px;
    font-weight: 900;
    cursor: pointer;
}
.virtual-records-footnote {
    margin: 0;
    color: #7a8780;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.05em;
    text-align: center;
    text-transform: uppercase;
}
.cert-row-head-clickable {
    grid-template-columns: minmax(150px, 1.1fr) repeat(3, minmax(0, 1fr)) auto;
    cursor: pointer;
}
.cert-row-head-clickable:hover {
    background: rgba(10, 96, 64, 0.04);
}
.overflow-ladder-modal {
    width: min(640px, 94vw);
    max-height: 88vh;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    border-radius: 18px;
    background: white;
    box-shadow: 0 26px 60px rgba(6, 35, 22, 0.28);
}
.overflow-ladder-modal > header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    padding: 22px 24px 16px;
    border-bottom: 1px solid #e2e8f0;
    background: linear-gradient(135deg, #062f20, #0b5235);
    color: white;
}
.overflow-ladder-modal header span {
    color: #e0bd70;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}
.overflow-ladder-modal header h2 {
    margin: 5px 0 0;
    color: white;
    font-family: Georgia, serif;
    font-size: 22px;
}
.overflow-ladder-modal header button {
    width: 34px;
    height: 34px;
    flex: none;
    border: 0;
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.14);
    color: white;
    font-size: 20px;
    line-height: 1;
    cursor: pointer;
}
.overflow-ladder-modal header button:hover {
    background: rgba(255, 255, 255, 0.24);
}
.overflow-ladder-body {
    padding: 20px 24px 24px;
    overflow-y: auto;
}
.overflow-ladder-source {
    margin: 0 0 16px;
    color: #475569;
    font-size: 13px;
}
.overflow-ladder-error {
    color: #b91c1c;
    font-size: 14px;
}
.overflow-ladder-rungs {
    display: flex;
    flex-direction: column;
    gap: 10px;
    list-style: none;
    margin: 0;
    padding: 0;
}
.overflow-ladder-rung {
    display: grid;
    grid-template-columns: 90px 1fr auto auto;
    align-items: center;
    grid-gap: 12px;
    gap: 12px;
    border: 1px solid #dfe4eb;
    border-radius: 12px;
    padding: 12px 14px;
    background: #f8fafc;
    font-size: 13px;
}
.overflow-ladder-rung.status-filled {
    border-color: #bbf7d0;
    background: #f0fdf4;
}
.overflow-ladder-slot {
    font-weight: 900;
    color: #083c28;
    text-transform: uppercase;
    font-size: 12px;
    letter-spacing: 0.04em;
}
.overflow-ladder-recipient {
    color: #334155;
}
.overflow-ladder-amount {
    font-weight: 800;
    color: #0f172a;
    white-space: nowrap;
}
.overflow-ladder-status {
    font-size: 10px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    padding: 4px 8px;
    border-radius: 999px;
    background: #e2e8f0;
    color: #475569;
}
.overflow-ladder-status.status-filled {
    background: #dcfce7;
    color: #15803d;
}
.overflow-ladder-empty {
    color: #687386;
    font-size: 13px;
    padding: 8px 0;
}
.cert-rows-panel {
    display: grid;
    grid-gap: 22px;
    gap: 22px;
}
.cert-snapshot {
    font-size: 19px !important;
}
.cert-rows {
    margin: 0;
    padding: 0;
    display: grid;
    grid-gap: 12px;
    gap: 12px;
    list-style: none;
}
.cert-row {
    min-width: 0;
    overflow: hidden;
    border: 1px solid #cddbd3;
    border-radius: 16px;
    background: linear-gradient(145deg, #fff, #f4f8f5);
    box-shadow: 0 8px 22px rgba(15, 23, 42, 0.05);
    transition:
        box-shadow 0.15s,
        border-color 0.15s;
}
.cert-row.open {
    border-color: #0a6040;
    box-shadow: 0 14px 30px rgba(6, 47, 32, 0.12);
}
.cert-row-head {
    width: 100%;
    display: grid;
    grid-template-columns: minmax(150px, 1.1fr) repeat(3, minmax(0, 1fr)) auto 22px;
    align-items: center;
    grid-gap: 16px;
    gap: 16px;
    border: 0;
    padding: 16px 20px;
    background: transparent;
    color: inherit;
    font: inherit;
    text-align: left;
    cursor: pointer;
}
.cert-row-head-static {
    grid-template-columns: minmax(150px, 1.1fr) repeat(3, minmax(0, 1fr)) auto;
    cursor: default;
}
.virtual-cert-row-head-admin {
    grid-template-columns: minmax(140px, 1fr) minmax(190px, 1.3fr) repeat(3, minmax(100px, 1fr)) auto;
    gap: 14px;
}
.cert-row-head > span {
    min-width: 0;
}
.cert-row-head:hover {
    background: rgba(10, 96, 64, 0.04);
}
.cert-row-head-static:hover {
    background: transparent;
}
.cert-row-head:focus-visible {
    outline: 2px solid #0a6040;
    outline-offset: -2px;
}
.cert-row-head small {
    display: block;
    color: #8a958f;
    font-size: 9px;
    font-weight: 900;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}
.cert-row-no strong {
    display: block;
    margin-top: 3px;
    color: #083c28;
    font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
    font-size: 21px;
    letter-spacing: 0.03em;
}
.cert-row-billno {
    display: block;
    margin-top: 2px;
    color: #8a958f;
    font-style: normal;
    font-size: 11px;
    font-weight: 700;
}
.cert-row-figure strong {
    display: block;
    margin-top: 3px;
    overflow-wrap: anywhere;
    color: #0a6b3d;
    font-family: Georgia, serif;
    font-size: 17px;
}
.cert-row-source-owner strong {
    color: #183b2c;
    font-family: inherit;
    font-size: 13px;
    line-height: 1.3;
}
.cert-row-status {
    justify-self: start;
    padding: 5px 10px;
    border-radius: 999px;
    background: #e7f7ed;
    color: #087442;
    font-size: 9px;
    font-weight: 900;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}
.cert-row-status.status-filled {
    background: #e8ecf8;
    color: #394d87;
}
.cert-row-status.status-locked {
    background: #f1efe6;
    color: #86702f;
}
.cert-row-chevron {
    justify-self: end;
    width: 9px;
    height: 9px;
    border-right: 2px solid #6d7d75;
    border-bottom: 2px solid #6d7d75;
    transform: rotate(45deg) translate(-2px, -2px);
    transition: transform 0.18s;
}
.cert-row.open .cert-row-chevron {
    transform: rotate(-135deg) translate(-2px, -2px);
    border-color: #0a6040;
}
.cert-row-meter {
    height: 3px;
    background: #e6ede9;
}
.cert-row-meter em {
    display: block;
    height: 100%;
    background: linear-gradient(90deg, #0a6040, #c69942);
}
.cert-row-panel {
    padding: 20px;
    border-top: 1px solid #dde7e2;
    background: #fbfdfc;
}
.cert-row-panel-head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 16px;
}
.cert-row-panel-head h3 {
    margin: 0;
    color: #083c28;
    font-family: Georgia, serif;
    font-size: 18px;
}
.cert-row-panel-head p {
    margin: 4px 0 0;
    color: #64748b;
    font-size: 12px;
}
.cert-row-print {
    min-height: 38px;
    flex: none;
    border: 1px solid #c99a35;
    border-radius: 10px;
    padding: 0 16px;
    background: #0a3a25;
    color: white;
    font: inherit;
    font-size: 13px;
    font-weight: 900;
    cursor: pointer;
}
.cert-row-print:hover {
    background: #115136;
}
.cert-row-facts {
    margin: 0 0 16px;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    grid-gap: 12px;
    gap: 12px;
}
.cert-row-facts > div {
    min-width: 0;
    padding: 11px 13px;
    border: 1px solid #dde7e2;
    border-radius: 11px;
    background: white;
}
.cert-row-facts dt {
    color: #8a958f;
    font-size: 9px;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}
.cert-row-facts dd {
    margin: 4px 0 0;
    overflow-wrap: anywhere;
    color: #17241e;
    font-size: 14px;
    font-weight: 800;
}
.cert-row-scroll {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}
.cert-row-table {
    width: auto;
    min-width: 0;
    border-collapse: collapse;
    font-size: 13px;
}
.cert-row-table td,
.cert-row-table th {
    height: auto;
    padding: 9px 12px;
    border-bottom: 1px solid #e6ede9;
    text-align: left;
}
.cert-row-table thead th {
    color: #8a958f;
    font-size: 9px;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}
.cert-row-table td:last-child,
.cert-row-table th:last-child {
    text-align: right;
}
.cert-row-table tfoot th {
    border-bottom: 0;
    color: #083c28;
    font-size: 14px;
}
.new-certificate-print-mount {
    position: fixed;
    left: -10000px;
    top: 0;
    width: 1120px;
}
.new-certificate-legal {
    margin-top: 26px;
    padding-top: 18px;
    border-top: 1px solid #e2e8f0;
    text-align: center;
}
.new-certificate-legal p {
    margin: 0;
    color: #64748b;
    font-size: 13px;
}
.new-certificate-terms-link {
    border: 0;
    padding: 0;
    background: none;
    color: #0a6040;
    font: inherit;
    font-weight: 900;
    text-decoration: underline;
    text-underline-offset: 3px;
    cursor: pointer;
}
.new-certificate-terms-link:hover {
    color: #115136;
}
.new-certificate-consent-page {
    min-height: min(70vh, 680px);
    display: grid;
    place-items: center;
    padding: 24px 0;
}
.new-certificate-consent-box {
    width: min(720px, 100%);
    padding: clamp(22px, 4vw, 38px);
    border: 1px solid #d5e2da;
    border-radius: 20px;
    background: #fff;
    box-shadow: 0 16px 40px rgba(6, 47, 32, 0.12);
}
.new-certificate-consent-eyebrow {
    color: #0a6040;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 0.13em;
    text-transform: uppercase;
}
.new-certificate-consent-box h1 {
    margin: 9px 0 12px;
    color: #083c28;
    font-family: Georgia, serif;
    font-size: clamp(26px, 4vw, 36px);
}
.new-certificate-consent-box p {
    color: #43534c;
    font-size: 14px;
    line-height: 1.55;
}
.new-certificate-consent-choices {
    display: grid;
    grid-gap: 12px;
    gap: 12px;
    margin: 24px 0;
}
.new-certificate-consent-choices label {
    display: flex;
    align-items: flex-start;
    gap: 13px;
    padding: 15px;
    border: 1px solid #dbe8df;
    border-radius: 12px;
    background: #f8fbf9;
    color: #173e29;
    font-size: 14px;
    line-height: 1.48;
    cursor: pointer;
}
.new-certificate-consent-choices input {
    width: 19px;
    height: 19px;
    flex: none;
    margin: 1px 0 0;
    accent-color: #0a6040;
}
.new-certificate-consent-note {
    font-size: 12px !important;
}
.new-certificate-consent-error {
    color: #aa3030 !important;
    font-weight: 800;
}
.new-certificate-consent-actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 10px;
    margin-top: 20px;
}
.new-certificate-consent-actions button,
.new-certificate-consent-box > button {
    min-height: 42px;
    padding: 0 18px;
    border-radius: 10px;
    font: inherit;
    font-size: 13px;
    font-weight: 900;
    cursor: pointer;
}
.new-certificate-consent-secondary {
    border: 1px solid #b8c8be;
    background: white;
    color: #33443c;
}
.new-certificate-consent-primary {
    border: 1px solid #0a6040;
    background: #0a6040;
    color: white;
}
.new-certificate-consent-primary:disabled {
    opacity: 0.6;
    cursor: wait;
}
.cert-row-status.status-not_started {
    background: #eef1ef;
    color: #596c60;
}
.new-certificate-terms-modal {
    width: min(760px, 94vw);
    max-height: 88vh;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    border-radius: 18px;
    background: white;
    box-shadow: 0 26px 60px rgba(6, 35, 22, 0.28);
}
.new-certificate-terms-modal > header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    padding: 22px 24px 16px;
    border-bottom: 1px solid #e2e8f0;
    background: linear-gradient(135deg, #062f20, #0b5235);
    color: white;
}
.new-certificate-terms-modal header span {
    color: #e0bd70;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}
.new-certificate-terms-modal header h2 {
    margin: 5px 0 0;
    color: white;
    font-family: Georgia, serif;
    font-size: 25px;
}
.new-certificate-terms-modal header button {
    width: 34px;
    height: 34px;
    flex: none;
    border: 0;
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.14);
    color: white;
    font-size: 20px;
    line-height: 1;
    cursor: pointer;
}
.new-certificate-terms-modal header button:hover {
    background: rgba(255, 255, 255, 0.24);
}
.new-certificate-terms-body {
    overflow-y: auto;
    padding: 22px 24px 26px;
}
.new-certificate-terms-body section + section {
    margin-top: 20px;
}
.new-certificate-terms-body h3 {
    margin: 0 0 7px;
    color: #083c28;
    font-family: Georgia, serif;
    font-size: 17px;
}
.new-certificate-terms-body p {
    margin: 0 0 9px;
    color: #43534c;
    font-size: 13px;
    line-height: 1.62;
}
.new-certificate-terms-list {
    margin: 0;
    padding-left: 22px;
    display: grid;
    grid-gap: 13px;
    gap: 13px;
}
.new-certificate-terms-list li {
    color: #33443c;
    font-size: 13px;
    line-height: 1.62;
    text-align: justify;
}
.new-certificate-terms-list li::marker {
    color: #0a6040;
    font-weight: 900;
}
.new-certificate-terms-closing {
    margin: 22px 0 0 !important;
    padding-top: 16px;
    border-top: 1px solid #e2e8f0;
    color: #5b6b63 !important;
    font-size: 12px !important;
    text-align: center;
}
@media (max-width: 900px) {
    .cert-row-head {
        grid-template-columns: minmax(0, 1fr) auto;
        gap: 10px 14px;
    }
    .cert-row-issued {
        display: none;
    }
    .cert-row-chevron {
        grid-column: 2;
        grid-row: 1;
    }
    .cert-row-status {
        grid-column: 2;
    }
    .cert-row-facts {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .cert-row-panel-head {
        flex-direction: column;
        align-items: stretch;
    }
    .cert-row-panel {
        padding: 16px 14px;
    }
    .cert-row-table {
        font-size: 12px;
    }
    .cert-row-table td,
    .cert-row-table th {
        padding: 8px 12px;
    }
    .cert-row-table td:first-child,
    .cert-row-table th:first-child {
        padding-left: 2px;
    }
    .cert-row-table td:last-child,
    .cert-row-table th:last-child {
        padding-right: 2px;
    }
    .cert-row-table tfoot th {
        font-size: 13px;
    }
    .new-certificate-terms-list li {
        text-align: left;
    }
    .virtual-records-summary {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
    }
    .virtual-records-summary article {
        padding: 13px;
    }
    .virtual-records-summary strong {
        font-size: 19px;
    }
    .virtual-records-intro {
        flex-direction: column;
        align-items: flex-start;
        gap: 10px;
        padding: 18px 16px;
    }
    .virtual-records-intro p {
        max-width: none;
        text-align: left;
    }
    .overflow-ladder-rung {
        grid-template-columns: 1fr;
        gap: 4px;
        text-align: left;
    }
    .overflow-ladder-amount {
        white-space: normal;
    }
}
@media print {
    .new-certificate-print-mount {
        position: static;
        left: auto;
        width: auto;
    }
}
.virtual-records-empty {
    min-height: 380px;
    display: grid;
    place-items: center;
    align-content: center;
    grid-gap: 10px;
    gap: 10px;
    border: 1px dashed #b8ccc0;
    border-radius: 18px;
    background: #f8fbf9;
    text-align: center;
}
.virtual-records-empty > span {
    width: 66px;
    height: 66px;
    display: grid;
    place-items: center;
    border: 2px solid #0a6040;
    border-radius: 18px;
    background: #e7f4ec;
    color: #0a6040;
    font-family: ui-monospace, monospace;
    font-weight: 900;
}
.virtual-records-empty h2 {
    margin: 6px 0 0;
    color: #0a3d29;
    font-family: Georgia, serif;
}
.virtual-records-empty p {
    max-width: 520px;
    margin: 0;
    color: #64748b;
}
.virtual-record-backdrop {
    position: fixed;
    inset: 0;
    z-index: 80;
    display: flex;
    justify-content: flex-end;
    background: rgba(4, 20, 13, 0.62);
    -webkit-backdrop-filter: blur(3px);
    backdrop-filter: blur(3px);
}
.virtual-record-drawer {
    width: min(900px, 92vw);
    height: 100vh;
    overflow-y: auto;
    padding: 30px;
    background: #f7faf8;
    box-shadow: -18px 0 50px rgba(0, 0, 0, 0.22);
}
.virtual-record-drawer > header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 20px;
    padding-bottom: 18px;
    border-bottom: 1px solid #d7e0da;
}
.virtual-record-drawer header span {
    color: #9a7428;
    font-size: 9px;
    font-weight: 900;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}
.virtual-record-drawer header h2 {
    margin: 5px 0 2px;
    color: #083c28;
    font-family: ui-monospace, monospace;
    font-size: 30px;
}
.virtual-record-drawer header p {
    margin: 0;
    color: #65736b;
    font-size: 12px;
}
.virtual-record-drawer header button {
    width: 38px;
    height: 38px;
    border: 1px solid #cbd7d0;
    border-radius: 50%;
    background: white;
    color: #254437;
    font-size: 22px;
    cursor: pointer;
}
.virtual-money-flow {
    margin-top: 22px;
    display: grid;
    grid-template-columns: 1fr auto 1fr auto 1fr auto 1fr;
    align-items: stretch;
    grid-gap: 7px;
    gap: 7px;
}
.virtual-money-flow div {
    min-width: 0;
    padding: 12px 10px;
    display: grid;
    align-content: center;
    grid-gap: 4px;
    gap: 4px;
    border: 1px solid #ccdad2;
    border-radius: 11px;
    background: white;
    text-align: center;
}
.virtual-money-flow span {
    color: #849189;
    font-size: 8px;
    font-weight: 900;
    letter-spacing: 0.07em;
    text-transform: uppercase;
}
.virtual-money-flow strong {
    overflow-wrap: anywhere;
    color: #17412f;
    font-size: 10px;
}
.virtual-money-flow > i {
    align-self: center;
    color: #bd8b31;
    font-style: normal;
    font-weight: 900;
}
.virtual-money-flow-note {
    margin: 10px 0 0;
    color: #66756d;
    font-size: 10px;
    text-align: center;
}
.virtual-record-drawer-facts {
    margin-top: 20px;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    grid-gap: 10px;
    gap: 10px;
}
.virtual-record-drawer-facts div {
    min-width: 0;
    padding: 13px;
    border: 1px solid #d5dfd9;
    border-radius: 11px;
    background: white;
}
.virtual-record-drawer-facts span {
    display: block;
    color: #849189;
    font-size: 8px;
    font-weight: 900;
    letter-spacing: 0.07em;
    text-transform: uppercase;
}
.virtual-record-drawer-facts strong {
    display: block;
    margin-top: 5px;
    overflow-wrap: anywhere;
    color: #123c29;
    font-size: 11px;
}
.virtual-record-drawer > h3 {
    margin: 25px 0 10px;
    color: #0a422c;
    font-family: Georgia, serif;
}
.virtual-record-transactions {
    overflow-x: auto;
    border: 1px solid #d4ded8;
    border-radius: 12px;
    background: white;
}
.virtual-record-transactions table {
    width: 100%;
    min-width: 690px;
    border-collapse: collapse;
    font-size: 11px;
}
.virtual-record-transactions td,
.virtual-record-transactions th {
    padding: 10px;
    border-bottom: 1px solid #e1e7e3;
    text-align: left;
}
.virtual-record-transactions th {
    background: #edf3ef;
    color: #66756d;
    font-size: 8px;
    letter-spacing: 0.07em;
    text-transform: uppercase;
}
.virtual-record-transactions td:last-child,
.virtual-record-transactions th:last-child {
    text-align: right;
}
.virtual-record-transactions td span {
    display: block;
    margin-top: 3px;
    color: #7b8881;
    font-size: 9px;
}
@media (max-width: 1050px) {
    .virtual-records-summary {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .virtual-records-grid {
        grid-template-columns: 1fr;
    }
    .virtual-records-intro {
        align-items: flex-start;
        flex-direction: column;
    }
    .virtual-records-intro p {
        text-align: left;
    }
    .virtual-money-flow {
        grid-template-columns: 1fr;
    }
    .virtual-money-flow > i {
        transform: rotate(90deg);
        justify-self: center;
    }
}
@media (max-width: 720px) {
    .new-certificate-sections {
        width: 100%;
        display: grid;
        grid-template-columns: 1fr;
    }
    .new-certificate-sections button {
        justify-content: space-between;
    }
    .virtual-records-summary {
        grid-template-columns: 1fr 1fr;
    }
    .virtual-records-summary article {
        padding: 14px;
    }
    .virtual-records-summary strong {
        font-size: 19px;
    }
    .virtual-records-intro {
        padding: 20px;
    }
    .virtual-record-card dl {
        grid-template-columns: 1fr 1fr;
    }
    .virtual-record-card dl div:nth-child(3) {
        border-left: 0;
        border-top: 1px solid #dce3df;
    }
    .virtual-record-card dl div:nth-child(4) {
        border-top: 1px solid #dce3df;
    }
    .virtual-record-drawer {
        width: 100%;
        padding: 20px 15px;
    }
    .virtual-record-drawer-facts {
        grid-template-columns: 1fr 1fr;
    }
}
.cert-status-wrap {
    display: flex;
    flex-direction: column;
    gap: 16px;
}
.cert-status-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    flex-wrap: wrap;
}
.cert-status-header p {
    margin: 4px 0 0;
    color: var(--muted);
}
.cert-status-search {
    min-width: 260px;
    padding: 10px 14px;
    border: 1px solid var(--line);
    border-radius: 8px;
    font-size: 14px;
}
.cert-status-tabs {
    display: flex;
    gap: 8px;
}
.cert-status-tab {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 18px;
    border-radius: 8px;
    border: 1px solid var(--line);
    background: white;
    color: var(--muted);
    font-weight: 900;
    cursor: pointer;
}
.cert-status-tab.active {
    background: var(--green);
    color: white;
    border-color: var(--green);
}
.cert-status-tab-count {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 22px;
    height: 22px;
    padding: 0 6px;
    border-radius: 999px;
    background: rgba(0, 0, 0, 0.08);
    font-size: 12px;
}
.cert-status-tab.active .cert-status-tab-count {
    background: rgba(255, 255, 255, 0.25);
}
.cert-status-order-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
}
.cert-status-order-card {
    border: 1px solid var(--line);
    border-radius: 8px;
    background: white;
    overflow: hidden;
}
.cert-status-order-head {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 16px 18px;
    background: #fbfaf7;
    border: 0;
    cursor: pointer;
    text-align: left;
    flex-wrap: wrap;
}
.cert-status-order-head strong {
    display: block;
    font-size: 16px;
    color: #142033;
}
.cert-status-order-head .subtext {
    display: block;
}
.cert-status-order-head-meta {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
}
.cert-status-caret {
    font-size: 20px;
    font-weight: 900;
    color: var(--muted);
    width: 24px;
    text-align: center;
}
.cert-status-cert-row {
    cursor: pointer;
}
.cert-status-cert-row:hover {
    background: #fbfaf7;
}
.cert-status-note {
    display: inline-block;
    padding: 4px 8px;
    border-radius: 999px;
    background: #fff7ed;
    color: #9a5b13;
    border: 1px solid #fde3c7;
    font-size: 11px;
    font-weight: 800;
}
.cert-status-pending-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 16px 18px;
    flex-wrap: wrap;
}
.cert-status-pending-head strong {
    display: block;
    font-size: 16px;
    color: #142033;
}
.cert-status-countdown-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 0 18px 16px;
}
.cert-status-countdown {
    display: inline-flex;
    align-items: center;
    padding: 6px 12px;
    border-radius: 8px;
    background: #142033;
    color: white;
    font-weight: 900;
    font-feature-settings: "tnum";
    font-variant-numeric: tabular-nums;
    letter-spacing: 0.5px;
}
.cert-status-countdown.due-now {
    background: var(--gold);
}
.cert-status-schedule-toggle {
    margin: 0 18px 16px;
    padding: 8px 14px;
    border-radius: 8px;
    border: 1px solid var(--line);
    background: white;
    color: var(--green);
    font-weight: 800;
    cursor: pointer;
}
.cert-status-schedule-list {
    list-style: none;
    margin: 0 18px 16px;
    padding: 0;
    border-top: 1px solid var(--line);
}
.cert-status-schedule-list li {
    display: flex;
    justify-content: space-between;
    padding: 8px 4px;
    border-bottom: 1px solid #f1f1f1;
    font-size: 13px;
}
.cert-status-detail-window {
    max-width: 760px;
}
.cert-status-modal-note {
    margin: 0 24px;
    padding: 12px 14px;
    border-radius: 8px;
    background: #fff7ed;
    color: #9a5b13;
    border: 1px solid #fde3c7;
    font-size: 13px;
}
.cert-status-toolbar {
    display: flex;
    gap: 8px;
    padding: 16px 24px 0;
}
.cert-status-modal-body {
    padding: 20px 24px 24px;
    overflow-y: auto;
}
.cert-status-tree,
.cert-status-tree-connector {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 6px;
}
.cert-status-tree-arrow {
    color: var(--muted);
    font-size: 18px;
}
.cert-status-tree-node {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2px;
    min-width: 220px;
    padding: 12px 16px;
    border: 1px solid var(--line);
    border-radius: 10px;
    background: #fbfaf7;
    text-align: center;
}
.cert-status-tree-label {
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: var(--muted);
    font-weight: 900;
}
.cert-status-tree-node strong {
    font-size: 15px;
    color: #142033;
}
.cert-status-tree-amount {
    margin-top: 4px;
    font-weight: 900;
    color: var(--green);
}
@media (max-width: 760px) {
    .cert-status-header {
        flex-direction: column;
        align-items: flex-start;
    }
    .cert-status-search,
    .cert-status-tabs {
        width: 100%;
    }
    .cert-status-tab {
        flex: 1 1;
        justify-content: center;
    }
}
.cert-status-order-card,
.cert-status-tab,
.export,
.full,
.manual,
.module,
.pill,
.print-order-button,
.refresh,
.small-action,
.subscriber,
a,
button,
input,
select,
textarea {
    transition:
        background-color 0.16s ease,
        color 0.16s ease,
        box-shadow 0.16s ease,
        transform 0.1s ease,
        border-color 0.16s ease,
        opacity 0.16s ease;
}
.module:hover {
    background: rgba(255, 255, 255, 0.6);
    color: #142033;
}
.module.active {
    transition:
        background-color 0.2s ease,
        box-shadow 0.2s ease;
}
.export:hover,
.full:hover,
.manual:hover,
.print-order-button:hover,
.small-action:hover,
.subscriber:hover {
    box-shadow: 0 4px 10px rgba(15, 23, 42, 0.16);
    filter: brightness(1.04);
}
.export:active,
.full:active,
.manual:active,
.print-order-button:active,
.refresh:active,
.small-action:active,
.subscriber:active {
    transform: scale(0.97);
}
.small-action.muted:hover {
    background: #e9eaec;
}
.refresh:hover {
    background: #e5e7eb;
}
tbody tr {
    transition: background-color 0.12s ease;
}
tbody tr:hover {
    background: #fafaf8;
}
.cert-status-cert-row:hover {
    background: #f5f7f4 !important;
}
.cert-status-order-card {
    transition:
        box-shadow 0.18s ease,
        transform 0.12s ease;
}
.cert-status-order-head:hover {
    background: #f6f4ee;
}
.cert-status-tree-node {
    transition:
        box-shadow 0.16s ease,
        transform 0.12s ease;
}
.certificate-detail-relations button {
    transition:
        background-color 0.14s ease,
        transform 0.1s ease;
}
.certificate-detail-relations button:hover {
    background: #f3f4f6;
}
.certificate-detail-relations button:active {
    transform: scale(0.98);
}
@keyframes certOverlayFadeIn {
    0% {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}
@keyframes certWindowScaleIn {
    0% {
        opacity: 0;
        transform: translateY(6px) scale(0.98);
    }
    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}
.certificate-tree-overlay {
    animation: certOverlayFadeIn 0.15s ease;
}
.certificate-detail-panel,
.certificate-tree-window {
    animation: certWindowScaleIn 0.18s cubic-bezier(0.2, 0.9, 0.3, 1);
}
@keyframes certDueNowPulse {
    0%,
    to {
        box-shadow: 0 0 0 0 rgba(212, 175, 55, 0.45);
    }
    50% {
        box-shadow: 0 0 0 6px rgba(212, 175, 55, 0);
    }
}
.cert-status-countdown.due-now {
    animation: certDueNowPulse 1.6s ease-in-out infinite;
}
.module:focus-visible,
.small-action:focus-visible,
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
    outline: 2px solid var(--green);
    outline-offset: 2px;
}
@media (prefers-reduced-motion: reduce) {
    *,
    :after,
    :before {
        animation-duration: 0.001ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.001ms !important;
    }
}
.dashboard {
    margin: 22px auto;
}
.modules-panel {
    padding: 12px;
    gap: 20px;
}
.module {
    min-height: 33px;
    height: auto;
    padding: 6px 12px;
}
.orders-panel {
    margin-top: 16px;
}
.filters {
    padding: 12px;
    gap: 10px;
}
th {
    height: 44px;
    padding: 9px 12px;
}
td {
    height: 64px;
    padding: 10px 12px;
}
.admin-content {
    padding: 16px;
}
.metric-grid {
    gap: 10px;
    margin-bottom: 14px;
}
.metric {
    padding: 14px;
}
.timeline-section {
    margin-top: 12px;
    padding: 16px;
}
.timeline-section h2 {
    margin: 0 0 12px;
}
.payment-detail-table {
    gap: 8px;
}
.payment-detail-table div {
    padding: 10px;
}
.cert-status-order-head {
    padding: 12px 16px;
}
.cert-status-countdown-row {
    padding: 0 16px 12px;
}
.cert-status-pending-head {
    padding: 12px 16px;
}
.cert-status-schedule-list,
.cert-status-schedule-toggle {
    margin: 0 16px 12px;
}
.cert-status-modal-body {
    padding: 16px 20px 20px;
}
.cert-status-toolbar {
    padding: 12px 20px 0;
}
.cert-status-wrap {
    gap: 12px;
}
.cert-no-link {
    border: 0;
    background: none;
    padding: 0;
    cursor: pointer;
    text-align: left;
    font: inherit;
}
.cert-no-link:hover {
    text-decoration: underline;
}
.cert-sno-link {
    border: 0;
    background: none;
    padding: 0;
    cursor: pointer;
    font: inherit;
    color: inherit;
}
.cert-sno-link:hover {
    text-decoration: underline;
    color: var(--green);
}
.ancestor-chain-panel {
    flex: none;
    align-self: center;
    width: auto;
    max-width: 92vw;
}
.ancestor-chain-body {
    padding: 28px 34px 34px;
    overflow-x: auto;
}
.ancestor-chain-row {
    gap: 0;
    width: max-content;
}
.ancestor-chain-item,
.ancestor-chain-row {
    display: flex;
    align-items: center;
}
.ancestor-chain-item .circuit-node {
    width: 130px;
}
.ancestor-chain-connector {
    width: 40px;
    height: 1.5px;
    margin: 0 2px;
}
.ancestor-chain-connector.dormant {
    background: #2a323d;
}
.ancestor-chain-connector.live {
    background: #2dd4bf;
    box-shadow: 0 0 6px rgba(45, 212, 191, 0.6);
    background-image: linear-gradient(90deg, #2dd4bf 50%, transparent 0);
    background-size: 10px 1.5px;
    animation: circuitFlowHorizontal 1s linear infinite;
}
.cert-breakup-head {
    align-items: flex-start;
    margin-bottom: 18px;
}
.cert-breakup-head,
.cert-breakup-toolbar {
    display: flex;
    justify-content: space-between;
}
.cert-breakup-toolbar {
    align-items: center;
    gap: 16px;
    margin-bottom: 16px;
}
.cert-breakup-toolbar form {
    display: flex;
    align-items: center;
    gap: 10px;
    flex: 1 1;
}
.cert-breakup-toolbar input {
    width: min(100%, 560px);
    min-height: 44px;
    padding: 10px 14px;
    border: 1px solid var(--line);
    border-radius: 12px;
    background: #fff;
    font: inherit;
}
.cert-breakup-list {
    display: grid;
    grid-gap: 14px;
    gap: 14px;
}
.admin-order-cards,
.mobile-orders-day-summary,
.orders-mobile-pagination {
    display: none;
}
.dispatch-day-summary {
    max-width: 460px;
    margin: 0 0 14px;
}
.dispatch-day-summary .mobile-orders-day-summary {
    display: grid;
    grid-template-columns: 40px minmax(0, 1fr) 40px;
    align-items: center;
    grid-gap: 4px;
    gap: 4px;
    min-height: 62px;
    border: 1px solid #d9e5de;
    border-radius: 9px;
    background: #f4f8f5;
    color: var(--green);
}
.dispatch-day-summary .orders-day-arrow {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 60px;
    color: var(--green);
    font-size: 21px;
    font-weight: 700;
    text-decoration: none;
    border-radius: 8px;
}
.dispatch-day-summary .orders-day-arrow:focus-visible {
    outline: 2px solid var(--green);
    outline-offset: -3px;
}
.dispatch-day-summary .orders-day-arrow.disabled {
    color: #a6b5ad;
}
.dispatch-day-summary .orders-day-values {
    min-width: 0;
    text-align: center;
}
.dispatch-day-summary .orders-day-counts {
    display: flex;
    justify-content: center;
    gap: 8px;
    white-space: nowrap;
    font-size: 16px;
    font-feature-settings: "tnum";
    font-variant-numeric: tabular-nums;
}
.dispatch-day-summary .orders-day-counts strong {
    font-weight: 800;
}
.dispatch-day-summary .orders-day-values time {
    display: block;
    margin-top: 4px;
    font-size: 16px;
    font-weight: 700;
    color: #607068;
}
.parcel-returns-stages {
    display: flex;
    flex-wrap: wrap;
    gap: 6px 14px;
    margin: 0 0 10px;
    font-size: 13px;
    color: #475569;
}
.parcel-returns-stages strong {
    color: var(--green);
}
@media (max-width: 700px) {
    .filters.orders-filters {
        grid-template-columns: minmax(0, 1fr) auto;
        gap: 8px;
    }
    .orders-filters input[name="orderRef"],
    .orders-filters input[name="orderSearch"] {
        grid-column: 1/-1;
    }
    .orders-filters select[name="orderStatus"] {
        display: none;
    }
    .mobile-orders-day-summary {
        grid-column: 1/-1;
        display: grid;
        grid-template-columns: 40px minmax(0, 1fr) 40px;
        align-items: center;
        grid-gap: 4px;
        gap: 4px;
        min-height: 62px;
        border: 1px solid #d9e5de;
        border-radius: 9px;
        background: #f4f8f5;
        color: var(--green);
    }
    .orders-day-arrow {
        display: flex;
        align-items: center;
        justify-content: center;
        min-height: 60px;
        color: var(--green);
        font-size: 21px;
        font-weight: 700;
        text-decoration: none;
        border-radius: 8px;
    }
    .orders-day-arrow:focus-visible {
        outline: 2px solid var(--green);
        outline-offset: -3px;
    }
    .orders-day-arrow.disabled {
        color: #a6b5ad;
    }
    .orders-day-values {
        min-width: 0;
        text-align: center;
    }
    .orders-day-counts {
        display: flex;
        justify-content: center;
        gap: 8px;
        white-space: nowrap;
        font-size: 16px;
        font-feature-settings: "tnum";
        font-variant-numeric: tabular-nums;
    }
    .orders-day-counts strong {
        font-weight: 800;
    }
    .orders-day-values time {
        display: block;
        margin-top: 4px;
        font-size: 16px;
        font-weight: 700;
        color: #607068;
    }
    .orders-desktop-pagination {
        display: none;
    }
    .orders-mobile-pagination {
        display: block;
    }
    .orders-filters .refresh {
        width: 46px;
    }
    .orders-filters .manual {
        min-width: 0;
        padding-inline: 10px;
        text-align: center;
    }
    .orders-table-wrap {
        display: none;
    }
    .admin-order-cards {
        display: grid;
        grid-gap: 8px;
        gap: 8px;
    }
    .mobile-order-card {
        overflow: hidden;
        border: 1px solid var(--line);
        border-radius: 12px;
        background: white;
        box-shadow: 0 2px 8px rgba(15, 35, 26, 0.05);
    }
    .mobile-order-card summary {
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto;
        grid-gap: 2px 8px;
        gap: 2px 8px;
        align-items: center;
        padding: 10px 10px 10px 12px;
        cursor: pointer;
        list-style: none;
    }
    .mobile-order-card summary::-webkit-details-marker {
        display: none;
    }
    .mobile-order-card summary:after {
        content: "›";
        grid-column: 2;
        grid-row: 1 / span 2;
        color: var(--muted);
        font-size: 20px;
        line-height: 1;
        transition: transform 0.15s;
    }
    .mobile-order-card[open] summary:after {
        transform: rotate(90deg);
    }
    .mobile-order-line {
        grid-column: 1;
        display: flex;
        align-items: center;
        gap: 2px 6px;
        min-width: 0;
    }
    .mobile-order-identity,
    .mobile-order-line:first-child {
        flex-wrap: wrap;
    }
    .mobile-order-identity > a:last-child,
    .mobile-order-line:first-child > :last-child {
        margin-left: auto;
        white-space: nowrap;
    }
    .mobile-order-serial {
        min-width: 18px;
        color: var(--muted);
        font-size: 12px;
        font-weight: 900;
        white-space: nowrap;
    }
    .mobile-order-number {
        color: var(--green);
        font-size: 15px;
        font-weight: 900;
    }
    .mobile-order-card time,
    .mobile-order-place {
        color: var(--muted);
        font-size: 11px;
        white-space: nowrap;
    }
    .mobile-order-payment {
        display: inline-flex;
        align-items: center;
        padding: 2px 6px;
        border-radius: 999px;
        background: #e8f4ec;
        color: #24683d;
        font-size: 10px;
        font-weight: 900;
        letter-spacing: 0.2px;
        text-transform: uppercase;
        white-space: nowrap;
    }
    .mobile-order-quantity {
        color: var(--muted);
        font-size: 11px;
        font-weight: 800;
        white-space: nowrap;
    }
    .mobile-order-amount {
        color: var(--green);
        font-size: 15px;
        white-space: nowrap;
    }
    .mobile-order-name {
        min-width: 0;
        overflow: hidden;
        font-size: 14px;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
    .mobile-order-referrer {
        min-width: 0;
        flex: 1 1 110px;
        color: var(--muted);
        font-size: 11px;
        line-height: 1.25;
    }
    .mobile-order-identity a {
        font-size: 13px;
    }
    .mobile-order-body {
        display: grid;
        grid-gap: 12px;
        gap: 12px;
        padding: 12px 12px 14px;
        border-top: 1px solid var(--line);
    }
    .mobile-order-place {
        margin: 0;
        font-size: 12px;
        white-space: normal;
    }
    .mobile-order-actions,
    .mobile-order-footer-actions {
        display: flex;
        align-items: center;
        flex-wrap: wrap;
        gap: 8px;
    }
    .mobile-order-delivery {
        display: grid;
        grid-template-columns: minmax(0, 1fr) minmax(0, 0.9fr);
        grid-gap: 10px;
        gap: 10px;
        padding: 11px;
        border-radius: 10px;
        background: #f5f7f2;
    }
    .mobile-order-delivery label {
        display: grid;
        grid-gap: 5px;
        gap: 5px;
        color: var(--muted);
        font-size: 11px;
        font-weight: 800;
    }
    .mobile-order-delivery input,
    .mobile-order-delivery select {
        width: 100%;
        min-width: 0;
        min-height: 44px;
        padding: 9px 10px;
        font-size: 14px;
    }
    .mobile-order-body dl {
        display: grid;
        grid-gap: 9px;
        gap: 9px;
        margin: 0;
    }
    .mobile-order-body dl > div {
        display: grid;
        grid-template-columns: minmax(0, 0.42fr) minmax(0, 0.58fr);
        grid-gap: 12px;
        gap: 12px;
        font-size: 12px;
    }
    .mobile-order-body dt {
        color: var(--muted);
    }
    .mobile-order-body dd {
        margin: 0;
        overflow-wrap: anywhere;
        text-align: right;
    }
    .mobile-order-body dd small {
        display: block;
        color: var(--muted);
    }
    .mobile-order-footer-actions .tiny {
        margin-left: auto;
    }
}
.cert-breakup-row {
    border: 1px solid var(--line);
    border-radius: 16px;
    background: #fff;
    overflow: hidden;
}
.cert-breakup-row > header {
    display: grid;
    grid-template-columns: 180px minmax(220px, 1fr) auto;
    grid-gap: 18px;
    gap: 18px;
    align-items: center;
    padding: 14px 18px;
    background: #f7f9fc;
    border-bottom: 1px solid var(--line);
}
.cert-breakup-row header div {
    display: grid;
    grid-gap: 3px;
    gap: 3px;
}
.cert-breakup-row header b {
    color: #111827;
}
.cert-breakup-row header span {
    color: #6b7280;
    font-size: 12px;
}
.cert-breakup-row header > strong {
    color: var(--green);
    white-space: nowrap;
}
.cert-breakup-chain {
    display: flex;
    align-items: center;
    width: 100%;
    overflow-x: auto;
    padding: 18px;
    background: var(--green);
}
.cert-breakup-chain-item {
    display: flex;
    align-items: center;
    flex: none;
}
.cert-breakup-node {
    width: 150px;
    min-height: 92px;
    display: grid;
    place-items: center;
    align-content: center;
    grid-gap: 2px;
    gap: 2px;
    padding: 10px;
    color: #f2ede1;
    border: 1px solid #2e4235;
    border-radius: 11px;
    background: #0d2a1c;
    text-align: center;
}
.cert-breakup-node.focused {
    border: 2px solid var(--gold);
    box-shadow: 0 0 10px rgba(197, 160, 89, 0.35);
}
.cert-breakup-node strong {
    color: var(--gold);
}
.cert-breakup-node small,
.cert-breakup-node span {
    color: #a9b8ae;
    font-size: 11px;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.cert-breakup-link {
    width: 34px;
    height: 2px;
    background: var(--gold);
    box-shadow: 0 0 5px rgba(197, 160, 89, 0.6);
}
.cert-breakup-empty {
    color: #a9b8ae;
    margin: 0;
}
.cert-breakup-pagination {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 14px;
    margin-top: 18px;
}
.cert-breakup-pagination div {
    display: flex;
    align-items: center;
    gap: 8px;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    padding-bottom: 2px;
    max-width: 100%;
}
.cert-breakup-pagination a,
.cert-breakup-pagination button {
    flex: none;
    min-height: 36px;
    padding: 7px 12px;
    border: 1px solid var(--line);
    border-radius: 9px;
    background: #fff;
    font-weight: 700;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    color: inherit;
    cursor: pointer;
}
.cert-breakup-pagination button:disabled {
    opacity: 0.45;
    cursor: default;
}
.cert-breakup-pagination a.active,
.cert-breakup-pagination button.active {
    color: #fff;
    border-color: var(--gold);
    background: var(--gold);
}
@media (max-width: 760px) {
    .cert-breakup-pagination,
    .cert-breakup-toolbar {
        align-items: stretch;
        flex-direction: column;
    }
    .cert-breakup-row > header {
        grid-template-columns: 1fr;
        gap: 8px;
    }
    .cert-breakup-row header > strong {
        white-space: normal;
    }
}
.partner-hierarchy-head {
    margin-bottom: 18px;
}
.partner-hierarchy-tools {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
    margin: 18px 0;
}
.partner-hierarchy-tools input {
    flex: 1 1;
    min-width: 280px;
    min-height: 42px;
    padding: 9px 13px;
    border: 1px solid #d7dee8;
    border-radius: 10px;
    font: inherit;
}
.partner-hierarchy-tools > div {
    display: flex;
    gap: 6px;
}
.partner-hierarchy-tools button,
.partner-hierarchy-tools select {
    min-height: 38px;
    padding: 7px 12px;
    border: 1px solid #d7dee8;
    border-radius: 9px;
    background: #fff;
    font-weight: 800;
}
.partner-hierarchy-tools button.active {
    color: #fff;
    background: #174f3b;
    border-color: #174f3b;
}
.partner-hierarchy-list {
    display: grid;
    grid-gap: 12px;
    gap: 12px;
}
.partner-hierarchy-row {
    overflow: hidden;
    border: 1px solid #dce3ec;
    border-radius: 15px;
    background: #fff;
}
.partner-hierarchy-row > header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 14px;
    padding: 11px 16px;
    background: #f7f9fc;
    border-bottom: 1px solid #e5eaf0;
}
.partner-hierarchy-row header div {
    display: grid;
    grid-gap: 2px;
    gap: 2px;
}
.partner-hierarchy-row header span {
    font-size: 12px;
    color: #64748b;
}
.partner-hierarchy-row header > strong {
    color: #0f766e;
}
.partner-hierarchy-chain {
    display: flex;
    align-items: center;
    overflow-x: auto;
    padding: 13px 16px;
    background: #0b1118;
}
.partner-hierarchy-chain-item {
    display: flex;
    align-items: center;
    flex: none;
}
.partner-hierarchy-chain-item > i {
    width: 28px;
    height: 2px;
    background: #2dd4bf;
    box-shadow: 0 0 5px rgba(45, 212, 191, 0.55);
}
.partner-hierarchy-node {
    width: 145px;
    min-height: 82px;
    padding: 9px;
    display: grid;
    align-content: center;
    grid-gap: 2px;
    gap: 2px;
    text-align: center;
    color: #e5edf6;
    background: #101923;
    border: 1px solid #2a3a48;
    border-radius: 10px;
}
.partner-hierarchy-node.focused {
    border: 2px solid #d7a536;
    box-shadow: 0 0 9px rgba(215, 165, 54, 0.3);
}
.partner-hierarchy-node.inactive {
    opacity: 0.58;
}
.partner-hierarchy-node strong {
    color: #2dd4bf;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.partner-hierarchy-node small,
.partner-hierarchy-node span {
    font-size: 10px;
    color: #91a0b2;
}
.hierarchy-warning {
    margin-left: 14px;
    padding: 8px;
    color: #fecaca;
    background: #7f1d1d;
    border-radius: 8px;
    white-space: nowrap;
}
.partner-hierarchy-pagination {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
    margin: 14px 0;
}
.partner-hierarchy-pagination > div {
    display: flex;
    gap: 6px;
    flex-wrap: wrap;
}
.partner-hierarchy-pagination button {
    min-height: 34px;
    padding: 6px 10px;
    border: 1px solid #d7dee8;
    border-radius: 8px;
    background: #fff;
    font-weight: 800;
}
.partner-hierarchy-pagination button.active {
    color: #fff;
    background: #caa24c;
    border-color: #caa24c;
}
.partner-hierarchy-pagination button:disabled {
    opacity: 0.4;
}
@media (max-width: 760px) {
    .partner-hierarchy-pagination {
        align-items: stretch;
        flex-direction: column;
    }
    .partner-hierarchy-row > header {
        align-items: flex-start;
        flex-direction: column;
    }
    .partner-hierarchy-tools {
        align-items: stretch;
        flex-direction: column;
    }
}
@keyframes circuitFlowHorizontal {
    0% {
        background-position: 0 0;
    }
    to {
        background-position: -10px 0;
    }
}
.circuit-overlay {
    position: fixed;
    inset: 0;
    z-index: 1000;
    padding: 18px;
    background: rgba(5, 7, 10, 0.72);
    display: flex;
    animation: certOverlayFadeIn 0.15s ease;
}
.circuit-panel {
    flex: 1 1;
    min-width: 0;
    border-radius: 18px;
    background: #0a0e14;
    box-shadow: 0 30px 90px rgba(0, 0, 0, 0.55);
    display: flex;
    flex-direction: column;
    overflow: hidden;
    border: 1px solid #1b222c;
    animation: certWindowScaleIn 0.18s cubic-bezier(0.2, 0.9, 0.3, 1);
}
.circuit-head {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 20px 26px;
    background: linear-gradient(#0a0e14 55%, transparent);
}
.circuit-eyebrow {
    display: block;
    color: #5b6472;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1.4px;
    margin-bottom: 4px;
}
.circuit-head h2 {
    margin: 0 0 4px;
    color: #e7ecf2;
    font-size: 26px;
    font-family:
        ui-monospace,
        SF Mono,
        Cascadia Code,
        Roboto Mono,
        Consolas,
        monospace;
    font-weight: 600;
    letter-spacing: 0.3px;
}
.circuit-head p {
    margin: 0;
    color: #5b6472;
    font-size: 12px;
}
.circuit-legend {
    display: flex;
    gap: 16px;
    color: #8b94a3;
    font-size: 12px;
    align-items: center;
}
.circuit-legend .dot {
    display: inline-block;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    margin-right: 6px;
}
.circuit-legend .dot.live {
    background: #2dd4bf;
    box-shadow: 0 0 8px rgba(45, 212, 191, 0.7);
}
.circuit-legend .dot.dormant {
    background: #4b5563;
}
.circuit-close {
    width: 36px;
    height: 36px;
    border: 1px solid #262e39;
    border-radius: 999px;
    background: #10151d;
    color: #8b94a3;
    font-size: 22px;
    line-height: 1;
    cursor: pointer;
    flex-shrink: 0;
}
.circuit-close:hover {
    color: #e7ecf2;
    border-color: #3a4451;
}
.circuit-panel {
    position: relative;
}
.circuit-panel:before {
    content: "";
    position: absolute;
    inset: 0;
    background-image: radial-gradient(#161c24 1px, transparent 0);
    background-size: 22px 22px;
    pointer-events: none;
}
.circuit-canvas-wrap {
    flex: 1 1;
    position: relative;
    overflow: hidden;
    cursor: -webkit-grab;
    cursor: grab;
    touch-action: none;
}
.circuit-canvas-wrap:active {
    cursor: -webkit-grabbing;
    cursor: grabbing;
}
.circuit-canvas {
    position: absolute;
    top: 0;
    left: 0;
    will-change: transform;
}
.circuit-zoom {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
    gap: 2px;
    background: #10151d;
    border: 1px solid #262e39;
    border-radius: 999px;
    padding: 3px;
}
.circuit-zoom button {
    width: 30px;
    height: 30px;
    border: 0;
    border-radius: 999px;
    background: transparent;
    color: #8b94a3;
    font-size: 15px;
    cursor: pointer;
    font-family: ui-monospace, monospace;
}
.circuit-zoom button:hover {
    background: #1b222c;
    color: #e7ecf2;
}
.circuit-zoom button:nth-child(2) {
    width: auto;
    padding: 0 8px;
    font-size: 11px;
}
.circuit-traces {
    position: absolute;
    top: 0;
    left: 0;
    overflow: visible;
    pointer-events: none;
}
.trace {
    stroke-width: 1.5;
    fill: none;
}
.trace.dormant {
    stroke: #2a323d;
}
.trace.live {
    stroke: #2dd4bf;
    stroke-dasharray: 6 5;
    animation: circuitFlow 1.4s linear infinite;
    filter: drop-shadow(0 0 3px rgba(45, 212, 191, 0.55));
}
.circuit-node-wrap {
    position: absolute;
    width: 124px;
}
.circuit-node {
    width: 100%;
    min-height: 46px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 2px;
    padding: 5px 8px;
    border-radius: 7px;
    cursor: pointer;
    text-align: center;
    transition:
        transform 0.12s ease,
        border-color 0.12s ease;
}
.circuit-node.dormant {
    background: #12161d;
    border: 1px solid #262e39;
}
.circuit-node.live {
    background: #0d1e1c;
    border: 1px solid #1d5c55;
}
.circuit-node.focused {
    border: 1.5px solid #e8a33d;
    box-shadow:
        0 0 0 3px rgba(232, 163, 61, 0.16),
        0 0 14px rgba(232, 163, 61, 0.25);
}
.circuit-node.hovered,
.circuit-node:hover {
    transform: translateY(-1px);
    border-color: #e8a33d;
}
.circuit-node-id {
    font-family:
        ui-monospace,
        SF Mono,
        Cascadia Code,
        Roboto Mono,
        Consolas,
        monospace;
    font-size: 13px;
    font-weight: 600;
    color: #e7ecf2;
    line-height: 1.1;
}
.circuit-node-meta {
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.3px;
    color: #6b7684;
    line-height: 1.1;
    white-space: nowrap;
}
.circuit-node.live .circuit-node-meta {
    color: #2dd4bf;
}
.circuit-expand {
    position: absolute;
    left: 50%;
    bottom: -10px;
    transform: translateX(-50%);
    width: 22px;
    height: 22px;
    border-radius: 999px;
    background: #171d26;
    border: 1px solid #e8a33d;
    color: #e8a33d;
    font-size: 11px;
    font-weight: 700;
    font-family: ui-monospace, monospace;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1;
}
.circuit-expand:hover {
    background: #e8a33d;
    color: #0a0e14;
}
.circuit-expand.collapse {
    background: #1d2733;
    border-color: #4b5563;
    color: #9ba5b3;
}
.circuit-expand.collapse:hover {
    background: #4b5563;
    color: #0a0e14;
}
.circuit-scrollbar {
    position: absolute;
    z-index: 3;
    background: rgba(255, 255, 255, 0.04);
    border-radius: 999px;
}
.circuit-scrollbar.horizontal {
    left: 12px;
    right: 12px;
    bottom: 8px;
    height: 8px;
}
.circuit-scrollbar.vertical {
    top: 12px;
    bottom: 12px;
    right: 8px;
    width: 8px;
}
.circuit-scrollbar-thumb {
    position: absolute;
    background: #2f3946;
    border-radius: 999px;
    cursor: pointer;
}
.circuit-scrollbar-thumb:hover {
    background: #4b5563;
}
.circuit-scrollbar.horizontal .circuit-scrollbar-thumb {
    top: 0;
    height: 100%;
}
.circuit-scrollbar.vertical .circuit-scrollbar-thumb {
    left: 0;
    width: 100%;
}
@keyframes circuitFlow {
    to {
        stroke-dashoffset: -22;
    }
}
@media (prefers-reduced-motion: reduce) {
    .trace.live {
        animation: none;
    }
}
.bulk-mark-delivered-tick {
    margin-left: 6px;
    width: 22px;
    height: 22px;
    line-height: 20px;
    padding: 0;
    border-radius: 50%;
    border: 1px solid #1f6f43;
    background: #eafaf1;
    color: #1f6f43;
    font-size: 13px;
    font-weight: 700;
    cursor: pointer;
}
.bulk-mark-delivered-tick:hover:not(:disabled) {
    background: #1f6f43;
    color: #fff;
}
.bulk-mark-delivered-tick:disabled {
    opacity: 0.6;
    cursor: default;
}
.bulk-mark-delivered-range-trigger {
    margin-left: 4px;
    width: 22px;
    height: 22px;
    line-height: 20px;
    padding: 0;
    border-radius: 50%;
    border: 1px solid #1f6f43;
    background: #eafaf1;
    color: #1f6f43;
    font-size: 13px;
    font-weight: 700;
    cursor: pointer;
}
.bulk-mark-delivered-range-trigger:hover {
    background: #1f6f43;
    color: #fff;
}
.range-modal {
    width: min(100%, 420px);
}
.range-modal-body {
    padding: 32px 28px;
}
.range-modal-body h3 {
    margin: 0 0 8px;
    color: #061e13;
    font-size: 22px;
}
.range-modal-body p {
    margin: 0 0 20px;
    color: #6b7280;
    font-size: 14px;
}
.range-modal-fields {
    display: flex;
    gap: 14px;
    margin-bottom: 16px;
}
.range-modal-fields label {
    flex: 1 1;
    display: flex;
    flex-direction: column;
    gap: 6px;
    font-size: 13px;
    font-weight: 700;
    color: #374151;
}
.range-modal-fields input {
    padding: 10px 12px;
    border-radius: 10px;
    border: 1px solid #d8d8d8;
    font-size: 15px;
}
.range-modal-error {
    margin: 0 0 14px;
    color: #b91c1c;
    font-size: 13px;
    font-weight: 600;
}
.range-modal-submit {
    width: 100%;
    padding: 12px;
    border-radius: 10px;
    border: 0;
    background: #1f6f43;
    color: #fff;
    font-weight: 700;
    cursor: pointer;
}
.range-modal-submit:disabled {
    opacity: 0.6;
    cursor: default;
}
.bank-sheet-split {
    position: relative;
    display: inline-block;
}
.bank-sheet-split-menu {
    position: absolute;
    top: calc(100% + 4px);
    left: 0;
    z-index: 20;
    background: #fff;
    border: 1px solid #d8d8d8;
    border-radius: 8px;
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.12);
    min-width: 88px;
    overflow: hidden;
}
.bank-sheet-split-menu a {
    display: block;
    padding: 8px 14px;
    color: #1f2937;
    text-decoration: none;
    font-weight: 600;
    font-size: 14px;
}
.bank-sheet-split-menu a:hover {
    background: #f3f4f6;
}
.bank-sheet-split-menu a + a {
    border-top: 1px solid #eee;
}
.admin-edit-password-backdrop {
    position: fixed;
    inset: 0;
    z-index: 10000;
    display: grid;
    place-items: center;
    padding: 20px;
    background: rgba(2, 18, 12, 0.72);
    -webkit-backdrop-filter: blur(3px);
    backdrop-filter: blur(3px);
}
.admin-edit-password-dialog {
    width: min(440px, 100%);
    padding: 26px;
    border: 1px solid rgba(204, 161, 77, 0.48);
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 24px 70px rgba(0, 0, 0, 0.34);
}
.admin-edit-password-dialog h2 {
    margin: 0 0 8px;
}
.admin-edit-password-dialog p {
    margin: 0 0 18px;
    color: #5e6876;
}
.admin-edit-password-dialog input {
    width: 100%;
    min-height: 48px;
    padding: 10px 13px;
    border: 1px solid #cfd6df;
    border-radius: 10px;
    font-size: 18px;
}
.admin-edit-password-dialog input:focus {
    outline: 3px solid rgba(204, 161, 77, 0.22);
    border-color: #cca14d;
}
.admin-edit-password-error {
    margin-top: 10px;
    color: #b42318;
    font-weight: 700;
}
.admin-edit-password-actions {
    display: flex;
    justify-content: flex-end;
    gap: 10px;
    margin-top: 20px;
}
@media (max-width: 820px) {
    .partner-side-nav,
    .partner-sidebar {
        overflow: visible !important;
    }
    .partner-side-nav {
        display: grid !important;
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        grid-gap: 8px !important;
        gap: 8px !important;
        overflow-x: visible !important;
        white-space: normal !important;
    }
    .partner-side-nav a {
        min-width: 0 !important;
        width: 100% !important;
        min-height: 42px !important;
        padding: 8px 6px !important;
        justify-content: center !important;
        text-align: center !important;
        white-space: normal !important;
        line-height: 1.15 !important;
    }
    .partner-side-nav a span:last-child {
        white-space: normal !important;
        overflow: visible !important;
        text-overflow: clip !important;
    }
}
.address-demo-hero {
    padding-bottom: 38px;
}
.address-demo-badge {
    display: inline-flex;
    margin-bottom: 14px;
    border: 1px solid rgba(197, 160, 89, 0.55);
    border-radius: 999px;
    padding: 7px 12px;
    background: rgba(255, 255, 255, 0.75);
    color: #765a1c;
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}
.address-demo-page {
    min-height: 650px;
}
.address-demo-shell {
    width: min(100%, 760px);
}
.address-demo-summary {
    margin-bottom: 18px;
    border: 1px solid #dfd2b4;
    border-radius: 14px;
    padding: 15px 18px;
    background: #fffaf0;
    display: grid;
    grid-gap: 3px;
    gap: 3px;
}
.address-demo-summary strong {
    color: var(--green);
    font-size: 18px;
}
.address-demo-summary span {
    color: #64748b;
    font-size: 13px;
    line-height: 1.5;
}
.address-demo-form .order-summary h2 {
    margin: 10px 0 6px;
    color: var(--green);
    font-size: clamp(25px, 4vw, 34px);
}
.address-demo-field {
    display: block;
    margin-bottom: 16px;
}
.address-demo-field > span {
    margin-bottom: 8px;
    display: flex;
    justify-content: space-between;
    gap: 12px;
    color: #24352f;
    font-size: 14px;
    font-weight: 800;
}
.address-demo-field small {
    color: #84918d;
    font-weight: 700;
}
.address-demo-field input,
.address-demo-field select,
.address-demo-field textarea {
    width: 100%;
    border: 1px solid #d7ddd9;
    border-radius: 11px;
    padding: 13px 14px;
    background: #fff;
    color: #1f2937;
    font: inherit;
}
.address-demo-field input,
.address-demo-field select {
    min-height: 50px;
}
.address-demo-field textarea {
    resize: vertical;
    line-height: 1.5;
}
.address-demo-derived,
.address-demo-label-preview {
    margin: 2px 0 18px;
    border-radius: 12px;
    padding: 15px 16px;
    display: grid;
    grid-gap: 4px;
    gap: 4px;
}
.address-demo-derived {
    border: 1px solid #cce6d5;
    background: #f2fbf5;
}
.address-demo-derived span,
.address-demo-label-preview span {
    color: #64748b;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}
.address-demo-derived strong {
    color: var(--green);
}
.address-demo-derived small {
    color: #64748b;
}
.address-demo-label-preview {
    border: 1px dashed #d6bf88;
    background: #fffcf5;
}
.address-demo-label-preview code {
    color: #34443e;
    font-family: inherit;
    font-size: 13px;
    font-weight: 800;
    line-height: 1.7;
    white-space: normal;
}
.address-demo-button {
    width: 100%;
    border: 0;
    opacity: 0.72;
    cursor: default;
}
@media (max-width: 620px) {
    .address-demo-form {
        padding: 26px 20px;
    }
    .address-demo-summary {
        margin-inline: 0;
    }
}
@media (max-width: 820px) {
    .partner-side-nav a:first-child {
        background: #ffffff;
        color: #052e1d;
    }
    .partner-side-nav a:nth-child(2) {
        background: #eef6ff;
        color: #1e3a5f;
    }
    .partner-side-nav a:nth-child(3) {
        background: #f3f8ec;
        color: #365314;
    }
    .partner-side-nav a:nth-child(4) {
        background: #fff7e6;
        color: #854d0e;
    }
    .partner-side-nav a:nth-child(5) {
        background: #f1f5ff;
        color: #3730a3;
    }
    .partner-side-nav a:nth-child(6) {
        background: #f7efff;
        color: #6b21a8;
    }
    .partner-side-nav a:nth-child(7) {
        background: #ecfdf5;
        color: #047857;
    }
    .partner-side-nav a:nth-child(8) {
        background: #fff1f2;
        color: #9f1239;
    }
    .partner-side-nav a:nth-child(9) {
        background: #f0fdfa;
        color: #0f766e;
    }
    .partner-side-nav a.active {
        border-color: rgba(197, 160, 89, 0.8) !important;
        box-shadow: 0 2px 8px rgba(15, 23, 42, 0.12);
        filter: saturate(1.12);
    }
}
.accounts-report-controls {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin: 18px 0;
}
.accounts-search-form {
    display: flex;
    gap: 8px;
    align-items: center;
    flex-wrap: wrap;
}
.accounts-search-input {
    flex: 1 1;
    min-width: 200px;
    padding: 6px 10px;
    border: 1px solid var(--border);
    border-radius: 6px;
    font-size: 0.9rem;
    background: var(--bg);
    color: var(--text);
}
.accounts-filter-pills {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}
.filter-pill {
    padding: 4px 12px;
    border-radius: 20px;
    border: 1px solid var(--border);
    font-size: 0.85rem;
    text-decoration: none;
    color: var(--text);
    background: var(--bg);
}
.filter-pill.active {
    background: var(--gold, #b8860b);
    color: #fff;
    border-color: var(--gold, #b8860b);
}
.accounts-report-table-wrap {
    overflow-x: auto;
    margin-top: 8px;
}
.accounts-report-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.9rem;
}
.accounts-report-table th {
    text-align: left;
    padding: 8px 10px;
    border-bottom: 2px solid var(--border);
    font-weight: 600;
    white-space: nowrap;
}
.accounts-report-table td {
    padding: 8px 10px;
    border-bottom: 1px solid var(--border);
    vertical-align: middle;
}
.accounts-report-table tr:hover td {
    background: var(--hover-bg, rgba(0, 0, 0, 0.03));
}
.account-last-login {
    display: block;
    white-space: nowrap;
}
.account-login-failed {
    display: block;
    margin-top: 2px;
    font-size: 0.78rem;
    color: #b91c1c;
}
@media (max-width: 720px) {
    .accounts-report-table-wrap {
        overflow-x: visible;
    }
    .accounts-report-table thead {
        display: none;
    }
    .accounts-report-table,
    .accounts-report-table tbody,
    .accounts-report-table td,
    .accounts-report-table tr {
        display: block;
        width: 100%;
    }
    .accounts-report-table tr {
        margin-bottom: 10px;
        padding: 6px 12px;
        border: 1px solid var(--border);
        border-radius: 8px;
    }
    .accounts-report-table td {
        display: flex;
        justify-content: space-between;
        align-items: flex-start;
        gap: 12px;
        height: auto;
        padding: 6px 0;
        border-bottom: 1px solid var(--border);
        text-align: right;
    }
    .accounts-report-table td:last-child {
        border-bottom: 0;
    }
    .accounts-report-table td:before {
        content: attr(data-label);
        flex-shrink: 0;
        font-weight: 600;
        color: var(--muted);
        text-align: left;
    }
    .accounts-report-table td.accounts-empty {
        display: block;
        text-align: center;
    }
    .accounts-report-table td.accounts-empty:before {
        content: none;
    }
    .accounts-report-table td > * {
        min-width: 0;
        overflow-wrap: anywhere;
    }
    .account-last-login {
        white-space: normal;
    }
}
.account-row-inactive td {
    opacity: 0.55;
}
.accounts-empty {
    text-align: center;
    padding: 24px;
    color: var(--muted);
}
.password-default-badge {
    background: #fef3c7;
    color: #92400e;
    font-weight: 600;
}
.password-default-badge,
.password-own-badge {
    border-radius: 4px;
    padding: 2px 7px;
    font-size: 0.8rem;
}
.password-own-badge {
    background: #d1fae5;
    color: #065f46;
}
.verified-yes {
    color: #065f46;
    font-weight: 600;
}
.verified-no {
    color: #b91c1c;
}
.account-reset-cell {
    display: flex;
    flex-direction: column;
    gap: 4px;
}
.account-reset-done {
    color: #065f46;
    font-weight: 600;
    font-size: 0.85rem;
}
.account-reset-cell .small-action {
    color: #111 !important;
    border-color: #aaa;
}
.account-reset-error {
    font-size: 0.78rem;
    color: #b91c1c;
}
.partner-set-password-card {
    width: min(100% - 32px, 480px);
    padding: 28px 22px 30px;
}
.partner-set-password-card .partner-profile-card {
    min-height: 0;
    box-shadow: none;
    border: 0;
    padding: 0;
    margin: 0;
}
.partner-set-password-card .partner-profile-grid {
    grid-template-columns: 1fr;
}
.partner-password-later-row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 6px 12px;
    margin-top: 14px;
    color: #6b7280;
    font-size: 13px;
    text-align: center;
}
.partner-password-later {
    padding: 10px 22px;
    border: 1px solid #d1d5db;
    border-radius: 999px;
    background: #fff;
    color: #374151;
    font-weight: 700;
    cursor: pointer;
}
.partner-set-password-card .partner-set-password-who {
    margin: 0 0 8px;
    font-weight: 700;
    color: #245a45;
    overflow-wrap: anywhere;
}
.partner-set-password-card .partner-set-password-help {
    margin: 14px 0 0;
    font-size: 0.85rem;
    color: #555;
}
.dispatch-table-wrap td.dispatch-date {
    white-space: nowrap;
}
.parcel-returns-card {
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 12px;
    padding: 16px;
    margin-top: 16px;
}
.parcel-returns-card h3 {
    margin: 0 0 8px;
}
.parcel-returns-card p {
    margin: 0 0 10px;
}
.parcel-returns-find {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    align-items: flex-end;
}
.parcel-returns-find label,
.parcel-returns-order label {
    display: grid;
    grid-gap: 4px;
    gap: 4px;
    font-size: 13px;
    font-weight: 700;
}
.parcel-returns-find input {
    width: 170px;
}
.parcel-returns-order {
    margin-top: 14px;
    display: grid;
    grid-gap: 10px;
    gap: 10px;
    justify-items: start;
}
.parcel-returns-order dl {
    display: grid;
    grid-template-columns: max-content 1fr;
    grid-gap: 4px 12px;
    gap: 4px 12px;
    margin: 0;
    width: 100%;
}
.parcel-returns-order dt {
    color: #64748b;
    font-size: 13px;
}
.parcel-returns-order dd {
    margin: 0;
    overflow-wrap: anywhere;
}
.parcel-returns-order input,
.parcel-returns-order select {
    max-width: 100%;
}
.parcel-returns-error {
    color: #9c0006;
    font-weight: 700;
}
.parcel-returns-warning {
    background: #fff7e6;
    border: 1px solid #f5c26b;
    border-radius: 8px;
    padding: 8px 10px;
}
.parcel-returns-message {
    color: #0b6b46;
    font-weight: 700;
}
.parcel-returns-list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    grid-gap: 10px;
    gap: 10px;
}
.parcel-returns-list li {
    border: 1px solid var(--line);
    border-radius: 10px;
    padding: 10px 12px;
    display: grid;
    grid-gap: 4px;
    gap: 4px;
    font-size: 14px;
    overflow-wrap: anywhere;
}
.parcel-returns-list button {
    justify-self: start;
    margin-top: 4px;
}
.parcel-returns-row-head {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: baseline;
}
.parcel-returns-qty {
    font-weight: 700;
}
.parcel-returns-muted {
    color: #64748b;
    font-size: 13px;
}
@media (max-width: 640px) {
    .parcel-returns-card {
        padding: 12px;
    }
    .parcel-returns-find {
        flex-direction: column;
        align-items: stretch;
    }
    .parcel-returns-find input {
        width: 100%;
    }
    .parcel-returns-order dl {
        grid-template-columns: 1fr;
        gap: 0;
    }
    .parcel-returns-order dd {
        margin-bottom: 6px;
    }
}
.parcel-returns-waiting {
    color: #9a6700;
    font-weight: 700;
}
.parcel-returns-sent {
    color: #0b6b46;
    font-weight: 700;
}
.my-order-status.status-returned {
    background: #fff7e6;
    color: #9a6700;
}
.partner-recall-start {
    margin-top: 12px;
}
.partner-recall-form {
    display: grid;
    grid-gap: 10px;
    gap: 10px;
    margin-top: 14px;
}
.partner-recall-form label {
    display: grid;
    grid-gap: 4px;
    gap: 4px;
    font-size: 13px;
    font-weight: 700;
}
.partner-recall-form input {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
}
.partner-recall-fee {
    background: #f1f8f4;
    border: 1px solid #cfe7d9;
    border-radius: 10px;
    padding: 10px 12px;
}
.partner-recall-form .partner-recall-agree {
    display: flex;
    gap: 8px;
    align-items: flex-start;
    font-weight: 600;
}
.partner-recall-form .partner-recall-agree input {
    width: auto;
    margin-top: 3px;
}
.partner-recall-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    align-items: center;
}
.partner-recall-receipt dl {
    display: grid;
    grid-template-columns: max-content 1fr;
    grid-gap: 4px 12px;
    gap: 4px 12px;
    margin: 8px 0;
}
.partner-recall-receipt dt {
    color: #64748b;
}
.partner-recall-receipt dd {
    margin: 0;
    overflow-wrap: anywhere;
}
.partner-recall-recent-heading {
    margin-top: 22px;
}
@media (max-width: 640px) {
    .partner-recall-receipt dl {
        grid-template-columns: 1fr;
        gap: 0;
    }
    .partner-recall-receipt dd {
        margin-bottom: 6px;
    }
    .partner-recall-actions .cta {
        width: 100%;
    }
}
.partner-recall-notice {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 16px;
    align-items: center;
    justify-content: space-between;
    padding: 12px 16px;
    background: #fff7e6;
    border-bottom: 2px solid #f5c26b;
    color: #7a4b00;
}
.partner-recall-notice p {
    margin: 0;
    flex: 1 1 260px;
    line-height: 1.45;
}
.partner-recall-notice .cta {
    flex: 0 0 auto;
    text-decoration: none;
}
.family-reminder-backdrop {
    position: fixed;
    inset: 0;
    z-index: 90;
    display: grid;
    place-items: center;
    padding: 16px;
    background: rgba(0, 0, 0, 0.5);
}
.family-reminder {
    width: min(100%, 420px);
    padding: 24px 22px 20px;
    border-radius: 18px;
    background: #fff;
    text-align: center;
    box-shadow: 0 24px 60px rgba(0, 0, 0, 0.28);
}
.family-reminder h2 {
    margin: 0 0 10px;
    font-size: 22px;
    color: #17212c;
}
.family-reminder p {
    margin: 0 0 20px;
    color: #4b5563;
    line-height: 1.5;
}
.family-reminder-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: center;
}
.family-reminder-actions .cta {
    text-decoration: none;
}
.family-reminder-later {
    padding: 10px 18px;
    border: 1px solid #d1d5db;
    border-radius: 999px;
    background: #fff;
    color: #374151;
    font-weight: 700;
    cursor: pointer;
}
.track-order-tabs button span.attention {
    background: #f59e0b;
    color: #fff;
}
@media (max-width: 640px) {
    .partner-recall-notice .cta {
        width: 100%;
        text-align: center;
        box-sizing: border-box;
    }
}
.partner-recall-admin-note {
    margin: 12px 0 0;
    padding: 8px 10px;
    border-radius: 8px;
    background: #eef2f7;
    color: #334155;
    font-size: 13px;
}
.parcel-returns-table {
    border: 1px solid var(--line);
    border-radius: 10px;
    overflow: hidden;
    font-size: 14px;
}
.parcel-returns-head,
.parcel-returns-row > summary {
    display: grid;
    grid-template-columns: 78px minmax(0, 1.2fr) 48px 104px minmax(0, 1.8fr) minmax(0, 1.3fr) 22px;
    align-items: center;
}
.parcel-returns-head {
    background: #f3f4f6;
    color: #475569;
    font-size: 12px;
    font-weight: 800;
}
.parcel-returns-note {
    color: #334155;
    font-style: normal;
    font-weight: 700;
}
.partner-recall-office-note {
    grid-column: 1/-1;
    padding: 8px 10px;
}
.parcel-returns-note-line,
.partner-recall-office-note {
    border-left: 3px solid var(--gold);
    background: #fffbeb;
    overflow-wrap: anywhere;
}
.parcel-returns-note-line {
    padding: 6px 10px;
    color: #1f2937;
}
.parcel-returns-head span,
.parcel-returns-row > summary > span {
    padding: 8px 10px;
    border-right: 1px solid var(--line);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.parcel-returns-row {
    border-top: 1px solid var(--line);
}
.parcel-returns-row > summary {
    cursor: pointer;
    list-style: none;
}
.parcel-returns-row > summary::-webkit-details-marker {
    display: none;
}
.parcel-returns-row > summary:after {
    content: "\25B8";
    text-align: center;
    color: #64748b;
}
.parcel-returns-row[open] > summary:after {
    content: "\25BE";
}
.parcel-returns-row > summary:hover,
.parcel-returns-row[open] > summary {
    background: #f8fafc;
}
.parcel-returns-more {
    display: grid;
    grid-gap: 4px;
    gap: 4px;
    padding: 10px 12px 12px;
    border-top: 1px dashed var(--line);
    background: #fbfcfe;
    overflow-wrap: anywhere;
}
.parcel-returns-more p {
    margin: 0;
}
.parcel-returns-more button {
    justify-self: start;
    margin-top: 4px;
}
@media (max-width: 640px) {
    .parcel-returns-head,
    .parcel-returns-row > summary {
        grid-template-columns: 64px minmax(0, 1fr) 96px 22px;
    }
    .parcel-returns-table .wide-only {
        display: none;
    }
    .parcel-returns-head span,
    .parcel-returns-row > summary > span {
        padding: 8px;
    }
}
.partner-recall-form {
    margin-top: 0;
    padding: 0 18px 18px;
}
.partner-recall-old {
    display: grid;
    grid-gap: 4px;
    gap: 4px;
    padding: 10px 12px;
    border: 1px solid #e2e8f0;
    border-radius: 10px;
    background: #f8fafc;
}
.partner-recall-old p {
    margin: 0;
    line-height: 1.45;
    overflow-wrap: anywhere;
}
.partner-recall-hint {
    margin: 0;
    color: #475569;
    font-size: 13px;
    line-height: 1.45;
}
.partner-recall-fields {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-gap: 10px 14px;
    gap: 10px 14px;
}
.partner-recall-form input:disabled {
    background: #f3f4f6;
    color: #475569;
}
.partner-recall-form .partner-recall-admin-note {
    margin: 0;
}
.partner-recall-reset {
    padding: 10px 16px;
    border: 1px solid #cbd5e1;
    border-radius: 8px;
    background: #fff;
    color: #334155;
    font: inherit;
    font-weight: 700;
    cursor: pointer;
}
.parcel-returns-change {
    display: grid;
    grid-template-columns: max-content minmax(0, 1fr);
    grid-gap: 6px 12px;
    gap: 6px 12px;
    margin: 0 0 4px;
}
.parcel-returns-change dt {
    color: #64748b;
    font-size: 12px;
    font-weight: 800;
    text-transform: uppercase;
    padding-top: 2px;
}
.parcel-returns-change dd {
    margin: 0;
    overflow-wrap: anywhere;
}
.parcel-returns-actions,
.parcel-returns-print {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
}
.parcel-returns-print {
    margin: 0 0 10px;
}
.parcel-returns-print span {
    margin-right: 4px;
    font-weight: 700;
}
.payout-view-tabs {
    margin: 0 0 16px;
}
.bank-steps {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 320px), 1fr));
    grid-gap: 14px;
    gap: 14px;
    margin: 14px 0 18px;
}
.bank-step {
    min-width: 0;
    border: 1px solid var(--line);
    border-left: 5px solid var(--gold);
    border-radius: 12px;
    padding: 16px;
    background: #fff;
}
.bank-step h3 {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0 0 6px;
    color: var(--green);
    font-size: 19px;
    font-weight: 900;
}
.bank-step h3 span {
    width: 28px;
    height: 28px;
    border-radius: 999px;
    background: var(--gold);
    color: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 15px;
    flex: none;
}
.bank-step > p {
    margin: 0 0 12px;
    color: #64748b;
    font-size: 13px;
    font-weight: 700;
}
.bank-step form {
    display: grid;
    grid-gap: 10px;
    gap: 10px;
}
.bank-step-field {
    display: grid;
    grid-gap: 4px;
    gap: 4px;
}
.bank-step-field span,
.bank-step-roles legend {
    color: #334155;
    font-size: 12px;
    font-weight: 900;
}
.bank-step-field select {
    min-height: 42px;
    width: 100%;
    border: 1px solid #d9e1ec;
    border-radius: 8px;
    padding: 8px 10px;
    background: #fff;
    color: #334155;
    font: inherit;
    font-size: 15px;
    font-weight: 800;
}
.bank-step-roles {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 8px;
    gap: 8px;
    margin: 0;
    padding: 0;
    border: 0;
    min-width: 0;
}
.bank-step-roles legend {
    margin-bottom: 4px;
    padding: 0;
}
.bank-step-roles label {
    position: relative;
}
.bank-step-roles input {
    position: absolute;
    opacity: 0;
    inset: 0;
    margin: 0;
    cursor: pointer;
}
.bank-step-roles span {
    min-height: 42px;
    border: 1px solid #d9e1ec;
    border-radius: 8px;
    background: #f8fafc;
    color: #334155;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 900;
}
.bank-step-roles input:checked + span {
    border-color: var(--gold);
    background: var(--gold);
    color: #fff;
}
.bank-step-roles input:focus-visible + span {
    outline: 2px solid var(--green);
    outline-offset: 2px;
}
.bank-step .payout-bank-file {
    max-width: none;
    width: 100%;
    min-height: 42px;
}
.bank-step .payout-bank-comment {
    width: 100%;
}
.bank-step .payout-bank-button {
    width: 100%;
    min-height: 44px;
}
.bank-step-older summary {
    cursor: pointer;
    color: #59695f;
    font-size: 12px;
    font-weight: 800;
}
.bank-step-older .legacy-bank-fund {
    margin-top: 8px;
    font-size: 12px;
}
.bank-status-list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    grid-gap: 8px;
    gap: 8px;
}
.bank-status-list li {
    display: grid;
    grid-gap: 2px;
    gap: 2px;
    padding: 8px 10px;
    border-radius: 8px;
    background: #f8fafc;
    font-size: 13px;
    color: #334155;
    overflow-wrap: anywhere;
}
.bank-status-list strong {
    color: var(--green);
}
@media (max-width: 640px) {
    .payout-view-tabs {
        display: grid;
        grid-template-columns: 1fr 1fr;
        grid-gap: 8px;
        gap: 8px;
    }
    .payout-view-tabs .owner-earning-chip {
        justify-content: center;
        padding: 0 8px;
        font-size: 14px;
        text-align: center;
    }
}
.admin-logins-panel {
    max-width: 860px;
}
.admin-logins-summary {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin: 0 0 12px;
    color: #334155;
}
.admin-logins-list,
.admin-logins-sessions {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    grid-gap: 10px;
    gap: 10px;
}
.admin-logins-list > li {
    border: 1px solid #e5e7eb;
    border-left: 5px solid #cbd5e1;
    border-radius: 10px;
    padding: 12px 14px;
    background: #fff;
    display: grid;
    grid-gap: 8px;
    gap: 8px;
    min-width: 0;
}
.admin-logins-list > li.signed-in {
    border-left-color: var(--green);
}
.admin-logins-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 10px;
}
.admin-logins-head strong {
    display: block;
    color: #0f172a;
}
.admin-logins-meta {
    display: block;
    color: #64748b;
    font-size: 12px;
    overflow-wrap: anywhere;
}
.admin-logins-state {
    flex: none;
    border-radius: 999px;
    padding: 3px 10px;
    font-size: 12px;
    font-weight: 900;
}
.admin-logins-state.on {
    background: #dcfce7;
    color: #166534;
}
.admin-logins-state.off {
    background: #f1f5f9;
    color: #64748b;
}
.admin-logins-sessions {
    gap: 6px;
}
.admin-logins-sessions li {
    padding: 6px 8px;
    border-radius: 8px;
    background: #f8fafc;
    font-size: 13px;
    color: #334155;
    min-width: 0;
}
.admin-logins-sessions em {
    color: var(--green);
    font-style: normal;
    font-weight: 800;
}
.admin-logins-list .small-action.danger {
    justify-self: start;
    background: #b91c1c;
    color: #fff;
    border-color: #b91c1c;
}
.inventory-bottle-figures {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 140px), 1fr));
    grid-gap: 8px;
    gap: 8px;
    margin: 0 0 14px;
}
.inventory-bottle-figures div {
    border: 1px solid #e2e8f0;
    border-radius: 10px;
    padding: 8px 10px;
    background: #f8fafc;
    min-width: 0;
}
.inventory-bottle-figures span {
    display: block;
    color: #64748b;
    font-size: 12px;
    font-weight: 800;
}
.inventory-bottle-figures strong {
    display: block;
    color: var(--green);
    font-size: 14px;
    overflow-wrap: anywhere;
}
@media (max-width: 640px) {
    .partner-recall-fields {
        grid-template-columns: 1fr;
    }
    .partner-recall-actions .partner-recall-reset {
        width: 100%;
    }
    .parcel-returns-change {
        grid-template-columns: 1fr;
        gap: 0;
    }
    .parcel-returns-change dd {
        margin-bottom: 6px;
    }
}
.advance-balance-summary {
    margin: 16px 0;
    padding: 16px;
    border: 1px solid #d5ded9;
    border-radius: 12px;
    background: #f8faf9;
}
.advance-balance-heading {
    margin-bottom: 10px;
    color: #52645a;
    font-size: 12px;
    font-weight: 700;
}
.advance-balance-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    grid-gap: 12px;
    gap: 12px;
}
.advance-balance-card {
    display: flex;
    flex-direction: column;
    gap: 5px;
    padding: 14px;
    border: 1px solid #d5ded9;
    border-radius: 10px;
    background: #fff;
}
.advance-balance-card > span {
    color: #344d40;
    font-size: 13px;
    font-weight: 700;
}
.advance-balance-card > strong {
    color: #184331;
    font-size: clamp(23px, 3vw, 30px);
    font-feature-settings: "tnum";
    font-variant-numeric: tabular-nums;
}
.advance-balance-card > small,
.advance-balance-summary > p {
    color: #66766d;
    font-size: 12px;
    line-height: 1.5;
}
.advance-balance-summary > p {
    margin: 10px 0 0;
}
.advance-balance-card.has-advance {
    border-color: #d9bd7e;
    background: #fffaf0;
}
.advance-balance-amount,
.advance-balance-card.has-advance > strong {
    color: #8c5b12;
}
@media (max-width: 600px) {
    .advance-balance-grid {
        grid-template-columns: 1fr;
    }
    .advance-balance-summary {
        padding: 12px;
    }
}
.advance-balance-row-net {
    display: block;
    margin-top: 4px;
    color: #66766d;
    font-size: 11px;
    font-weight: 400;
}
.manual-fund-preview {
    padding: 10px 12px;
    border: 1px solid #e2d4ac;
    border-radius: 8px;
    color: #4b5c50;
    background: #fffaf0;
    font-size: 13px;
}
.manual-fund-preview small {
    display: block;
    margin-top: 4px;
    font-size: 11px;
}
.md-help-fund-statement {
    min-width: 0;
    padding: 16px;
    border: 1px solid #e2d4ac;
    border-radius: 12px;
    background: #fffaf0;
}
.md-help-fund-statement h3 {
    margin: 0 0 8px;
    color: #75521a;
}
.md-help-fund-statement p {
    color: #697668;
    font-size: 12px;
}
.legacy-bank-fund {
    display: flex;
    align-items: center;
    gap: 6px;
    color: #59695f;
    font-size: 11px;
}
.legacy-bank-fund input {
    width: auto;
}
.payout-paid-control {
    flex-wrap: wrap;
}
.payout-paid-control small {
    width: 100%;
    color: #66766d;
    font-size: 10px;
}
.icon-family:before {
    inset: 3px 7px 12px 7px;
}
.icon-family:after {
    inset: 14px 2px 2px 2px;
    border-radius: 10px 10px 0 0;
}
.dispatch-summary-card {
    max-width: 760px;
    margin-top: 4px;
    overflow-x: auto;
    border: 1px solid var(--line);
    border-radius: 12px;
    background: white;
    box-shadow: 0 8px 22px rgba(15, 23, 42, 0.04);
}
.dispatch-summary-card.wide {
    max-width: none;
}
.dispatch-summary-table {
    min-width: 0;
    width: 100%;
    border-collapse: collapse;
}
.dispatch-summary-card.wide .dispatch-summary-table {
    min-width: 880px;
}
.dispatch-summary-table thead th {
    height: 46px;
    padding: 10px clamp(10px, 3vw, 16px);
    background: #f8faf9;
    border-bottom: 1px solid var(--line);
}
.dispatch-summary-table td {
    height: 58px;
    padding: 8px clamp(10px, 3vw, 16px);
    border-top: 1px solid #f1f2f4;
    font-size: 14px;
}
.dispatch-summary-table tbody tr:first-child td {
    border-top: 0;
}
.dispatch-summary-table tbody tr:hover {
    background: #f6faf7;
}
.dispatch-summary-table .num {
    text-align: right;
    font-feature-settings: "tnum";
    font-variant-numeric: tabular-nums;
}
.dispatch-summary-table tfoot th {
    height: 52px;
    padding: 10px clamp(10px, 3vw, 16px);
    border-top: 2px solid var(--line);
    background: #f8faf9;
    color: var(--green);
    font-size: 14px;
    letter-spacing: 0;
}
.dispatch-summary-table tfoot th.num {
    font-size: 16px;
}
.dispatch-summary-qty {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: clamp(52px, 12vw, 64px);
    padding: 9px clamp(12px, 3vw, 16px);
    border-radius: 8px;
    background: var(--leaf);
    color: white;
    font-size: 16px;
    font-weight: 900;
    text-decoration: none;
}
.dispatch-summary-qty:focus-visible,
.dispatch-summary-qty:hover {
    filter: brightness(1.15);
}
.dispatch-summary-none {
    color: #9aa3ae;
}
.dispatch-summary-heading {
    margin: 4px 0 12px;
    color: var(--green);
    font-size: 22px;
}
.dispatch-summary-bar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 12px 16px;
    margin-bottom: 4px;
}
.dispatch-summary-bar p {
    margin: 0 0 10px;
}
.dispatch-summary-bar .dispatch-summary-heading {
    margin: 0;
}
.dispatch-summary-download {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    padding: 10px 20px;
    border-radius: 8px;
    background: var(--leaf);
    color: white;
    font-weight: 900;
    text-decoration: none;
    white-space: nowrap;
}
.dispatch-summary-download:focus-visible,
.dispatch-summary-download:hover {
    filter: brightness(1.15);
}
.dispatch-day-picker {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    margin: 0 0 18px;
}
.dispatch-day-picker input[type="date"] {
    width: 156px;
    min-width: 0;
    height: 42px;
    padding: 0 10px;
    border: 1px solid #d1d5db;
    border-radius: 8px;
    background: white;
    font: inherit;
}
.dispatch-day-step {
    width: 42px;
    height: 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    background: #f3f4f6;
    color: #263342;
    font-size: 24px;
    font-weight: 900;
    line-height: 1;
    text-decoration: none;
}
.dispatch-day-step:focus-visible,
.dispatch-day-step:hover {
    background: #e5e7eb;
}
.dispatch-day-step.disabled {
    opacity: 0.4;
    pointer-events: none;
}
.dispatch-day-tag {
    height: 42px;
    padding: 0 14px;
    display: inline-flex;
    align-items: center;
    border-radius: 8px;
    background: rgba(6, 30, 19, 0.08);
    color: var(--green);
    font-weight: 800;
}
.partner-side-nav a.gallery-has-new {
    position: relative;
    border-color: #e4c467;
    box-shadow: 0 0 0 1px #e4c46755;
    animation: gallery-new-glow 1.4s ease-in-out 3;
}
.gallery-new-star {
    position: absolute;
    top: 2px;
    right: 4px;
    color: #c5960c;
    font-size: 16px;
    line-height: 1;
    pointer-events: none;
    text-shadow: 0 0 7px #ecc96988;
}
@keyframes gallery-new-glow {
    50% {
        box-shadow: 0 0 13px #e9bb4a88;
    }
}
@media (prefers-reduced-motion: reduce) {
    .partner-side-nav a.gallery-has-new {
        animation: none;
    }
}
.media-admin .media-view-likes {
    color: #19533a;
    background: #edf6ef;
    border: 1px solid #d2e7d8;
    border-radius: 8px;
    padding: 8px 12px;
    cursor: pointer;
    font: inherit;
}
.media-likes-overlay {
    position: fixed;
    inset: 0;
    z-index: 250;
    display: grid;
    place-items: center;
    padding: 16px;
    background: #14271aa6;
}
.media-likes-dialog {
    background: white;
    border-radius: 16px;
    padding: 20px;
    width: min(100%, 470px);
    max-height: 80dvh;
    overflow-y: auto;
    box-shadow: 0 12px 45px #0004;
}
.media-likes-dialog header {
    display: flex;
    gap: 12px;
    justify-content: space-between;
    align-items: start;
}
.media-likes-dialog h2 {
    margin: 0;
    color: #164d34;
}
.media-likes-dialog p {
    margin: 8px 0 16px;
    color: #627269;
}
.media-likes-dialog header button {
    border: 0;
    background: #edf3ef;
    border-radius: 8px;
    min-width: 40px;
    min-height: 40px;
    font-size: 24px;
    cursor: pointer;
}
.media-likes-dialog ul {
    margin: 0;
    padding: 0;
    list-style: none;
}
.media-likes-dialog li {
    display: flex;
    gap: 16px;
    justify-content: space-between;
    align-items: center;
    padding: 12px 0;
    border-top: 1px solid #e5ece7;
}
.media-likes-dialog li small {
    display: block;
    margin-top: 3px;
    color: #6b7d71;
}
.media-likes-dialog li span {
    white-space: nowrap;
    color: #396449;
    font-size: 13px;
}
.partner-gallery-reactions {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 6px;
    padding: 6px 8px;
    background: white;
}
.gallery-lightbox-reactions {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}
.partner-gallery-reactions .partner-gallery-like {
    position: static;
    background: #f0f5f2;
    color: #315d45;
}
.partner-gallery-comments {
    border: 0;
    background: transparent;
    padding: 8px;
    min-height: 36px;
    color: #496253;
    font: inherit;
    font-size: 12px;
    cursor: pointer;
}
.gallery-comments-dialog {
    border: 0;
    border-radius: 16px;
    width: min(calc(100% - 24px), 540px);
    max-height: 88dvh;
    padding: 0;
    color: #233d2d;
    background: white;
    box-shadow: 0 18px 60px #0005;
}
.gallery-comments-dialog::-webkit-backdrop {
    background: #102219aa;
}
.gallery-comments-dialog::backdrop {
    background: #102219aa;
}
.gallery-comments-dialog > header {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    z-index: 1;
    display: flex;
    justify-content: space-between;
    gap: 16px;
    align-items: start;
    padding: 16px;
    background: white;
    border-bottom: 1px solid #e3eae5;
}
.gallery-comments-dialog h2 {
    margin: 0;
    font-size: 19px;
}
.gallery-comments-dialog header p {
    margin: 4px 0 0;
    color: #6a7b6f;
    font-size: 13px;
}
.gallery-comments-dialog header button {
    border: 0;
    border-radius: 50%;
    width: 36px;
    height: 36px;
    font-size: 25px;
    background: #edf2ef;
    cursor: pointer;
    flex-shrink: 0;
}
.gallery-comments-thread {
    padding: 16px;
}
.gallery-comments-thread article {
    display: grid;
    grid-template-columns: 32px minmax(0, 1fr);
    grid-gap: 8px;
    gap: 8px;
    margin: 0 0 16px;
}
.gallery-comment-avatar {
    display: grid;
    place-items: center;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: #dcece2;
    color: #285b3e;
    font-weight: 800;
}
.gallery-comment-bubble {
    padding: 10px 12px;
    border-radius: 14px;
    background: #f0f3f1;
}
.gallery-comment-bubble strong {
    font-size: 13px;
}
.gallery-comment-bubble small {
    display: block;
    color: #748277;
    font-size: 10px;
    margin-top: 2px;
}
.gallery-comment-bubble p {
    margin: 6px 0 0;
    white-space: pre-wrap;
    overflow-wrap: anywhere;
    font-size: 14px;
    line-height: 1.45;
}
.gallery-comment-actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
    padding: 5px 10px 0;
    color: #748277;
    font-size: 11px;
}
.gallery-comment-actions button,
.gallery-comments-older {
    border: 0;
    background: transparent;
    color: #3d6850;
    cursor: pointer;
    padding: 3px 0;
    font: inherit;
    font-weight: 700;
}
.gallery-comment-compose {
    position: -webkit-sticky;
    position: sticky;
    bottom: 0;
    padding: 12px 16px;
    background: white;
    border-top: 1px solid #e3eae5;
}
.gallery-comment-compose label {
    display: block;
    margin-bottom: 6px;
    font-size: 12px;
    font-weight: 700;
}
.gallery-comment-compose textarea {
    width: 100%;
    resize: vertical;
    min-height: 65px;
    max-height: 160px;
    border: 1px solid #d7e1da;
    border-radius: 12px;
    padding: 10px;
    font: inherit;
    font-size: 16px;
}
.gallery-comment-compose > div {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin-top: 8px;
}
.gallery-comment-compose button {
    border: 0;
    border-radius: 8px;
    padding: 10px 14px;
    font: inherit;
    font-size: 13px;
    cursor: pointer;
    background: #eaf1ed;
    color: #30553d;
}
.gallery-comment-compose button[type="submit"] {
    background: #20553a;
    color: white;
}
.gallery-comment-compose button:disabled {
    opacity: 0.5;
    cursor: default;
}
.gallery-comments-error {
    margin: 12px 16px;
    color: #9e302b;
}
.gallery-comments-empty {
    color: #6c7d70;
    font-size: 14px;
}
.link-button {
    padding: 0;
    border: 0;
    background: none;
    color: #15803d;
    font: inherit;
    cursor: pointer;
}
.forgot-password-link,
.link-button {
    font-weight: 800;
    text-decoration: underline;
}
.forgot-password-link {
    display: block;
    margin-bottom: 4px;
    color: #d92d20;
    font-size: inherit;
    text-align: center;
}
.profile-popup-backdrop {
    position: fixed;
    inset: 0;
    z-index: 1000;
    display: grid;
    place-items: center;
    padding: 16px;
    background: rgba(15, 23, 42, 0.55);
}
.profile-popup {
    width: min(100%, 380px);
    padding: 22px 20px 18px;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.3);
    text-align: center;
    color: #1f2937;
}
.profile-popup h3 {
    margin: 0 0 12px;
    color: #15803d;
    font-size: 20px;
}
.profile-popup p {
    margin: 0 0 10px;
    font-size: 16px;
    line-height: 1.5;
}
.profile-popup p[lang="hi"] {
    color: #4b5563;
}
.profile-popup-actions {
    display: flex;
    flex-direction: column-reverse;
    gap: 10px;
    margin-top: 16px;
}
.profile-popup-actions button {
    width: 100%;
    min-height: 48px;
    border-radius: 999px;
    font-size: 16px;
    font-weight: 800;
    cursor: pointer;
}
.profile-popup-ok {
    border: 0;
    background: #15803d;
    color: #fff;
}
.profile-popup-cancel {
    border: 2px solid #d1d5db;
    background: #fff;
    color: #374151;
}
.inventory-auto {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 12px 18px;
    margin: 0 0 18px;
    padding: 14px 18px;
    border: 1px solid #dfe7e2;
    border-radius: 14px;
    background: #f6faf7;
}
.inventory-auto strong {
    color: #173e2d;
    font-size: 16px;
}
.inventory-auto p {
    margin: 4px 0 0;
    max-width: 760px;
    color: #475569;
}
.inventory-auto button {
    min-height: 42px;
    padding: 0 20px;
    border: 0;
    border-radius: 9px;
    background: #0b6b46;
    color: #fff;
    font-weight: 900;
    cursor: pointer;
}
.inventory-auto button.secondary {
    background: #e2e8f0;
    color: #263342;
}
.inventory-auto button:disabled {
    opacity: 0.55;
}
.inventory-auto-tag {
    margin-left: 8px;
    padding: 2px 8px;
    border-radius: 999px;
    background: rgba(11, 107, 70, 0.12);
    color: #0b6b46;
    font-size: 12px;
    font-weight: 800;
}
.inventory-section-gap {
    margin-top: 26px;
}
.inventory-stock-card > strong.short {
    color: #b91c1c;
}
.inventory-rows {
    border: 1px solid #dfe7e2;
    border-radius: 14px;
    background: #fff;
    overflow: hidden;
}
.inventory-row {
    display: grid;
    grid-template-columns: minmax(150px, 1fr) minmax(110px, auto) minmax(0, 2.2fr);
    grid-gap: 10px 16px;
    gap: 10px 16px;
    align-items: center;
    padding: 10px 14px;
    border-top: 1px solid #edf2ef;
}
.inventory-row:first-child {
    border-top: 0;
}
.inventory-row > span {
    color: #334155;
    font-weight: 800;
}
.inventory-row-count strong {
    display: block;
    color: #0b6b46;
    font-size: 24px;
    line-height: 1.1;
}
.inventory-row-count strong.short {
    color: #b91c1c;
}
.inventory-row-count small {
    color: #b91c1c;
    font-weight: 800;
}
.inventory-row form {
    display: grid;
    grid-template-columns: 96px minmax(0, 1fr) auto auto;
    grid-gap: 7px;
    gap: 7px;
}
.inventory-row button,
.inventory-row input {
    min-width: 0;
    min-height: 40px;
    border: 1px solid #d8e1dc;
    border-radius: 9px;
    padding: 7px 10px;
    font: inherit;
}
.inventory-row button {
    border: 0;
    background: #0b6b46;
    color: #fff;
    font-weight: 900;
    cursor: pointer;
}
.inventory-row button.minus {
    background: #b45309;
}
.inventory-row button:disabled {
    opacity: 0.55;
}
.zoom-attendance {
    max-width: 1100px;
}
.zoom-attendance p {
    line-height: 1.6;
}
.zoom-meetings {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 320px), 1fr));
    grid-gap: 16px;
    gap: 16px;
    margin-top: 20px;
}
.zoom-create,
.zoom-meeting-card {
    padding: 20px;
    margin: 16px 0;
    border: 1px solid #d8e1dc;
    border-radius: 14px;
    background: #fff;
}
.zoom-meeting-card {
    overflow-wrap: anywhere;
}
.zoom-meetings .zoom-meeting-card {
    margin: 0;
}
.zoom-meeting-card h2,
.zoom-meeting-card h3 {
    margin: 12px 0 6px;
}
.zoom-attendance .field {
    display: grid;
    grid-gap: 6px;
    gap: 6px;
    margin: 12px 0;
    min-width: 0;
}
.zoom-attendance input,
.zoom-attendance select {
    width: 100%;
    min-width: 0;
    max-width: 100%;
    height: auto;
    min-height: 48px;
    padding: 10px 12px;
    border: 1px solid #bdcdc4;
    border-radius: 9px;
    font: inherit;
    line-height: 1.5;
    box-sizing: border-box;
    background: #fff;
    color: #163d2e;
}
.zoom-attendance .zoom-code-input {
    width: 180px;
    min-height: 64px;
    font-size: 30px;
    line-height: 1.2;
    font-weight: 700;
    letter-spacing: 0.22em;
    text-align: center;
}
.zoom-badge {
    display: inline-block;
    padding: 5px 10px;
    border-radius: 20px;
    background: #f1f3f1;
    color: #526159;
    font-size: 13px;
    font-weight: 700;
}
.zoom-badge.open {
    background: #fff0cc;
    color: #795300;
}
.zoom-badge.present {
    background: #d9f3e4;
    color: #175336;
}
.zoom-success {
    background: #edf8f0;
    color: #175336;
}
.zoom-error,
.zoom-success {
    padding: 12px;
    border-radius: 9px;
}
.zoom-error {
    background: #fff1f1;
    color: #a12626;
}
.zoom-actions {
    display: flex;
    align-items: center;
    gap: 9px;
    flex-wrap: wrap;
    margin: 14px 0;
}
.zoom-attendance button {
    cursor: pointer;
    min-height: 42px;
}
.zoom-attendance button:disabled {
    opacity: 0.55;
    cursor: default;
}
.zoom-attendance .small-action {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    border: 1px solid #cdd9d1;
    border-radius: 9px;
    padding: 10px 14px;
    background: #f0f4f1;
    color: #194b37;
    font-weight: 700;
    text-decoration: none;
    line-height: 1.25;
}
.zoom-attendance .small-action.dark {
    background: #1e4d39;
    color: #fff;
    border-color: #1e4d39;
}
.zoom-attendance .small-action.gold {
    background: #ddbe77;
    color: #263f31;
    border-color: #ddbe77;
}
.zoom-confirm {
    padding: 12px;
    border: 1px solid #ddbe77;
    border-radius: 9px;
    background: #fff9eb;
}
.zoom-attendance .small-action.danger {
    background: #fff1f1;
    color: #a12626;
    border-color: #f0c4c4;
}
.zoom-badge.deleted {
    background: #fff1f1;
    color: #a12626;
}
.zoom-create summary {
    cursor: pointer;
    font-weight: 700;
}
.zoom-create form {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 220px), 1fr));
    grid-gap: 12px;
    gap: 12px;
    align-items: end;
}
.zoom-create form button {
    margin: 12px 0;
}
.zoom-issued-code {
    display: grid;
    justify-items: center;
    padding: 20px;
    background: #eef7f1;
    border-radius: 12px;
}
.zoom-issued-code strong {
    font-size: 48px;
    letter-spacing: 0.2em;
    color: #175336;
    font-feature-settings: "tnum";
    font-variant-numeric: tabular-nums;
}
.zoom-present-count strong {
    font-size: 32px;
    color: #175336;
}
.zoom-table-wrap {
    overflow-x: auto;
    margin: 18px 0;
}
.zoom-table {
    border-collapse: collapse;
    width: 100%;
    min-width: 670px;
    text-align: left;
}
.zoom-table td,
.zoom-table th {
    padding: 12px;
    border-bottom: 1px solid #d8e1dc;
    vertical-align: top;
}
.zoom-table th {
    background: #edf4ef;
}
.zoom-table small {
    display: block;
    margin-top: 4px;
}
.partner-nav-icon.icon-attendance:before {
    content: "✓";
}
@media (max-width: 760px) {
    .inventory-row {
        grid-template-columns: 1fr auto;
    }
    .inventory-row form {
        grid-column: 1/-1;
        grid-template-columns: 1fr 1fr;
    }
}
.partner-milestone-status {
    margin: 0 0 18px;
    text-align: center;
}
.partner-milestone-disclaimer {
    margin: 0 0 8px;
    font-size: 13px;
    line-height: 1.5;
}
.partner-milestone-status h2 {
    margin: 0 0 6px;
    font-size: 15px;
}
.partner-milestone-status .cert-latest-display.partner-cert-milestones {
    width: 360px;
    max-width: 100%;
    margin: 0 auto;
}
.partner-milestone-status .cert-milestone-dates td {
    font-size: 12px;
    padding-top: 2px;
}
.partner-milestone-status .cert-milestone-table .partner-milestone-row-label {
    width: 20%;
    padding-right: 2px;
    text-align: left;
    white-space: normal;
    font:
        700 11px/1.2 system-ui,
        -apple-system,
        Segoe UI,
        Roboto,
        Arial,
        sans-serif;
    color: rgba(255, 255, 255, 0.8);
}
@media (max-width: 374px) {
    .partner-milestone-status .cert-latest-display.partner-cert-milestones {
        padding-left: 5px;
        padding-right: 5px;
    }
    .partner-milestone-status .cert-milestone-table .partner-milestone-row-label {
        width: 23%;
        font-size: 10px;
    }
    .partner-milestone-status .cert-milestone-dates td {
        font-size: 10.5px;
    }
}
@media (max-width: 720px) {
    .accounts-report-table.bad-email-table {
        min-width: 0;
    }
}
.funds-order {
    display: grid;
    grid-gap: 12px;
    gap: 12px;
    max-width: 560px;
}
.funds-order-funds {
    margin: 0;
    padding: 10px 12px;
    border-radius: 10px;
    background: #edf6f0;
    color: #17412b;
    font-size: 15px;
    line-height: 1.45;
}
.funds-order .funds-order-address {
    min-height: 0;
    height: auto;
    padding: 12px 14px;
}
.funds-order-address-head .dispatch-page-link {
    min-height: 0;
    padding: 6px 10px;
    font-size: 14px;
}
.funds-order-totals {
    margin: 0;
    padding: 10px 12px;
    border-radius: 10px;
    background: #faf7f0;
    display: grid;
    grid-gap: 4px;
    gap: 4px;
}
.funds-order-totals div {
    display: flex;
    justify-content: space-between;
    gap: 12px;
}
.funds-order-totals dd,
.funds-order-totals dt {
    margin: 0;
}
.funds-order-totals .grand {
    padding-top: 6px;
    border-top: 1px solid #e5dccb;
    font-size: 18px;
    font-weight: 800;
}
.funds-order-address-head {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 10px;
    margin-bottom: 6px;
}
.funds-order-address-line {
    margin: 0;
    line-height: 1.45;
    overflow-wrap: anywhere;
}
.funds-order-address-line small {
    display: block;
    margin-top: 4px;
    color: var(--muted, #667085);
}
.funds-order-fields {
    display: grid;
    grid-gap: 8px;
    gap: 8px;
}
.funds-order-fields label {
    display: grid;
    grid-gap: 4px;
    gap: 4px;
}
.funds-order-fields span {
    font-size: 13px;
    font-weight: 700;
    color: #354052;
}
.funds-order-fields input {
    width: 100%;
    min-height: 42px;
    box-sizing: border-box;
}
.funds-order-quantity {
    display: grid;
    grid-gap: 4px;
    gap: 4px;
}
.funds-order-quantity select {
    width: 100%;
    min-height: 44px;
}
.funds-order-confirm {
    display: grid;
    grid-gap: 8px;
    gap: 8px;
    padding: 12px;
    border: 1px solid #e7c873;
    border-radius: 10px;
    background: #fffaf0;
}
.funds-order-confirm p {
    margin: 0;
}
.funds-order .cta,
.funds-order .cta-secondary {
    width: 100%;
}
.funds-order-done h2 {
    margin-top: 0;
}
