.seop-mobile-home {
    display: none;
}

.seop-portal-logo-home {
    display: inline-flex;
    flex: 0 0 auto;
    border-radius: 10px;
    text-decoration: none;
}

.seop-portal-logo-home:focus-visible {
    outline: 3px solid #ff6426;
    outline-offset: 4px;
}

.seop-uploaded-invoice {
    margin-top: 20px;
    border-top: 4px solid #2965e8 !important;
}

.seop-uploaded-invoice .seop-fields {
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 15px;
}

.seop-document-toolbar {
    gap: 9px;
    flex-wrap: wrap;
}

.seop-email-update {
    display: grid;
    gap: 10px;
    margin: 14px 0;
    padding: 14px;
    border: 1px solid #dbe4ef;
    border-radius: 13px;
    background: #f8fafc;
}

.seop-email-update .seop-check { margin: 0; }
.seop-email-update label:not(.seop-check) { display: grid; gap: 7px; font-weight: 800; }
.seop-email-update textarea { width: 100%; box-sizing: border-box; resize: vertical; }
.seop-email-update > small { color: #64748b; }
.seop-document-email form { display: grid; gap: 16px; }
.seop-document-email textarea { width: 100%; box-sizing: border-box; resize: vertical; }
.seop-document-email-actions { display: flex; flex-wrap: wrap; gap: 10px; }
.seop-document-email-actions button { flex: 1 1 260px; }
.seop-document-email form > small { color: #64748b; }
.seop-client-login-form { display: grid; gap: 16px; }
.seop-client-login-form label { display: grid; gap: 7px; }
.seop-client-login-form .seop-login-remember { display: flex; align-items: center; gap: 9px; }
.seop-client-login-form .seop-login-remember input { width: auto; }
.seop-client-login-form .seop-button { width: 100%; }

@media (max-width: 760px) {
    .seop-mobile-home {
        display: inline-flex;
        align-items: center;
        gap: 6px;
        margin-bottom: 16px;
        padding: 9px 13px;
        border: 1px solid #dbe3ed;
        border-radius: 10px;
        background: #fff;
        color: #0f2942;
        text-decoration: none;
        font-size: 13px;
        font-weight: 850;
        box-shadow: 0 5px 15px rgba(15,23,42,.06);
    }

    .seop-uploaded-invoice .seop-fields {
        grid-template-columns: 1fr;
    }

    .seop-document-toolbar .seop-button {
        flex: 1 1 100%;
    }

    .seop-email-update { padding: 12px; }
    .seop-client-login-form input { font-size: 16px; }
}

@media print {
    body * { visibility: hidden !important; }
    .seop-document, .seop-document * { visibility: visible !important; }
    .seop-document { position: absolute !important; inset: 0 auto auto 0 !important; width: 210mm !important; margin: 0 !important; box-shadow: none !important; }
}
/* Accessible password visibility controls shared by client and administrator forms. */
.seop-password-field{position:relative;display:block;width:100%}
.seop-password-field>input{width:100%;padding-right:3.25rem!important}
.seop-password-toggle{position:absolute;z-index:2;right:.45rem;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:2.45rem;height:2.45rem;padding:0!important;border:0!important;border-radius:.7rem!important;background:transparent!important;color:#53657a!important;box-shadow:none!important;cursor:pointer}
.seop-password-toggle:hover{background:#edf3f8!important;color:#0b2744!important}
.seop-password-toggle:focus-visible{outline:3px solid rgba(47,105,232,.3)!important;outline-offset:1px}
.seop-password-toggle svg{width:1.35rem;height:1.35rem;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}
.seop-password-toggle .seop-eye-closed{display:none}
.seop-password-field.is-visible .seop-eye-open{display:none}
.seop-password-field.is-visible .seop-eye-closed{display:block}

/* Clear, independent receipt workspace and compact customer notification filters. */
.seop-receipt-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0 0 20px}
.seop-receipt-stats article{display:flex;min-height:142px;flex-direction:column;justify-content:center;padding:22px;border:1px solid #d8e3ee;border-radius:18px;background:linear-gradient(145deg,#fff,#f7fafc);box-shadow:0 10px 26px rgba(7,26,49,.06)}
.seop-receipt-stats small{color:#f05a24;font-weight:800;letter-spacing:.09em}
.seop-receipt-stats strong{margin:8px 0 3px;color:#071a31;font-size:2.2rem;line-height:1}
.seop-receipt-stats span,.seop-notification-summary{color:#66768a}
.seop-notification-filters{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 18px;padding:5px;border:1px solid #dbe5ef;border-radius:14px;background:#f2f6fa;width:max-content;max-width:100%}
.seop-notification-filters button{min-height:40px;padding:8px 17px;border:0;border-radius:10px;background:transparent;color:#52647a;font-weight:750;cursor:pointer}
.seop-notification-filters button.active{background:#0a2846;color:#fff;box-shadow:0 5px 14px rgba(7,26,49,.17)}
.seop-notification-card[hidden]{display:none!important}

@media(max-width:700px){
  .seop-receipt-stats{grid-template-columns:1fr}
  .seop-receipt-stats article{min-height:112px}
  .seop-notification-filters{width:100%}
  .seop-notification-filters button{flex:1;min-width:0}
  .seop-password-toggle{width:2.75rem;height:2.75rem;right:.25rem}
}
