:root {
    --wm-brand-700: #083b82;
    --wm-brand-600: #0b57b7;
    --wm-brand-500: #1976d2;
    --wm-brand-100: #d8e9ff;
    --wm-brand-50: #f4f8ff;
    --wm-success: #147a4b;
    --wm-warning: #a15c00;
    --wm-danger: #b42318;
    --wm-info: #176b87;
    --wm-neutral-900: #172033;
    --wm-neutral-700: #40516b;
    --wm-neutral-500: #6b7b91;
    --wm-neutral-200: #d9e1ec;
    --wm-neutral-100: #edf2f8;
    --wm-surface: #fff;
    --wm-page: var(--wm-brand-50);
    --wm-primary: var(--wm-brand-600);
    --wm-primary-dark: var(--wm-brand-700);
    --wm-font-sans: Inter, ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;
    --wm-space-1: .25rem;
    --wm-space-2: .5rem;
    --wm-space-3: .75rem;
    --wm-space-4: 1rem;
    --wm-space-5: 1.5rem;
    --wm-space-6: 2rem;
    --wm-radius-control: .625rem;
    --wm-radius-card: .875rem;
    --wm-radius-panel: 1.125rem;
    --wm-shadow-sm: 0 1px 2px rgba(23,32,51,.06),0 3px 10px rgba(23,32,51,.04);
    --wm-shadow-md: 0 10px 28px rgba(23,32,51,.10);
    --bs-primary: var(--wm-brand-600);
    --bs-primary-rgb: 11,87,183;
    --bs-body-font-family: var(--wm-font-sans);
    --bs-body-color: var(--wm-neutral-900);
    --bs-body-bg: var(--wm-page);
    --bs-border-color: var(--wm-neutral-200);
    --bs-border-radius: var(--wm-radius-control);
    --bs-border-radius-lg: var(--wm-radius-card);
}
.message-list{max-height:400px}
.cookie-panel{z-index:1080}

body {
    background:var(--wm-page);
    color:var(--wm-neutral-900);
    font-family:var(--wm-font-sans);
    line-height:1.55;
    overflow-wrap:anywhere;
}

p,li{max-width:72ch}.container{--bs-gutter-x:clamp(1.5rem,4vw,3rem)}
h1,h2,h3,h4,h5,h6{color:var(--wm-neutral-900);font-weight:700;letter-spacing:-.015em}
.card{border-color:var(--wm-neutral-200);border-radius:var(--wm-radius-card);box-shadow:var(--wm-shadow-sm)}
.form-control,.form-select,.input-group-text,.btn,.dropdown-menu,.modal-content,.offcanvas{border-radius:var(--wm-radius-control)}
.form-control,.form-select{border-color:#78889e}.form-control:disabled,.form-select:disabled,.btn:disabled{opacity:.72}
.form-control:focus,.form-select:focus{border-color:var(--wm-brand-500);box-shadow:0 0 0 .2rem rgba(25,118,210,.18)}
.btn-primary:hover,.btn-primary:focus{background:var(--wm-brand-700)!important;border-color:var(--wm-brand-700)!important}
.btn-outline-primary{border-color:var(--wm-brand-600);color:var(--wm-brand-600)}
.btn-outline-primary:hover{background:var(--wm-brand-600);border-color:var(--wm-brand-600)}
.text-secondary{color:var(--wm-neutral-700)!important}
.bg-body-tertiary{background-color:var(--wm-page)!important}
.wm-reading{max-width:72ch}.wm-panel{background:var(--wm-surface);border:1px solid var(--wm-neutral-200);border-radius:var(--wm-radius-panel);box-shadow:var(--wm-shadow-sm)}
.wm-density-public{padding:var(--wm-space-5)}.wm-density-work{padding:var(--wm-space-4)}.wm-density-table td,.wm-density-table th{padding:.625rem .75rem}
.wm-status{align-items:center;display:inline-flex;gap:.35rem}.wm-status::before{background:currentColor;border-radius:50%;content:"";height:.45rem;width:.45rem}
.wm-skeleton{animation:wm-pulse 1.5s ease-in-out infinite;background:linear-gradient(90deg,var(--wm-neutral-100),var(--wm-brand-100),var(--wm-neutral-100));background-size:200% 100%;border-radius:var(--wm-radius-control);display:block;min-height:1rem}
[data-catalog-skeleton]{min-height:14rem}img[loading="lazy"]{background:var(--wm-neutral-100)}
@keyframes wm-pulse{0%{background-position:200% 0}100%{background-position:-200% 0}}
.wm-token{border:1px solid var(--wm-neutral-200);border-radius:var(--wm-radius-card);min-height:6rem;padding:var(--wm-space-3)}
.wm-token-swatch{border-radius:var(--wm-radius-control);height:3rem;margin-bottom:var(--wm-space-2)}
.wm-global-search{min-width:min(20rem,100%)}
.wm-ajax-indicator{align-items:center;background:var(--wm-neutral-900);border-radius:999px;color:#fff;display:flex;gap:.5rem;left:50%;padding:.55rem 1rem;position:fixed;top:1rem;transform:translateX(-50%);z-index:2100}.wm-ajax-indicator[hidden]{display:none}
.wm-app-shell{display:grid;gap:var(--wm-space-5);grid-template-columns:minmax(0,1fr)}.wm-app-content{min-width:0}.wm-app-sidebar{min-width:0}
@media (min-width:992px){.wm-app-shell{grid-template-columns:15rem minmax(0,1fr)}.offcanvas-lg .offcanvas-body{padding:0}.wm-global-search{max-width:18rem}.navbar .nav-link.active{box-shadow:inset 0 -3px 0 #fff}}
@media (max-width:991.98px){.offcanvas-body{align-items:stretch!important;flex-direction:column}.offcanvas-body>.navbar-nav{align-items:stretch!important}.offcanvas-body .dropdown-menu{position:static}.wm-global-search{width:100%}}

.skip-link{background:#fff;border:2px solid var(--wm-primary);border-radius:.4rem;color:var(--wm-primary-dark);inset-inline-start:1rem;padding:.65rem 1rem;position:fixed;top:-5rem;z-index:2000}.skip-link:focus{top:1rem}
:focus-visible{box-shadow:0 0 0 6px var(--wm-brand-600)!important;outline:3px solid #fff!important;outline-offset:2px!important}
button:focus:not(:focus-visible),a:focus:not(:focus-visible),input:focus:not(:focus-visible),select:focus:not(:focus-visible),textarea:focus:not(:focus-visible){outline:none}
[aria-busy="true"]{cursor:progress}.btn[aria-disabled="true"]{cursor:wait}

.bg-primary {
    background-color: var(--wm-primary) !important;
}

.btn-primary,
.text-bg-primary {
    background-color: var(--wm-primary) !important;
    border-color: var(--wm-primary) !important;
}

.text-primary {
    color: var(--wm-primary) !important;
}

.hero {
    background: linear-gradient(125deg, var(--wm-primary-dark), var(--wm-primary) 65%, #2f88d8);
    position: relative;
}

.hero::after {
    border: 2px solid rgba(255, 255, 255, .12);
    border-radius: 50%;
    content: "";
    height: 340px;
    position: absolute;
    inset-inline-end: -130px;
    top: -190px;
    width: 340px;
}

.stat-card {
    background: rgba(255, 255, 255, .14);
    border: 1px solid rgba(255, 255, 255, .2);
    border-radius: 1rem;
    display: flex;
    flex-direction: column;
    padding: 1rem 1.25rem;
}

.stat-card strong {
    font-size: 2rem;
}

.feature-icon {
    color: var(--wm-primary);
    font-size: 2rem;
}

.avatar {
    align-items: center;
    background: #e7f0fb;
    border-radius: 50%;
    color: var(--wm-primary);
    display: flex;
    flex: 0 0 3rem;
    font-size: 1.4rem;
    height: 3rem;
    justify-content: center;
}

.empty-state {
    background: #fff;
    border: 1px dashed #b7c3d2;
    border-radius: 1rem;
    padding: 4rem 1rem;
    text-align: center;
}

.empty-state > i {
    color: #7890aa;
    display: block;
    font-size: 3rem;
    margin-bottom: 1rem;
}

.order-description {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
}

.code-input {
    font-size: 2rem;
    letter-spacing: .45rem;
}

.wm-auth-steps {
    counter-reset: auth-step;
    display: grid;
    gap: .5rem;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    list-style: none;
    padding: 0;
}

.wm-auth-steps li {
    color: var(--wm-neutral-500);
    font-size: .75rem;
    text-align: center;
}

.wm-auth-steps li::before {
    background: var(--wm-neutral-100);
    border-radius: 50%;
    content: counter(auth-step);
    counter-increment: auth-step;
    display: block;
    height: 1.75rem;
    line-height: 1.75rem;
    margin: 0 auto .25rem;
    width: 1.75rem;
}

.wm-auth-steps li[aria-current="step"] {
    color: var(--wm-brand-700);
    font-weight: 700;
}

.wm-auth-steps li[aria-current="step"]::before {
    background: var(--wm-brand-600);
    color: #fff;
}

.wm-wizard-steps li { display:flex;align-items:center;gap:.5rem;flex:1 1 9rem;color:var(--bs-secondary-color);padding:.65rem .75rem;border:1px solid var(--bs-border-color);border-radius:var(--bs-border-radius); }
.wm-wizard-steps li.is-current { color:var(--bs-primary);border-color:var(--bs-primary);background:rgba(var(--bs-primary-rgb),.06);font-weight:600; }
.wm-wizard-steps li.is-complete { color:var(--bs-success);border-color:rgba(var(--bs-success-rgb),.45); }
.wm-wizard-number { display:inline-grid;place-items:center;width:1.75rem;height:1.75rem;border-radius:50%;background:var(--bs-tertiary-bg);font-weight:700;flex:0 0 auto; }

.language-menu {
    min-width: 19rem;
}

.language-options {
    max-height: min(24rem, 60vh);
    overflow-y: auto;
}

.language-options .dropdown-item {
    border-radius: .25rem;
}

.legal-document {
    max-width: 58rem;
}

.legal-contents {
    columns: 2;
    column-gap: 2.5rem;
}

.legal-contents li {
    break-inside: avoid;
    margin-bottom: .4rem;
}

.legal-section {
    scroll-margin-top: 1.5rem;
}

.legal-section + .legal-section {
    border-top: 1px solid var(--bs-border-color);
    margin-top: 2rem;
    padding-top: 2rem;
}

.legal-section p,
.legal-section li {
    line-height: 1.7;
}

@media (max-width: 575.98px) {
    .hero {
        border-radius: .75rem !important;
    }
    .display-5 {
        font-size: 2rem;
    }
    .language-menu {
        min-width: min(19rem, calc(100vw - 2rem));
    }
    .legal-contents {
        columns: 1;
    }
}

@media (pointer:coarse){.navbar a,.navbar button,.dropdown-item,.form-check-label{min-height:44px}.btn:not(.btn-sm),.form-control,.form-select{min-height:44px}}
@media (orientation:landscape) and (max-height:500px){.cookie-panel{max-height:75vh;overflow-y:auto}.navbar-collapse{max-height:75vh;overflow-y:auto}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
[dir="rtl"] .ms-auto{margin-left:0!important;margin-right:auto!important}[dir="rtl"] .me-auto{margin-left:auto!important;margin-right:0!important}[dir="rtl"] .border-start{border-left:0!important;border-right:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color)!important;padding-left:0!important;padding-right:1rem!important}
.table-responsive{max-width:100%;overscroll-behavior-inline:contain}.wm-app-content,.card-body,.offcanvas-body{min-width:0}

@media (max-width:575.98px){
    .wm-mobile-cards thead{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}
    .wm-mobile-cards,.wm-mobile-cards tbody,.wm-mobile-cards tr,.wm-mobile-cards td{display:block;width:100%}
    .wm-mobile-cards tr{border:1px solid var(--wm-neutral-200);border-radius:var(--wm-radius-control);margin-block-end:.75rem;padding:.5rem}
    .wm-mobile-cards td{border:0;display:grid;gap:.75rem;grid-template-columns:minmax(7rem,40%) minmax(0,1fr);padding:.35rem .5rem;text-align:start!important}
    .wm-mobile-cards td::before{color:var(--wm-neutral-700);content:attr(data-label);font-size:.875rem;font-weight:600}
    .wm-mobile-cards td[colspan]{display:block;text-align:center!important}.wm-mobile-cards td[colspan]::before{content:none}
}

.profile-avatar {
    border-radius: 50%;
    height: 4rem;
    object-fit: cover;
    width: 4rem;
}

.profile-avatar-lg {
    border-radius: 1.25rem;
    height: 8rem;
    object-fit: cover;
    width: 8rem;
}

.wm-search-filters.offcanvas-start {
    width: min(92vw, 24rem);
}

[data-specialist-catalog][aria-busy="true"] [data-specialist-card] {
    opacity: .55;
}

[data-order-catalog][aria-busy="true"] .order-catalog > div {
    opacity: .55;
}

.wm-order-actions {
    background: var(--wm-neutral-0);
    border: 1px solid var(--wm-neutral-200);
    border-radius: var(--wm-radius-card);
    box-shadow: var(--wm-shadow-sm);
    padding: 1rem;
    position: sticky;
    top: 1rem;
    z-index: 1010;
}

[data-specialist-company] .company-logo {
    flex: 0 0 auto;
    height: 2.5rem;
    object-fit: contain;
    width: 2.5rem;
}

@media (min-width: 992px) {
    .wm-search-filters.offcanvas-lg {
        width: auto;
    }

    .wm-profile-actions {
        background: var(--wm-neutral-0);
        border: 1px solid var(--wm-neutral-200);
        border-radius: var(--wm-radius-control);
        box-shadow: var(--wm-shadow-sm);
        padding: .75rem;
        position: sticky;
        top: 1rem;
        z-index: 1020;
    }
}

@media (max-width: 767.98px) {
    [data-specialist-profile] {
        padding-bottom: 5.5rem;
    }

    .wm-profile-actions {
        background: var(--wm-neutral-0);
        border-top: 1px solid var(--wm-neutral-200);
        bottom: 0;
        box-shadow: 0 -.4rem 1.2rem rgba(15, 23, 42, .12);
        left: 0;
        margin: 0 !important;
        padding: .75rem 1rem;
        position: fixed;
        right: 0;
        z-index: 1030;
    }
}

.portfolio-cover,
.order-cover {
    aspect-ratio: 16 / 9;
    object-fit: cover;
    width: 100%;
}

.admin-body {
    min-height: 100vh;
}

.admin-shell {
    display: flex;
    min-height: 100vh;
}

.admin-sidebar {
    display: flex;
    flex: 0 0 16.5rem;
    flex-direction: column;
    height: 100vh;
    overflow-y: auto;
    padding: 1.25rem 1rem;
    position: sticky;
    top: 0;
    z-index: 1040;
}

.admin-brand {
    align-items: center;
    display: flex;
    font-size: 1.05rem;
    font-weight: 700;
    gap: .65rem;
    margin-bottom: 1.25rem;
    padding: .5rem .75rem;
}

.admin-sidebar .nav-link {
    align-items: center;
    color: rgba(255, 255, 255, .72);
    display: flex;
    font-size: .9rem;
    gap: .7rem;
    padding: .65rem .75rem;
}

.admin-sidebar .nav-link:hover {
    background: rgba(255, 255, 255, .08);
    color: #fff;
}

.admin-sidebar .nav-link.active {
    background: var(--wm-primary);
    color: #fff;
}

.admin-sidebar-footer {
    margin-top: auto;
    padding-top: 1.25rem;
}

.admin-content {
    min-width: 0;
    width: 100%;
}

.admin-topbar {
    align-items: center;
    display: flex;
    gap: 1rem;
    min-height: 4.25rem;
    padding: .75rem 1.75rem;
}

.admin-main {
    padding: 1.75rem;
}

.admin-stat-card {
    border-left: .25rem solid var(--wm-primary) !important;
}

.admin-stat-icon {
    align-items: center;
    background: #e7f0fb;
    border-radius: .75rem;
    color: var(--wm-primary);
    display: inline-flex;
    flex: 0 0 3rem;
    font-size: 1.3rem;
    height: 3rem;
    justify-content: center;
}

.admin-column-filters th {
    background: var(--bs-tertiary-bg);
    padding: .4rem;
}

.admin-column-filters .form-control {
    min-width: 7.5rem;
}

.admin-table-search {
    max-width: 36rem;
    min-width: min(100%, 18rem);
}

.admin-main table.dataTable thead > tr > th.sorting,
.admin-main table.dataTable thead > tr > th.sorting_asc,
.admin-main table.dataTable thead > tr > th.sorting_desc {
    cursor: pointer;
    padding-right: 2rem;
}

.admin-main .admin-data-table-ready thead > tr:first-child > th.sorting:hover,
.admin-main .admin-data-table-ready thead > tr:first-child > th.sorting_asc:hover,
.admin-main .admin-data-table-ready thead > tr:first-child > th.sorting_desc:hover {
    background-color: var(--bs-primary-bg-subtle);
}

.admin-main .dataTables_wrapper .dataTables_filter input,
.admin-main .dataTables_wrapper .dataTables_length select {
    background-color: #fff;
}

.admin-login-shell {
    margin: 10vh auto 0;
    max-width: 30rem;
    padding: 1rem;
}

.admin-login-brand {
    color: var(--wm-primary-dark);
    font-size: 1.35rem;
    font-weight: 700;
    margin-bottom: 1rem;
    text-align: center;
}

.company-logo,
.company-logo-lg {
    background: var(--bs-tertiary-bg);
    border: 1px solid var(--bs-border-color);
    border-radius: .75rem;
    object-fit: contain;
}

.company-logo {
    height: 5rem;
    width: 5rem;
}

.company-logo-lg {
    align-items: center;
    display: flex;
    flex: 0 0 8rem;
    height: 8rem;
    justify-content: center;
    width: 8rem;
}

@media (max-width: 991.98px) {
    .admin-sidebar {
        left: -17rem;
        position: fixed;
        transition: left .2s ease;
        width: 16.5rem;
    }

    .admin-sidebar-open .admin-sidebar {
        left: 0;
    }

    .admin-sidebar-open::after {
        background: rgba(0, 0, 0, .45);
        content: '';
        inset: 0;
        position: fixed;
        z-index: 1030;
    }

    .admin-main,
    .admin-topbar {
        padding-left: 1rem;
        padding-right: 1rem;
    }
}
.order-view-compact > [class*="col-"]{width:50%}.order-view-compact .card-body{padding:1rem!important}.order-view-compact .order-description{display:none}.order-view-list > [class*="col-"]{width:100%}.order-view-list article .card-body{display:grid;grid-template-columns:1fr auto;gap:.5rem 1rem}.order-view-list .order-description{grid-column:1/-1}.order-view-table{display:table;width:100%;margin:0}.order-view-table > [class*="col-"]{display:table-row}.order-view-table article{display:table-cell;border-bottom:1px solid var(--bs-border-color);border-radius:0!important}.order-view-table article .card-body{display:grid;grid-template-columns:2fr 3fr 1fr;align-items:center;gap:1rem}.order-view-table .order-description{margin:0}@media(max-width:767.98px){.order-view-compact > [class*="col-"]{width:100%}.order-view-table,.order-view-table > [class*="col-"]{display:block}.order-view-table article .card-body{grid-template-columns:1fr}}
