:root{--ops-navy:#101735;--ops-cyan:#079ac1;--ops-blue:#087f9f;--ops-yellow:#ffc62a;--ops-bg:#f3f7fa;--ops-line:#dfe8ef;--ops-ink:#15263d;--ops-muted:#65768a;--ops-danger:#c53d4b}
.ops-page{background:var(--ops-bg)}.ops-panel{min-width:0;padding:28px;border:1px solid var(--ops-line);border-radius:18px;background:#fff;box-shadow:0 14px 40px #12324a0a}.ops-heading,.ops-ticket-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:24px}.ops-heading span{color:var(--ops-cyan);font-size:12px;font-weight:800}.ops-heading h1,.ops-ticket-heading h1{margin:4px 0;color:var(--ops-navy);font-size:28px}.ops-heading p,.ops-ticket-heading p{margin:0;color:var(--ops-muted);font-size:13px}.ops-primary,.ops-secondary,.ops-danger{display:inline-flex;min-height:44px;align-items:center;justify-content:center;gap:8px;padding:9px 18px;border:0;border-radius:10px;font-weight:800;text-decoration:none;cursor:pointer}.ops-primary{color:#fff!important;background:linear-gradient(135deg,var(--ops-cyan),#08b9d7)}.ops-secondary{color:var(--ops-blue);background:#eaf7fb}.ops-danger{color:#fff;background:var(--ops-danger)}.ops-list{display:grid;gap:12px}.ops-ticket-card{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px;border:1px solid var(--ops-line);border-radius:14px;color:inherit;background:#fff;text-decoration:none;transition:.2s ease}.ops-ticket-card:hover{border-color:#9bd8e7;transform:translateY(-2px);box-shadow:0 12px 28px #10324a0c}.ops-ticket-card h2{margin:5px 0;font-size:17px;color:var(--ops-navy)}.ops-ticket-card p{margin:0;color:var(--ops-muted);font-size:12px}.ops-code{color:var(--ops-cyan);font-size:12px;font-weight:900;letter-spacing:.03em}.ops-ticket-meta{display:grid;justify-items:end;gap:8px}.ops-ticket-meta time{color:#8998a7;font-size:10px}.ops-badge{display:inline-flex;width:max-content;align-items:center;padding:5px 10px;border-radius:999px;color:#365066;background:#edf3f7;font-size:11px;font-weight:800}.status-open,.status-awaiting_staff,.status-reopened{color:#075e75;background:#dff5fa}.status-awaiting_customer,.status-assigned,.status-en_route{color:#825c00;background:#fff2c5}.status-resolved,.status-completed,.status-technician_accepted{color:#16633d;background:#dff5e8}.status-closed,.status-canceled{color:#6c7782;background:#edf0f2}.priority-urgent{color:#a51e32;background:#ffe3e7}.priority-high{color:#a45d00;background:#fff0d7}.ops-empty{padding:55px 22px;text-align:center;color:var(--ops-muted)}.ops-empty>i{font-size:42px;color:#8ed5e6}.ops-empty h2{margin:12px 0 4px;color:var(--ops-navy)}.ops-empty .ops-primary{margin-top:14px}.ops-form{display:grid;gap:16px}.ops-form label{display:grid;gap:6px;color:var(--ops-ink);font-size:12px;font-weight:750}.ops-form :is(input,select,textarea){width:100%;min-height:46px;padding:10px 12px;border:1px solid #d7e2e9;border-radius:10px;outline:0;background:#fbfdfe;color:var(--ops-ink)}.ops-form textarea{resize:vertical}.ops-form :is(input,select,textarea):focus{border-color:var(--ops-cyan);box-shadow:0 0 0 4px #079ac118}.ops-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:16px}.ops-upload small{color:var(--ops-muted);font-weight:400}.ops-actions{display:flex;gap:10px}.ops-ticket-heading{margin:0}.ops-thread{display:grid;gap:13px}.ops-message{width:min(88%,720px);padding:17px;border-radius:15px}.ops-message.is-customer{justify-self:start;background:#edf8fb;border-bottom-right-radius:4px}.ops-message.is-staff{justify-self:end;background:#f1f2fb;border-bottom-left-radius:4px}.ops-message header{display:flex;justify-content:space-between;gap:15px}.ops-message header b{color:var(--ops-navy)}.ops-message time{color:#8595a5;font-size:10px}.ops-message p{margin:9px 0 0;white-space:pre-line;color:#43566a}.ops-attachment{display:inline-flex;align-items:center;gap:6px;margin-top:9px;color:var(--ops-blue);font-size:11px}.ops-check{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center;gap:8px!important}.ops-check input{width:18px!important;min-height:18px!important}.ops-internal{border:1px dashed #d49328!important;background:#fff9e8!important}.ops-admin-grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:22px;align-items:start}.ops-tech-list{display:grid;gap:12px}.ops-tech-card{display:grid;grid-template-columns:50px minmax(0,1fr) auto;gap:14px;align-items:center;padding:15px;border:1px solid var(--ops-line);border-radius:13px}.ops-tech-avatar{display:grid;width:48px;height:48px;place-items:center;border-radius:13px;color:#fff;background:var(--ops-blue)}.ops-tech-card h3,.ops-tech-card p{margin:0}.ops-tech-card p{color:var(--ops-muted);font-size:11px}.ops-tech-card form{display:flex;align-items:center;gap:7px}.ops-tech-card form button{border:0;border-radius:8px;padding:8px;color:#fff;background:var(--ops-blue)}
.tech-body{margin:0;padding-bottom:78px;background:var(--ops-bg);color:var(--ops-ink);font-family:Vazirmatn,Arial,sans-serif}.tech-header{position:sticky;z-index:20;top:0;display:flex;align-items:center;justify-content:space-between;padding:14px max(18px,calc((100vw - 980px)/2));color:#fff;background:var(--ops-navy)}.tech-header a{display:flex;align-items:baseline;gap:8px;color:#fff;text-decoration:none}.tech-header b{font-size:23px}.tech-header span{color:#b5cedd;font-size:10px}.tech-header button{border:1px solid #ffffff35;border-radius:8px;padding:7px 12px;color:#fff;background:transparent}.tech-main{width:min(940px,calc(100% - 30px));margin:28px auto}.tech-welcome{padding:28px;border-radius:20px;color:#fff;background:linear-gradient(135deg,var(--ops-navy),#123f58)}.tech-welcome span{color:#64d5ed;font-size:12px}.tech-welcome h1{margin:4px 0}.tech-welcome p{margin:0;color:#c8d8e4}.tech-section{margin-top:24px}.tech-section>header{display:flex;align-items:center;justify-content:space-between}.tech-work-list{display:grid;gap:12px}.tech-work-card{display:grid;grid-template-columns:54px minmax(0,1fr) auto;align-items:center;gap:13px;padding:16px;border:1px solid var(--ops-line);border-radius:15px;color:inherit;background:#fff;text-decoration:none}.tech-work-icon{display:grid;width:52px;height:52px;place-items:center;border-radius:14px;color:var(--ops-navy);background:var(--ops-yellow)}.tech-work-card h3,.tech-work-card p{margin:3px 0}.tech-work-card p{color:var(--ops-muted);font-size:11px}.tech-work-card span{font-size:10px;color:var(--ops-cyan)}.tech-back{display:inline-flex;gap:7px;margin-bottom:14px;color:var(--ops-blue);text-decoration:none}.tech-job-hero{display:flex;justify-content:space-between;gap:16px;padding:24px;border-radius:18px;color:#fff;background:var(--ops-navy)}.tech-job-hero h1{margin:5px 0}.tech-job-hero p{margin:0;color:#c5d7e4}.tech-decision,.tech-status,.tech-timeline{margin-top:18px;padding:22px;border:1px solid var(--ops-line);border-radius:17px;background:#fff}.tech-decision>div{display:flex;gap:10px}.tech-decision details form{display:grid;gap:8px;margin-top:8px}.tech-info-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:18px}.tech-info-grid article{display:grid;gap:7px;padding:18px;border:1px solid var(--ops-line);border-radius:15px;background:#fff}.tech-info-grid i{color:var(--ops-cyan);font-size:22px}.tech-info-grid span{color:var(--ops-muted);font-size:10px}.tech-info-grid b{font-size:12px;line-height:1.9}.tech-timeline article{display:grid;grid-template-columns:14px 1fr;gap:12px;padding-bottom:18px}.tech-timeline article>i{position:relative;width:10px;height:10px;margin-top:8px;border-radius:50%;background:var(--ops-cyan)}.tech-timeline article>i:after{position:absolute;top:10px;right:4px;width:2px;height:55px;content:"";background:#cce3eb}.tech-timeline article:last-child>i:after{display:none}.tech-timeline p{margin:3px 0}.tech-timeline time{color:var(--ops-muted);font-size:10px}.tech-bottom{position:fixed;z-index:30;right:0;bottom:0;left:0;display:none;grid-template-columns:1fr 1fr;padding:9px;background:#fff;box-shadow:0 -8px 30px #0d29351a}.tech-bottom a{display:grid;justify-items:center;color:var(--ops-muted);font-size:11px;text-decoration:none}.ops-toast{margin-bottom:14px;padding:12px 15px;border-radius:10px;color:#17613b;background:#def4e7}.ops-toast.is-error{color:#9b2232;background:#ffe7ea}
@media(max-width:900px){.ops-admin-grid{grid-template-columns:1fr}.ops-tech-card{grid-template-columns:48px 1fr}.ops-tech-card form{grid-column:1/-1;flex-wrap:wrap}.tech-info-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.ops-panel{padding:18px;border-radius:14px}.ops-heading,.ops-ticket-heading{align-items:flex-start;flex-direction:column}.ops-heading h1,.ops-ticket-heading h1{font-size:23px}.ops-heading .ops-primary{width:100%}.ops-ticket-card{align-items:flex-start;flex-direction:column}.ops-ticket-meta{width:100%;grid-auto-flow:column;justify-content:space-between;justify-items:start}.ops-grid-2{grid-template-columns:1fr}.ops-actions{display:grid}.ops-message{width:100%}.tech-main{margin-top:18px}.tech-info-grid{grid-template-columns:1fr}.tech-job-hero{align-items:flex-start;flex-direction:column}.tech-bottom{display:grid}.tech-decision>div{flex-direction:column}.ops-tech-card form select{max-width:160px}}
@media print{.member-ticket-sidebar,.customer-dock,.mobile-ringing-call,.ops-form,.main-footer,.site-header{display:none!important}.member-ticket-layout{display:block!important}.ops-panel{box-shadow:none}}
.ops-assigned-tech{display:grid;grid-template-columns:54px minmax(0,1fr) auto;align-items:center;gap:14px}.ops-assigned-tech h2,.ops-assigned-tech p{margin:0}.ops-assigned-tech span,.ops-assigned-tech p{color:var(--ops-muted);font-size:11px}.ops-related-ticket{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 22px;border:1px solid #cce7ef;border-radius:14px;background:#f0fafe}.ops-related-ticket div{display:grid}.ops-related-ticket span{color:var(--ops-muted);font-size:11px}.ops-admin-timeline{display:grid;gap:10px;margin-top:20px}.ops-admin-timeline article{display:grid;grid-template-columns:180px 140px minmax(0,1fr) auto;gap:12px;align-items:center;padding:10px 0;border-bottom:1px solid var(--ops-line)}.ops-admin-timeline p{margin:0}.ops-admin-timeline time{color:var(--ops-muted);font-size:10px}
@media(max-width:600px){.ops-assigned-tech{grid-template-columns:48px 1fr}.ops-assigned-tech .ops-primary{grid-column:1/-1}.ops-related-ticket{align-items:flex-start;flex-direction:column}.ops-related-ticket .ops-secondary{width:100%}.ops-admin-timeline article{grid-template-columns:1fr}.ops-admin-timeline article>*{margin:0}}
.ops-unread{display:inline-grid;min-width:20px;height:20px;place-items:center;margin-inline-start:5px;border-radius:999px;color:var(--ops-navy);background:var(--ops-yellow);font-size:10px}.ops-support-callout{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 22px 18px;padding:14px 16px;border-radius:12px;background:#eaf8fb}.ops-support-callout>div{display:flex;align-items:center;gap:10px}.ops-support-callout i{color:var(--ops-cyan);font-size:22px}.ops-support-callout span{display:grid;color:var(--ops-muted);font-size:11px}.ops-support-callout a{white-space:nowrap;color:var(--ops-blue);font-size:12px;font-weight:800}@media(max-width:600px){.ops-support-callout{align-items:flex-start;flex-direction:column;margin:0 12px 15px}.ops-support-callout a{width:100%;padding-top:8px;border-top:1px solid #cbe8ef;text-align:center}}

/* Progressive member profile */
.member-profile-wizard {
    position: relative;
    gap: 18px;
    padding: 22px 30px 30px;
}

.member-account-panel .member-panel-heading p {
    margin: 5px 0 0;
    color: #7b8795;
    font-size: 12px;
}

.profile-wizard-steps {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 52px minmax(0, 1fr) 52px minmax(0, 1fr);
    align-items: center;
    gap: 8px;
    padding: 15px 18px;
    border: 1px solid #e4edf2;
    border-radius: 18px;
    background: #f8fbfd;
}

.profile-wizard-steps button {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 0;
    border: 0;
    color: #7b8a98;
    background: transparent;
    font: inherit;
    text-align: right;
    cursor: pointer;
}

.profile-wizard-steps button:disabled {
    cursor: default;
}

.profile-wizard-steps button > b {
    display: grid;
    width: 38px;
    height: 38px;
    flex: 0 0 38px;
    place-items: center;
    border: 1px solid #d7e3ea;
    border-radius: 12px;
    color: #758493;
    background: #fff;
    transition: .25s ease;
}

.profile-wizard-steps button > span {
    display: grid;
    gap: 2px;
    color: #465a6d;
    font-size: 12px;
    font-weight: 900;
}

.profile-wizard-steps small {
    color: #93a0ab;
    font-size: 9px;
    font-weight: 500;
}

.profile-wizard-steps > i {
    height: 1px;
    background: #dce7ed;
}

.profile-wizard-steps button.is-active > b,
.profile-wizard-steps button.is-complete > b {
    border-color: transparent;
    color: #fff;
    background: linear-gradient(135deg, #05a8cb, #087f9f);
    box-shadow: 0 8px 18px rgba(7, 154, 193, .2);
}

.profile-wizard-steps button.is-active > span {
    color: var(--ops-navy);
}

.profile-wizard-progress {
    overflow: hidden;
    height: 4px;
    border-radius: 999px;
    background: #e8f0f4;
}

.profile-wizard-progress span {
    display: block;
    width: 0;
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg, #08b9d7, #087f9f);
    transition: width .35s ease;
}

.profile-wizard-panel {
    animation: profile-step-in .3s ease both;
}

.profile-wizard-panel[hidden] {
    display: none;
}

.profile-step-heading {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 20px;
}

.profile-step-heading > span {
    display: grid;
    width: 52px;
    height: 52px;
    flex: 0 0 52px;
    place-items: center;
    border-radius: 16px;
    color: #079ac1;
    background: #e6f7fb;
    font-size: 19px;
}

.profile-step-heading small {
    color: #079ac1;
    font-size: 10px;
    font-weight: 900;
}

.profile-step-heading h3 {
    margin: 2px 0;
    color: var(--ops-navy);
    font-size: 21px;
}

.profile-step-heading p {
    margin: 0;
    color: #738397;
    font-size: 11px;
}

.member-profile-wizard .member-form-grid label > small {
    color: #8a98a6;
    font-size: 10px;
    font-weight: 400;
}

.member-profile-wizard .member-location-card {
    margin-top: 18px;
    border-color: #dcebf1;
    background: #f7fcfd;
}

.member-profile-wizard .member-location-icon {
    background: linear-gradient(145deg, #08b9d7, #087f9f);
    box-shadow: 0 10px 22px rgba(7, 154, 193, .2);
}

.member-profile-wizard .member-location-copy button,
.profile-next,
.profile-save {
    display: inline-flex;
    min-height: 48px;
    align-items: center;
    justify-content: center;
    gap: 9px;
    padding: 10px 20px;
    border: 0;
    border-radius: 12px;
    color: #fff;
    background: linear-gradient(135deg, #08afd0, #087f9f);
    box-shadow: 0 10px 24px rgba(7, 154, 193, .2);
    font: inherit;
    font-size: 12px;
    font-weight: 900;
    cursor: pointer;
    transition: transform .2s ease, box-shadow .2s ease;
}

.profile-next:hover,
.profile-save:hover {
    transform: translateY(-2px);
    box-shadow: 0 14px 28px rgba(7, 154, 193, .27);
}

.profile-step-actions {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-top: 22px;
    padding-top: 18px;
    border-top: 1px solid #e8eef2;
}

.profile-step-actions-single {
    justify-content: flex-end;
}

.profile-back {
    display: inline-flex;
    min-height: 46px;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 9px 18px;
    border: 1px solid #d8e4ea;
    border-radius: 12px;
    color: #53687a;
    background: #fff;
    font: inherit;
    font-size: 12px;
    font-weight: 800;
    cursor: pointer;
}

.member-verified-field {
    position: relative;
    display: block;
}

.member-verified-field i {
    position: absolute;
    top: 50%;
    right: 14px;
    color: #18a779;
    transform: translateY(-50%);
}

.member-verified-field input {
    padding-right: 42px;
}

.profile-privacy-note {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-top: 18px;
    padding: 14px 16px;
    border: 1px solid #d8efe5;
    border-radius: 13px;
    color: #4d6f61;
    background: #f2fbf7;
    font-size: 11px;
}

.profile-privacy-note > i {
    color: #18a779;
    font-size: 22px;
}

.profile-privacy-note span {
    display: grid;
}

.profile-step-heading-success > span {
    color: #198c66;
    background: #e6f7ef;
}

.profile-review-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.profile-review-grid article {
    position: relative;
    display: grid;
    grid-template-columns: 36px minmax(0, 1fr) auto;
    align-items: center;
    gap: 3px 11px;
    padding: 16px;
    border: 1px solid #e1eaf0;
    border-radius: 14px;
    background: #fbfdfe;
}

.profile-review-grid article > i {
    display: grid;
    width: 36px;
    height: 36px;
    grid-row: 1 / 3;
    place-items: center;
    border-radius: 11px;
    color: #087f9f;
    background: #e6f7fb;
}

.profile-review-grid article > span {
    color: #8a98a7;
    font-size: 9px;
}

.profile-review-grid article > b {
    overflow-wrap: anywhere;
    color: #1d3146;
    font-size: 12px;
}

.profile-review-grid article > button {
    grid-row: 1 / 3;
    border: 0;
    color: #079ac1;
    background: transparent;
    font: inherit;
    font-size: 10px;
    font-weight: 800;
    cursor: pointer;
}

.profile-review-address {
    grid-column: 1 / -1;
}

.ops-upload input[type="file"],
.ticket-reply-form input[type="file"] {
    min-height: 48px;
    padding: 6px;
    border: 1px dashed #bcd7e2;
    border-radius: 11px;
    color: #6e7f8d;
    background: #f7fbfd;
    font: inherit;
    font-size: 11px;
    cursor: pointer;
}

.ops-upload input[type="file"]::file-selector-button,
.ticket-reply-form input[type="file"]::file-selector-button {
    min-height: 34px;
    margin-left: 10px;
    padding: 6px 13px;
    border: 0;
    border-radius: 8px;
    color: #fff;
    background: #087f9f;
    font: inherit;
    font-weight: 800;
    cursor: pointer;
}

.ops-file-picker {
    display: grid;
    gap: 7px;
    color: var(--ops-ink);
    font-size: 12px;
    font-weight: 750;
    cursor: pointer;
}

.ops-file-picker > input[type="file"] {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    clip-path: inset(50%);
    white-space: nowrap;
}

.ops-file-picker-control {
    display: grid;
    grid-template-columns: 40px auto minmax(0, 1fr);
    align-items: center;
    gap: 11px;
    min-height: 58px;
    padding: 8px 10px;
    border: 1px dashed #b9d4df;
    border-radius: 12px;
    color: #087f9f;
    background: #f5fbfd;
    transition: border-color .2s ease, background .2s ease;
}

.ops-file-picker-control > i {
    display: grid;
    width: 40px;
    height: 40px;
    place-items: center;
    border-radius: 10px;
    color: #fff;
    background: #087f9f;
    font-size: 17px;
}

.ops-file-picker-control > b {
    white-space: nowrap;
}

.ops-file-picker-control > small {
    overflow: hidden;
    color: #788998;
    font-weight: 400;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.ops-file-picker > small {
    color: var(--ops-muted);
    font-size: 10px;
    font-weight: 400;
}

.ops-file-picker:hover .ops-file-picker-control,
.ops-file-picker:focus-within .ops-file-picker-control,
.ops-file-picker.has-file .ops-file-picker-control {
    border-color: #079ac1;
    background: #ecf9fc;
}

@keyframes profile-step-in {
    from { opacity: 0; transform: translateY(8px); }
    to { opacity: 1; transform: translateY(0); }
}

@media (max-width: 767px) {
    .member-profile-wizard {
        padding: 16px 14px 22px;
    }

    .profile-wizard-steps {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 4px;
        padding: 10px 8px;
    }

    .profile-wizard-steps > i,
    .profile-wizard-steps small {
        display: none;
    }

    .profile-wizard-steps button {
        justify-content: center;
        gap: 6px;
    }

    .profile-wizard-steps button > b {
        width: 32px;
        height: 32px;
        flex-basis: 32px;
        border-radius: 10px;
    }

    .profile-wizard-steps button > span {
        font-size: 10px;
    }

    .profile-step-heading {
        align-items: flex-start;
    }

    .profile-step-heading h3 {
        font-size: 18px;
    }

    .profile-review-grid {
        grid-template-columns: 1fr;
    }

    .profile-review-address {
        grid-column: auto;
    }

    .profile-step-actions {
        display: grid;
        grid-template-columns: 1fr 1.4fr;
    }

    .profile-step-actions-single {
        grid-template-columns: 1fr;
    }

    .profile-step-actions button {
        width: 100%;
    }
}

@media (max-width: 390px) {
    .profile-wizard-steps button {
        flex-direction: column;
    }

    .profile-step-actions {
        grid-template-columns: 1fr;
    }
}

@media (prefers-reduced-motion: reduce) {
    .profile-wizard-panel {
        animation: none;
    }

    .profile-wizard-progress span,
    .profile-next,
    .profile-save {
        transition: none;
    }
}
