/* ===== New Sections Shared Pages ===== */
.new-section-page {
    animation: fadeInPage 0.5s ease-out;
}

.new-section-wrap {
    margin: 0 auto;
    padding: 10px;
    width: 100%;
}

.new-section-hero-card {
    display: flex;
    align-items: center;
    gap: 18px;
    margin-bottom: 25px;
    background: linear-gradient(to bottom, var(--primary-light), #ffffff);
    border: none;
    padding-top: 28px;
    padding-bottom: 24px;
}

.new-section-hero-icon {
    width: 72px;
    height: 72px;
    border-radius: 20px;
    background: linear-gradient(135deg, var(--primary-color), #8e44ad);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.7rem;
    box-shadow: 0 12px 28px rgba(93,43,134,.18);
    flex-shrink: 0;
}

.new-section-hero-text {
    min-width: 0;
}

.new-section-hero-text h2 {
    margin: 0 0 8px;
    color: var(--primary-color);
    font-size: 1.35rem;
    line-height: 1.35;
    overflow-wrap: anywhere;
}

.new-section-hero-text p {
    margin: 0;
    color: var(--text-muted);
    line-height: 1.7;
    overflow-wrap: anywhere;
}

.new-section-form-card {
    margin-bottom: 25px;
}

.new-section-actions {
    margin-top: 30px;
    display: flex;
    justify-content: flex-end;
    gap: 12px;
    flex-wrap: wrap;
}

.new-section-actions button {
    width: auto;
    padding: 12px 40px;
}

.new-section-card-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 18px;
    flex-wrap: wrap;
}

.new-section-card-head h3 {
    margin: 0;
    color: var(--primary-color);
    display: flex;
    align-items: center;
    gap: 10px;
    min-width: 0;
    overflow-wrap: anywhere;
}

.new-section-search {
    max-width: 320px;
    width: 100%;
}

.new-section-table-wrap {
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    padding-bottom: 4px;
}

.new-section-table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0 10px;
    min-width: 720px;
}

.new-section-table th {
    color: var(--text-muted);
    font-size: .78rem;
    font-weight: 800;
    text-align: start;
    padding: 0 12px 8px;
    white-space: nowrap;
}

.new-section-table td {
    background: #fff;
    border-top: 1px solid #edf2f7;
    border-bottom: 1px solid #edf2f7;
    padding: 14px 12px;
    color: var(--text-main);
    vertical-align: middle;
}

.new-section-table td:first-child {
    border-inline-start: 1px solid #edf2f7;
    border-start-start-radius: 14px;
    border-end-start-radius: 14px;
}

.new-section-table td:last-child {
    border-inline-end: 1px solid #edf2f7;
    border-start-end-radius: 14px;
    border-end-end-radius: 14px;
}

.new-section-empty {
    min-height: 120px;
    display: flex;
    flex-direction: column;
    gap: 8px;
    align-items: center;
    justify-content: center;
    color: var(--text-muted);
    text-align: center;
    padding: 18px;
}

.new-section-empty i {
    color: var(--primary-color);
    font-size: 1.7rem;
    opacity: .75;
}

.new-section-empty strong {
    color: var(--text-main);
}

.v11-card-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 14px;
    margin-top: 16px;
}

.v11-card {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 6px;
    border: 1px solid rgba(108,43,141,.16);
    transition: border-color .2s ease, box-shadow .2s ease;
}

.v11-card:hover {
    border-color: var(--primary-color);
}

.v11-card input[type="radio"] {
    width: auto;
    margin: 0;
    accent-color: var(--primary-color);
}

.v11-pill {
    display: inline-flex;
    padding: 4px 10px;
    border-radius: 999px;
    background: rgba(108,43,141,.08);
    color: var(--primary-color);
    font-size: .78rem;
    font-weight: 800;
    white-space: nowrap;
}

@media (max-width: 992px) {
    .new-section-page.content-wrapper,
    .content-wrapper.new-section-page {
        padding-inline: 18px;
    }

    .new-section-hero-card,
    .new-section-form-card,
    .new-section-list-card {
        border-radius: 18px;
    }

    .new-section-table {
        min-width: 680px;
    }
}

@media (max-width: 768px) {
    .new-section-page.content-wrapper,
    .content-wrapper.new-section-page {
        padding-inline: 14px;
    }

    .new-section-wrap {
        padding: 8px;
    }

    .new-section-hero-card {
        align-items: flex-start;
        flex-direction: column;
        gap: 14px;
        padding: 22px 18px;
        margin-bottom: 18px;
    }

    .new-section-hero-icon {
        width: 58px;
        height: 58px;
        border-radius: 17px;
        font-size: 1.35rem;
    }

    .new-section-hero-text h2 {
        font-size: 1.15rem;
    }

    .new-section-hero-text p {
        font-size: .92rem;
        line-height: 1.65;
    }

    .new-section-card-head {
        align-items: stretch;
        flex-direction: column;
        gap: 12px;
    }

    .new-section-card-head h3 {
        font-size: 1.02rem;
    }

    .new-section-search {
        max-width: 100%;
    }

    .new-section-actions {
        justify-content: stretch;
        flex-direction: column;
        gap: 10px;
    }

    .new-section-actions button,
    .new-section-actions .btn-primary,
    .new-section-actions .btn-secondary {
        width: 100%;
        justify-content: center;
        padding: 13px 16px;
    }

    .new-section-table-wrap {
        margin-inline: -4px;
        width: calc(100% + 8px);
    }

    .new-section-table {
        min-width: 640px;
    }

    .new-section-table th {
        font-size: .74rem;
        padding-inline: 10px;
    }

    .new-section-table td {
        padding: 12px 10px;
        font-size: .9rem;
    }
}

@media (max-width: 576px) {
    .new-section-page.content-wrapper,
    .content-wrapper.new-section-page {
        padding-inline: 10px;
    }

    .new-section-wrap {
        padding: 6px;
    }

    .new-section-hero-card,
    .new-section-form-card,
    .new-section-list-card {
        border-radius: 16px;
    }

    .new-section-hero-card {
        padding: 20px 15px;
    }

    .new-section-hero-icon {
        width: 52px;
        height: 52px;
        border-radius: 15px;
        font-size: 1.2rem;
    }

    .new-section-hero-text h2 {
        font-size: 1.05rem;
    }

    .new-section-hero-text p {
        font-size: .86rem;
    }

    .new-section-card-head h3 {
        font-size: .98rem;
        line-height: 1.45;
    }

    .new-section-table {
        min-width: 600px;
    }

    .new-section-empty {
        min-height: 100px;
        padding: 16px 10px;
    }
}

@media (max-width: 380px) {
    .new-section-page.content-wrapper,
    .content-wrapper.new-section-page {
        padding-inline: 8px;
    }

    .new-section-wrap {
        padding: 4px;
    }

    .new-section-hero-card {
        padding: 18px 12px;
    }

    .new-section-hero-text h2 {
        font-size: 1rem;
    }

    .new-section-hero-text p {
        font-size: .82rem;
    }

    .new-section-table {
        min-width: 560px;
    }
}

/* ===== Dark Mode ===== */
[data-theme="dark"] .new-section-hero-card {
    background: linear-gradient(to bottom, #1a0f2b, #140a20) !important;
}

[data-theme="dark"] .new-section-table td {
    background: var(--card-bg) !important;
    border-color: var(--border-color) !important;
    color: var(--text-main) !important;
}

[data-theme="dark"] .new-section-empty strong {
    color: var(--text-main) !important;
}

[data-theme="dark"] .new-section-hero-text p,
[data-theme="dark"] .new-section-table th {
    color: var(--text-muted) !important;
}


/* ===== Customer Requests Cards ===== */
.customer-requests-list-card { overflow: visible; }
.customer-requests-filters { margin-bottom: 22px; }
.customer-requests-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(330px, 1fr));
    gap: 28px;
}
.customer-request-card { padding-bottom: 22px; border-color: #edf2f7; }
.customer-request-card.customer-request-needs-approval { border-inline-start: 5px solid #f59e0b; }
.customer-request-card.customer-request-approved { border-inline-start: 5px solid #22c55e; }
.customer-request-card.customer-request-waiting-reply { border-inline-start: 5px solid #38bdf8; }
.customer-request-highlight { box-shadow: 0 0 0 4px rgba(93,43,134,.16), 0 14px 28px rgba(93,43,134,.12) !important; }
.customer-request-card-head { display:flex; align-items:flex-start; gap:12px; margin-bottom:16px; }
.customer-request-meta-grid { display:grid; gap:10px; margin-top:14px; }
.customer-request-meta-grid div { display:flex; align-items:center; gap:8px; background:#fbf8ff; border:1px solid #eee5f6; border-radius:12px; padding:9px 11px; color:var(--text-main); line-height:1.5; }
.customer-request-meta-grid i { color:var(--primary-color); width:18px; text-align:center; flex-shrink:0; }
.customer-request-files { display:flex; flex-direction:column; gap:9px; margin-top:16px; }
.customer-request-file { display:flex; align-items:center; gap:10px; padding:10px 12px; border-radius:12px; background:#f8fafc; border:1px solid #edf2f7; color:var(--text-main); text-decoration:none; font-weight:800; min-width:0; }
.customer-request-file:hover { border-color:var(--primary-color); background:var(--primary-light); color:var(--primary-color); }
.customer-request-file i { color:var(--primary-color); flex-shrink:0; }
.customer-request-file span { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.customer-request-file em { margin-inline-start:auto; font-style:normal; color:var(--primary-color); flex-shrink:0; }
.customer-request-files-more { margin-top:2px; width:auto; }
.customer-request-no-attachments { margin-top:16px; padding:12px; background:#f8fafc; border:1px dashed #e2e8f0; border-radius:12px; color:var(--text-muted); display:flex; align-items:center; gap:8px; }
.customer-request-approve-wrap { margin-top:22px; padding-top:16px; border-top:1px dashed #edf2f7; }
.customer-request-approve-btn { margin-top:0 !important; }
.customer-request-approved-box { margin-top:22px; padding:13px 14px; border-radius:14px; background:#dcfce7; color:#166534; font-weight:900; display:flex; align-items:center; justify-content:center; gap:8px; }
.customer-request-attachments-modal { display:flex; flex-direction:column; gap:10px; margin-top:16px; }
.customer-request-file-modal span { white-space:normal; overflow-wrap:anywhere; }
.force-ltr, .rq-ltr-number { direction:ltr !important; unicode-bidi:isolate !important; display:inline-flex; }
[data-theme="dark"] .customer-request-meta-grid div,
[data-theme="dark"] .customer-request-file,
[data-theme="dark"] .customer-request-no-attachments { background:#241533; border-color:#3b2a50; color:var(--text-main); }
@media (max-width: 768px) { .customer-requests-grid { grid-template-columns:1fr; gap:20px; } }

/* Contract request shared spacing */
.contract-requests-page .customer-request-card,
.customer-requests-page .customer-request-card {
    margin-bottom: 6px;
}

/* ===== Maintenance Reports ===== */
.maintenance-public-link,.maintenance-action-link,.maintenance-close-link{display:inline-flex;align-items:center;gap:8px;color:var(--primary-color);text-decoration:none;font-weight:800}.maintenance-public-link{margin-inline-start:auto;padding:10px 14px;border:1px solid rgba(93,43,134,.18);border-radius:12px;background:#fff}.maintenance-filter-form{margin-bottom:20px}.maintenance-badge{display:inline-flex;padding:6px 10px;border-radius:999px;font-size:.78rem;font-weight:800;white-space:nowrap}.status-new{background:#f3e8ff;color:#6b21a8}.status-in_progress{background:#dbeafe;color:#1d4ed8}.status-waiting{background:#fef3c7;color:#92400e}.status-resolved{background:#dcfce7;color:#166534}.status-closed{background:#e5e7eb;color:#374151}.priority-low{background:#ecfeff;color:#155e75}.priority-normal{background:#eef2ff;color:#3730a3}.priority-high{background:#ffedd5;color:#9a3412}.priority-urgent{background:#fee2e2;color:#991b1b}.maintenance-details-card{margin-top:25px}.maintenance-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:18px}.maintenance-summary-grid>div,.maintenance-description{padding:14px;border:1px solid #edf2f7;border-radius:14px;background:#fff}.maintenance-summary-grid span,.maintenance-description>span{display:block;color:var(--text-muted);font-size:.78rem;margin-bottom:6px}.maintenance-description{margin-bottom:20px}.maintenance-description p{margin:0;white-space:pre-wrap;line-height:1.7}.maintenance-thread{margin-top:28px;padding-top:22px;border-top:1px solid #edf2f7}.maintenance-message{padding:14px;border:1px solid #edf2f7;border-radius:14px;margin-bottom:12px;background:#fff}.maintenance-message>div{display:flex;justify-content:space-between;gap:12px;color:var(--primary-color)}.maintenance-message p{margin:10px 0 0;white-space:pre-wrap;line-height:1.7}.maintenance-public-wrap{max-width:980px}.maintenance-success-card{text-align:center;padding:48px 24px}.maintenance-success-card>i{font-size:3rem;color:#16a34a}.maintenance-success-card h3{color:var(--primary-color)}@media(max-width:768px){.maintenance-public-link{margin-inline-start:0;width:100%;justify-content:center}.maintenance-summary-grid{grid-template-columns:1fr}.maintenance-message>div{flex-direction:column;gap:4px}}

/* ===== Unified Customer Contact Forms ===== */
.hidden{display:none!important}.contact-form-shell{overflow:hidden}.contact-type-main{max-width:680px;margin:0 auto 18px}.contact-type-main select{font-size:1.05rem;font-weight:900}.contact-section{margin-top:18px;padding-top:18px;border-top:1px solid #eee5f6}.animated-contact-section:not(.hidden){animation:contactReveal .38s cubic-bezier(.2,.8,.2,1)}@keyframes contactReveal{from{opacity:0;transform:translateY(18px) scale(.985)}to{opacity:1;transform:none}}.full-span{grid-column:1/-1}.refund-panel{margin-top:18px;padding:18px;border-radius:18px;background:#fff8f8;border:1px solid #fecaca}.danger-note{color:#b91c1c!important;font-weight:900!important;background:#fff1f2;border:1px solid #fecdd3;border-radius:12px;padding:11px 13px;margin-bottom:15px}.locked-machine-note{display:flex;align-items:center;gap:7px;margin-top:8px;color:var(--primary-color);font-weight:800}.pending-email-card>i{color:#5d2b86}.poll-public-grid,.poll-admin-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px}.poll-public-card,.poll-admin-card{border:1px solid #eee5f6;background:#fff;border-radius:18px;padding:18px;box-shadow:0 8px 22px rgba(93,43,134,.08)}.poll-public-card h3,.poll-admin-card h3{margin:0 0 9px;color:var(--primary-color)}.poll-options{display:grid;gap:9px;margin-top:12px}.poll-options label,.poll-select-label{display:flex;align-items:center;gap:9px;padding:10px;border-radius:12px;background:#fbf8ff;font-weight:800}.poll-admin-card ul{padding-inline-start:22px;line-height:1.9}.error-icon{color:#dc2626!important}[data-theme="dark"] .poll-public-card,[data-theme="dark"] .poll-admin-card,[data-theme="dark"] .poll-options label,[data-theme="dark"] .poll-select-label{background:#241533;border-color:#3b2a50}

/* Customer communication v3 */
.nav-inline-stat{font-size:.72rem;opacity:.8;font-weight:800;margin-inline-start:.25rem}.star-rating{display:inline-flex;flex-direction:row-reverse;justify-content:center;gap:.35rem;padding:1rem;border-radius:18px;background:var(--card-bg,#fff);border:1px solid rgba(108,43,141,.14)}.star-rating input{position:absolute;opacity:0;pointer-events:none}.star-rating label{font-size:2.25rem;color:#d9dce5;cursor:pointer;transition:transform .18s ease,color .18s ease,filter .18s ease}.star-rating label:hover,.star-rating label:hover~label,.star-rating input:checked~label{color:#f5b301;filter:drop-shadow(0 5px 8px rgba(245,179,1,.25));transform:translateY(-2px) scale(1.06)}.rating-stats-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.rating-stat{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.45rem;text-align:center;padding:1.4rem}.rating-stat>i{font-size:1.8rem;color:var(--primary,#6c2b8d)}.rating-stat strong{font-size:1.8rem;color:var(--primary,#6c2b8d)}.display-stars{display:inline-flex;align-items:center;gap:.2rem;direction:ltr}.display-stars i{color:#d9dce5}.display-stars i.filled{color:#f5b301}.display-stars b{margin-inline-start:.4rem;color:var(--primary,#6c2b8d)}.infinite-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.feedback-card{padding:1.25rem;animation:contactSectionIn .35s ease both}.feedback-card-head{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.feedback-card-head>i{display:grid;place-items:center;width:44px;height:44px;border-radius:14px;background:rgba(108,43,141,.1);color:var(--primary,#6c2b8d);font-size:1.25rem}.feedback-card-head div{display:flex;flex-direction:column}.feedback-card-head small{color:var(--muted,#718096)}.feedback-meta{display:flex;flex-wrap:wrap;gap:.55rem;margin-bottom:.85rem}.feedback-meta span{padding:.55rem .75rem;border-radius:12px;background:rgba(108,43,141,.055);display:inline-flex;align-items:center;gap:.4rem}.feedback-meta i{color:var(--primary,#6c2b8d)}.rating-lines{display:grid;gap:.7rem;margin:.9rem 0}.rating-lines>div{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.7rem;border-radius:13px;background:rgba(108,43,141,.045)}.infinite-sentinel{height:70px;display:grid;place-items:center;color:var(--primary,#6c2b8d)}.infinite-sentinel.hidden{display:none}.hero-counter{min-width:64px;height:64px;border-radius:20px;display:grid;place-items:center;background:linear-gradient(135deg,#6c2b8d,#8d43ad);color:#fff;font-size:1.45rem;font-weight:900;box-shadow:0 12px 28px rgba(108,43,141,.22)}.vote-choice{padding:1rem;border-radius:15px;background:rgba(38,166,91,.09);color:#167a44;font-weight:900;margin-bottom:.9rem;display:flex;gap:.6rem;align-items:center}@media(max-width:900px){.rating-stats-grid,.infinite-card-grid{grid-template-columns:1fr}.star-rating label{font-size:2rem}}

/* Maintenance communication v4 scoped refinements */
.maintenance-public-wrap .animated-contact-section,.maintenance-public-wrap #contactIdentity{animation:maintenanceSectionReveal .42s cubic-bezier(.2,.8,.2,1)}
@keyframes maintenanceSectionReveal{from{opacity:0;transform:translateY(14px) scale(.99)}to{opacity:1;transform:none}}
.maintenance-public-wrap .poll-public-grid{display:grid;gap:18px}
.maintenance-public-wrap .poll-public-card{border:1px solid rgba(108,43,141,.16);border-radius:22px;padding:24px;background:linear-gradient(145deg,var(--card-bg,#fff),rgba(108,43,141,.035));box-shadow:0 12px 30px rgba(76,26,97,.08);animation:maintenanceSectionReveal .42s both}
.maintenance-public-wrap .poll-options{display:grid;gap:10px;margin-top:16px}
.maintenance-public-wrap .poll-option-card{display:flex;align-items:center;gap:12px;padding:15px 17px;border:1px solid rgba(108,43,141,.12);border-radius:15px;background:rgba(108,43,141,.035);cursor:pointer;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}
.maintenance-public-wrap .poll-option-card:hover{transform:translateY(-2px);border-color:var(--primary-color);box-shadow:0 8px 18px rgba(108,43,141,.11)}
.maintenance-public-wrap .poll-option-card input{width:auto;margin:0;accent-color:var(--primary-color)}
.maintenance-public-wrap .poll-option-check{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:rgba(108,43,141,.1);color:var(--primary-color)}
.maintenance-public-wrap .poll-option-card input:not(:checked)+.poll-option-check i{opacity:0}
.maintenance-public-wrap .poll-option-text{flex:1;font-weight:700}
.mention-composer{position:relative}.mention-menu{position:absolute;inset-inline:0;bottom:calc(100% + 8px);z-index:30;background:var(--card-bg,#fff);border:1px solid rgba(108,43,141,.18);border-radius:14px;box-shadow:0 14px 30px rgba(15,23,42,.16);padding:6px;max-height:250px;overflow:auto}.mention-menu button{width:100%;display:flex;align-items:center;gap:10px;padding:10px 12px;border:0;border-radius:10px;background:transparent;color:inherit;text-align:start}.mention-menu button:hover{background:rgba(108,43,141,.09);color:var(--primary-color)}
.customer-request-file{font:inherit;border:0;cursor:pointer}

/* ===== Maintenance Communication v5 targeted refinements ===== */
.public-contact-body{margin:0;background:var(--page-bg,#f7f4fb);min-height:100vh}.public-contact-header{height:88px;background:#fff;border-bottom:1px solid #eee5f6;display:flex;align-items:center;justify-content:center;gap:14px;padding:12px 24px;color:var(--primary-color);font-size:1.2rem;font-weight:800}.public-contact-header img{max-height:58px;max-width:150px;object-fit:contain}.source-attachment-upload-card{min-height:145px;display:flex!important;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:8px;padding:24px}.source-attachment-upload-icon{display:flex;align-items:center;justify-content:center;font-size:2.6rem;line-height:1}.source-attachment-upload-text{font-weight:800}.source-attachment-drop-zone.drag-over{border-color:var(--primary-color)!important;background:var(--primary-light)!important;transform:translateY(-2px)}.animated-contact-section{animation:contactReveal .38s cubic-bezier(.2,.8,.2,1)}.animated-contact-section .input-group{animation:fieldReveal .32s ease both}.animated-contact-section .input-group:nth-child(2){animation-delay:.04s}.animated-contact-section .input-group:nth-child(3){animation-delay:.08s}@keyframes contactReveal{from{opacity:0;transform:translateY(18px) scale(.99)}to{opacity:1;transform:none}}@keyframes fieldReveal{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.contact-inline-link,.feedback-meta a{color:var(--primary-color);text-decoration:none;display:inline-flex;align-items:center;gap:6px}.readonly-field{padding:14px;border:1px solid #e4dced;border-radius:14px;background:#faf8fc}.compact-upload{min-height:90px!important;padding:12px!important}.financial-upload-form{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.entry-thread-modal{position:fixed;inset:0;background:rgba(20,15,28,.55);z-index:10050;display:flex;align-items:center;justify-content:center;padding:18px}.entry-thread-dialog{width:min(720px,96vw);max-height:86vh;overflow:auto;background:#fff;border-radius:22px;padding:24px;box-shadow:0 24px 80px rgba(0,0,0,.25)}.thread-open-btn,.card-action-row button{width:auto!important}.card-action-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}.feedback-meta a,.feedback-meta span{background:#faf8fc;border:1px solid #eee5f6;border-radius:12px;padding:8px 10px}.maintenance-contact-attachments .customer-request-file{cursor:pointer}.poll-public-card{overflow:hidden}.poll-option-card{display:grid!important;grid-template-columns:36px 1fr;align-items:center;min-height:68px}.hidden{display:none!important}

.public-flash-stack{position:fixed;top:96px;inset-inline:20px;z-index:1200;display:grid;gap:8px}.public-flash{max-width:720px;margin:auto;width:100%;padding:14px 18px;border-radius:14px;background:#fff;border:1px solid #eadff3;box-shadow:0 12px 32px rgba(0,0,0,.14);text-align:center;font-weight:800}.public-flash.error{color:#b91c1c;border-color:#fecaca;background:#fff7f7}.public-flash.success{color:#166534;border-color:#bbf7d0;background:#f0fdf4}.attachment-selection-item{display:flex;align-items:center;gap:10px;padding:10px 12px;margin-top:8px;border:1px solid #eadff3;border-radius:12px;background:#fff}.attachment-selection-item span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

.maintenance-close-link{display:inline-flex;align-items:center;gap:8px}.inline-actions{display:flex;gap:12px;flex-wrap:wrap}.maintenance-message .customer-request-file{margin-top:8px}.source-attachment-upload-card{display:flex!important;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:8px}.new-section-table a{word-break:break-word}

/* v7 surgical additions */
.notification-matrix-wrap{overflow:auto;border:1px solid #eee5f6;border-radius:18px}.notification-matrix{min-width:1180px}.notification-matrix th{text-align:center;white-space:nowrap}.notification-matrix td:not(:first-child){text-align:center}.notification-user{position:sticky;inset-inline-start:0;background:var(--card-bg,#fff);z-index:2;min-width:190px}.notification-user i{color:var(--primary-color);margin-inline-end:8px}.settings-motion-card{animation:contactReveal .42s cubic-bezier(.2,.8,.2,1) both}.settings-user-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:14px}.settings-user-card{display:flex;align-items:center;gap:12px;padding:16px;border:1px solid #eee5f6;border-radius:16px;background:#fff;cursor:pointer;transition:.2s ease}.settings-user-card:hover{transform:translateY(-2px);box-shadow:0 10px 26px rgba(93,43,134,.1)}.settings-user-card>input{position:absolute;opacity:0}.settings-user-check{width:30px;height:30px;border:2px solid #d8c8e8;border-radius:10px;display:grid;place-items:center;color:transparent}.settings-user-card>input:checked+.settings-user-check{background:var(--primary-color);border-color:var(--primary-color);color:#fff}.settings-user-card strong,.settings-user-card small{display:block}.settings-user-card small{color:var(--text-muted);margin-top:3px}.status-compensated{background:#e0f2fe;color:#075985}.maintenance-focus-motion{animation:maintenanceFocusMotion 1.8s ease both}@keyframes maintenanceFocusMotion{0%{box-shadow:0 0 0 0 rgba(93,43,134,.5);transform:scale(.985)}35%{box-shadow:0 0 0 12px rgba(93,43,134,.12);transform:scale(1)}100%{box-shadow:0 12px 35px rgba(93,43,134,.08)}}.poll-status-toggle{display:inline-flex;align-items:center;gap:8px;margin:14px 0;font-weight:800}.entry-thread-modal .maintenance-close-link span{display:inline!important}.entry-thread-dialog{position:relative}.entry-thread-dialog .maintenance-close-link{margin-bottom:14px}.new-section-form-card .collapsible-body{animation:contactReveal .32s ease both}@media(max-width:760px){.notification-matrix{min-width:980px}.settings-user-grid{grid-template-columns:1fr}.maintenance-filter-form .responsive-grid{grid-template-columns:1fr}}

.entry-thread-dialog .entry-thread-close-control{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:9px!important;color:#fff!important;background:var(--primary-color)!important;border:0!important;min-height:48px!important;font-weight:900!important}.entry-thread-dialog .entry-thread-close-control i,.entry-thread-dialog .entry-thread-close-control span{display:inline-block!important;color:#fff!important;opacity:1!important;visibility:visible!important}.poll-admin-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.poll-admin-card-head p{margin:4px 0 0;color:var(--text-muted);white-space:pre-wrap}.poll-edit-dialog{width:min(900px,96vw)}.public-contact-body .contact-motion-active{animation:contactMotionActive .7s cubic-bezier(.16,1,.3,1) both}.public-contact-body .contact-type-main select{transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}.public-contact-body .contact-type-main select:focus{transform:translateY(-3px) scale(1.01);box-shadow:0 14px 32px rgba(93,43,134,.18)}.public-contact-body .contact-form-shell{position:relative;overflow:visible}.public-contact-body .contact-form-shell:before{content:"";position:absolute;inset:-1px;border-radius:24px;pointer-events:none;opacity:0;background:linear-gradient(110deg,transparent,rgba(93,43,134,.12),transparent);transform:translateX(-70%)}.public-contact-body .contact-form-shell.contact-shell-motion:before{animation:contactShellSweep .9s ease both}.public-contact-body .conditional-contact-motion:not(.hidden){animation:conditionalContactReveal .55s cubic-bezier(.16,1,.3,1) both}@keyframes contactMotionActive{0%{opacity:0;transform:translateY(28px) scale(.965);filter:blur(3px)}55%{opacity:1;transform:translateY(-5px) scale(1.008);filter:blur(0)}100%{opacity:1;transform:none;filter:blur(0)}}@keyframes conditionalContactReveal{0%{opacity:0;transform:translateY(18px) scale(.97)}65%{opacity:1;transform:translateY(-3px) scale(1.006)}100%{opacity:1;transform:none}}@keyframes contactShellSweep{0%{opacity:0;transform:translateX(-70%)}30%{opacity:1}100%{opacity:0;transform:translateX(70%)}}

.machine-request-full-panel{width:100%;margin-inline-start:auto}.machine-request-full-panel .responsive-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.maintenance-rating-overview{padding:18px 22px}.maintenance-rating-overview strong{font-size:1.5rem;color:var(--primary-color)}#maintenanceInfiniteSentinel,#qrInfiniteSentinel{display:flex;justify-content:center;padding:24px;color:var(--primary-color)}.poll-admin-card li{display:flex;justify-content:space-between;gap:12px;align-items:center}.poll-admin-card li strong{font-size:.78rem;color:#64748b}.financial-approval-page .new-section-list-card{border-top:4px solid var(--primary-color)}

.maintenance-rating-overview{display:flex!important;flex-direction:column;align-items:center!important;justify-content:center!important;text-align:center;gap:7px}.maintenance-rating-overview>div{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap}.maintenance-rating-overview small{color:var(--text-muted)}.maintenance-stars i,.maintenance-inline-rating i{color:#d1d5db}.maintenance-stars i.is-active,.maintenance-inline-rating i.is-active{color:#f59e0b!important}

.financial-compact-action{width:auto!important;min-height:40px!important;padding:9px 14px!important}.financial-file-picker{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:8px 12px;border:1px dashed var(--primary-color);border-radius:12px;cursor:pointer;background:var(--primary-light)}.financial-file-picker i{color:var(--primary-color)}.financial-file-picker small{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.financial-upload-form{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.maintenance-report-modal-link{background:none!important;border:0!important;padding:0!important;color:var(--primary-color)!important;text-decoration:underline;font-weight:800;cursor:pointer}

.poll-total-voters{display:flex;align-items:center;gap:9px;margin:14px 0;padding:10px 12px;border-radius:12px;background:var(--primary-light);color:var(--primary-color);font-weight:800}.poll-total-voters strong{margin-inline-start:auto;font-size:1rem}.poll-summary-date{color:var(--text-muted);font-size:.78rem;font-weight:700}

.poll-rating-card{position:relative;overflow:hidden}.poll-rating-card .poll-admin-card-head{align-items:flex-start}.poll-top-option{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:10px 0;padding:10px 13px;border-radius:13px;background:linear-gradient(110deg,rgba(93,43,134,.10),rgba(142,68,173,.18),rgba(93,43,134,.10));background-size:220% 100%;border:1px solid rgba(93,43,134,.16);color:var(--primary-color);animation:pollTopOptionGlow 3.4s ease-in-out infinite}.poll-top-option i{color:#d99b13}.poll-top-option span{font-size:.78rem;font-weight:800}.poll-top-option strong{font-weight:900}.poll-top-option b{margin-inline-start:auto;padding:4px 9px;border-radius:999px;background:rgba(255,255,255,.72);font-size:.75rem}@keyframes pollTopOptionGlow{0%,100%{background-position:0 50%;transform:translateY(0)}50%{background-position:100% 50%;transform:translateY(-1px)}}

.poll-option-row{align-items:end}.poll-option-remove{width:44px;height:44px;align-self:end}.poll-admin-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.public-contact-body .poll-admin-grid{grid-template-columns:minmax(0,760px);justify-content:center}.new-section-row-actions{display:flex;flex-wrap:wrap;gap:10px}.new-section-row-actions button{margin:0!important}.settings-attachments-list .app-attachment-chip{max-width:100%}.settings-attachments-list .attachment-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attendance-qr-actions>*{min-height:48px;display:inline-flex;align-items:center;justify-content:center}.employee-tracking-line{stroke:#5d2b86;stroke-width:4}.poll-top-option{animation:pollTopPulse 1.8s ease-in-out infinite}@keyframes pollTopPulse{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}@media(max-width:900px){.poll-admin-grid{grid-template-columns:1fr}}

/* v10.9 surgical request corrections */
.poll-option-remove{width:38px;height:38px;padding:0;border-radius:12px;display:inline-flex;align-items:center;justify-content:center}
.poll-select-card{width:100%;border:1px solid rgba(93,43,134,.18);background:rgba(93,43,134,.045);border-radius:16px;padding:14px 16px;display:flex;align-items:center;gap:10px;cursor:pointer;color:var(--text-color);transition:.2s ease}
.poll-select-card:hover{transform:translateY(-1px);border-color:rgba(93,43,134,.42)}
.poll-select-card.is-selected,.poll-option-card.is-selected{background:rgba(93,43,134,.14);border-color:var(--primary-color);box-shadow:0 8px 22px rgba(93,43,134,.12)}
.poll-option-card{cursor:pointer;transition:.2s ease}
.poll-public-grid .poll-public-card{max-width:760px;width:100%;margin-inline:auto}
.rating-contact-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.rating-contact-row a{display:inline-flex;align-items:center;gap:7px;padding:8px 12px;border-radius:12px;background:rgba(93,43,134,.07);color:var(--primary-color);text-decoration:none}
.request-note-link{display:inline-flex;align-items:center;gap:7px;border:0;background:transparent;color:var(--primary-color);text-decoration:underline;cursor:pointer;max-width:210px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.request-preview-attachment{cursor:pointer}
.tracking-direction-arrow{background:transparent!important;border:0!important}
.tracking-direction-arrow span{display:block;color:#fff;background:#5d2b86;border-radius:50%;width:18px;height:18px;line-height:18px;text-align:center;font-size:11px;box-shadow:0 1px 5px rgba(0,0,0,.3)}
.notification-settings-table th:nth-child(4n+2),.notification-settings-table td:nth-child(4n+2),.notification-settings-table th:nth-child(4n+3),.notification-settings-table td:nth-child(4n+3),.notification-settings-table th:nth-child(4n+4),.notification-settings-table td:nth-child(4n+4){background:rgba(93,43,134,.045)}


/* v10.9 live surgical corrections */
html.contact-type-switching,html.contact-type-switching body{overflow-x:hidden!important}.public-contact-body,.maintenance-public-wrap,.contact-form-shell,.contact-section,.poll-public-grid,.poll-public-card{min-width:0;max-width:100%;width:100%;box-sizing:border-box}.maintenance-public-wrap{overflow-x:clip}.public-contact-body .contact-form-shell{overflow:hidden!important}.maintenance-public-wrap .poll-public-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.maintenance-public-wrap .poll-public-card{max-width:none!important;margin:0!important}.poll-select-card:not(.is-selected) .poll-option-check i{opacity:0}.poll-select-card.is-selected .poll-option-check i{opacity:1}.poll-option-remove{border:0!important;background:transparent!important;color:#c62828!important;box-shadow:none!important;font-size:1rem!important;padding:0!important;min-width:38px!important;flex:0 0 38px!important}.poll-option-remove:hover{background:#feecec!important;color:#b91c1c!important}.vote-stats-full{grid-template-columns:1fr!important}.vote-stats-full>.rating-stat-card{width:100%!important}.attendance-monthly-table tbody td.attendance-monthly-in{color:#16803a!important;font-weight:800!important}.attendance-monthly-table tbody td.attendance-monthly-out{color:#c62828!important;font-weight:800!important}.notification-matrix thead tr:nth-child(2) th:nth-child(6n+2),.notification-matrix thead tr:nth-child(2) th:nth-child(6n+3),.notification-matrix thead tr:nth-child(2) th:nth-child(6n+4),.notification-matrix tbody td:nth-child(6n+2),.notification-matrix tbody td:nth-child(6n+3),.notification-matrix tbody td:nth-child(6n+4){background:rgba(93,43,134,.055)!important}.notification-matrix thead tr:first-child th:nth-child(even){background:rgba(93,43,134,.08)!important}.notification-matrix thead tr:nth-child(2) th:nth-child(6n+5),.notification-matrix thead tr:nth-child(2) th:nth-child(6n+6),.notification-matrix thead tr:nth-child(2) th:nth-child(6n+7),.notification-matrix tbody td:nth-child(6n+5),.notification-matrix tbody td:nth-child(6n+6),.notification-matrix tbody td:nth-child(6n+7){background:transparent!important}.shared-poll-result-card{width:min(100%,760px);margin-inline:auto}.tracking-direction-arrow{background:transparent!important;border:0!important;z-index:550!important}.tracking-direction-arrow span{display:grid!important;place-items:center!important;width:20px!important;height:20px!important;border-radius:50%!important;background:#5d2b86!important;color:#fff!important;font-size:11px!important;line-height:1!important;border:2px solid #fff!important;box-shadow:0 2px 8px rgba(0,0,0,.28)!important;transform-origin:center!important}.employee-tracking-map{touch-action:none;min-height:420px;background:#e5e7eb}.request-attachment-name{display:inline-block;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:middle}.request-note-icon{width:38px;height:38px;border:0;border-radius:10px;display:inline-grid;place-items:center;background:rgba(93,43,134,.08);color:var(--primary-color);cursor:pointer}.source-attachment-chip>button{flex:0 0 auto}.poll-card-actions button,.poll-card-actions a{min-width:0}.rating-qr-card-action{display:flex!important;width:100%!important;margin-top:12px!important;border:1px solid rgba(93,43,134,.18)!important;border-radius:12px!important;min-height:44px!important;align-items:center!important;justify-content:center!important;box-sizing:border-box!important}
@media(max-width:900px){.maintenance-public-wrap .poll-public-grid{grid-template-columns:1fr}.maintenance-public-wrap,.contact-form-shell,.contact-section{overflow-x:hidden}.employee-tracking-map{height:56vh!important;min-height:360px}.shared-poll-result-card{width:100%}}

/* ===== Operations and Running: unified motion ===== */
.operations-motion-page .new-section-wrap>.form-card:not(.maintenance-focus-motion):not(.settings-motion-card),
.operations-motion-page .new-section-wrap>form>.form-card:not(.maintenance-focus-motion):not(.settings-motion-card){animation:operationsCardEnter .42s cubic-bezier(.2,.8,.2,1) backwards}
.operations-motion-page :is(.v11-card,.installation-request-card,.assignment-request-card,.transfer-card,.maintenance-message,.v11-timeline article,.v11-route-stops li){transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease,background-color .3s ease}
.operations-motion-page :is(.v11-card,.installation-request-card,.assignment-request-card,.transfer-card,.maintenance-message,.v11-timeline article,.v11-route-stops li):hover{transform:translateY(-5px);box-shadow:0 12px 25px rgba(0,0,0,.08)}
.operations-motion-page .new-section-table tbody tr>*{transition:transform .25s ease,box-shadow .25s ease,background-color .25s ease}
.operations-motion-page .new-section-table tbody tr:hover>*{transform:translateY(-2px);box-shadow:0 8px 18px rgba(93,43,134,.08)}
.operations-motion-page :is(.maintenance-badge,.v11-pill,.new-section-status){transition:color .25s ease,background-color .25s ease,box-shadow .25s ease,transform .25s ease}
.operations-motion-page :is(.maintenance-badge,.v11-pill,.new-section-status):hover{color:#fff;background:var(--primary-color);box-shadow:0 7px 16px rgba(93,43,134,.2);transform:translateY(-2px)}
.operations-motion-page :is(button,.attendance-export-button,.attendance-icon-button,.new-section-actions a,.installation-actions a,.transfer-actions a){transition:transform .22s ease,box-shadow .22s ease,filter .22s ease,background-color .22s ease,color .22s ease}
.operations-motion-page :is(button,.attendance-export-button,.attendance-icon-button,.new-section-actions a,.installation-actions a,.transfer-actions a):hover{transform:translateY(-2px);box-shadow:0 8px 18px rgba(93,43,134,.16)}
.operations-motion-page button:active{transform:scale(.97)}
@keyframes operationsCardEnter{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.operations-motion-page *, .operations-motion-page *::before, .operations-motion-page *::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
.website-settings-page .new-section-wrap>*{animation:websiteSettingsEnter .48s cubic-bezier(.16,1,.3,1) both}.website-settings-page .new-section-wrap>*:nth-child(2){animation-delay:.06s}.website-settings-page .new-section-wrap>*:nth-child(3){animation-delay:.12s}.website-settings-page .new-section-wrap>*:nth-child(4){animation-delay:.18s}.website-settings-page .new-section-hero-card{position:relative;overflow:hidden}.website-settings-page .new-section-hero-card:after{content:"";position:absolute;width:190px;height:190px;inset-inline-end:-95px;top:-105px;border-radius:50%;background:rgba(93,43,134,.07);animation:websiteSettingsOrb 5.5s ease-in-out infinite;pointer-events:none}.website-settings-page :is(.new-section-form-card,.v11-card){transition:transform .3s cubic-bezier(.16,1,.3,1),box-shadow .3s ease,border-color .3s ease}.website-settings-page :is(.new-section-form-card,.v11-card):hover{transform:translateY(-5px);box-shadow:0 18px 38px rgba(93,43,134,.13);border-color:#ddcee9}.website-settings-page .v11-card img{transition:transform .4s cubic-bezier(.16,1,.3,1),filter .35s ease}.website-settings-page .v11-card:hover img{transform:scale(1.035);filter:drop-shadow(0 9px 15px rgba(93,43,134,.14))}.website-settings-page :is(button,.attendance-export-button,.source-attachment-upload-card){transition:transform .24s cubic-bezier(.16,1,.3,1),box-shadow .24s ease,border-color .24s ease,background-color .24s ease}.website-settings-page :is(button,.attendance-export-button):hover{transform:translateY(-2px);box-shadow:0 9px 20px rgba(93,43,134,.16)}.website-settings-page .source-attachment-upload-card:hover{transform:translateY(-3px);box-shadow:0 12px 26px rgba(93,43,134,.1);border-color:var(--primary-color)}.website-settings-page .collapsible-card.open .collapsible-body{animation:websiteSettingsBody .42s cubic-bezier(.16,1,.3,1) both}@keyframes websiteSettingsEnter{from{opacity:0;transform:translateY(20px) scale(.985)}to{opacity:1;transform:none}}@keyframes websiteSettingsBody{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:none}}@keyframes websiteSettingsOrb{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(-15px,12px) scale(1.08)}}@media(prefers-reduced-motion:reduce){.website-settings-page *, .website-settings-page *::before, .website-settings-page *::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
