@import url("https://fonts.googleapis.com/css2?family=Roboto:wght@400;500;600;700&display=swap");

/* Сайтын бүх хэсэгт Manrope font-ийг үндсэн болгож, Roboto-г зөвхөн тусгай module class дээр хэрэглэнэ. */
:root {
    --app-font-family: "Manrope", sans-serif;
    --news-detail-body-font-family: "Roboto", sans-serif;
}

/* Body дээр global font family-г оноож, нийт layout-д нэг мөр font хэрэглэх нөхцөл бүрдүүлнэ. */
html,
body {
    font-family: var(--app-font-family);
}

/* Input болон button төрлийн контролууд browser default font руу буцахаас сэргийлж inherit болгоно. */
button,
input,
optgroup,
select,
textarea {
    font-family: inherit;
}


/* Сайтын бүх текст элементүүд ManRope font-ийг алдалгүй өвлөхийн тулд universal selector дээр глобал утга тохируулна. */
*,
*::before,
*::after {
    font-family: var(--app-font-family);
}

/* NewsList модуль доторх бүх текст ManRope байх шаардлагыг давхар баталгаажуулна. */
.news-list-module,
.news-list-module * {
    font-family: var(--app-font-family);
}


/* Сайтын үндсэн container өргөнийг desktop дээр 1120px стандарт өргөнд ойртуулж төвлөрүүлнэ. */
.container {
    width: 100% !important;
    max-width: 1120px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

h1:focus {
    outline: none;
}

.valid.modified:not([type=checkbox]) {
    outline: 1px solid #26b050;
}

.invalid {
    outline: 1px solid #e50000;
}

.validation-message {
    color: #e50000;
}

.blazor-error-boundary {
    background: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTYiIGhlaWdodD0iNDkiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIG92ZXJmbG93PSJoaWRkZW4iPjxkZWZzPjxjbGlwUGF0aCBpZD0iY2xpcDAiPjxyZWN0IHg9IjIzNSIgeT0iNTEiIHdpZHRoPSI1NiIgaGVpZ2h0PSI0OSIvPjwvY2xpcFBhdGg+PC9kZWZzPjxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMCkiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0yMzUgLTUxKSI+PHBhdGggZD0iTTI2My41MDYgNTFDMjY0LjcxNyA1MSAyNjUuODEzIDUxLjQ4MzcgMjY2LjYwNiA1Mi4yNjU4TDI2Ny4wNTIgNTIuNzk4NyAyNjcuNTM5IDUzLjYyODMgMjkwLjE4NSA5Mi4xODMxIDI5MC41NDUgOTIuNzk1IDI5MC42NTYgOTIuOTk2QzI5MC44NzcgOTMuNTEzIDI5MSA5NC4wODE1IDI5MSA5NC42NzgyIDI5MSA5Ny4wNjUxIDI4OS4wMzggOTkgMjg2LjYxNyA5OUwyNDAuMzgzIDk5QzIzNy45NjMgOTkgMjM2IDk3LjA2NTEgMjM2IDk0LjY3ODIgMjM2IDk0LjM3OTkgMjM2LjAzMSA5NC4wODg2IDIzNi4wODkgOTMuODA3MkwyMzYuMzM4IDkzLjAxNjIgMjM2Ljg1OCA5Mi4xMzE0IDI1OS40NzMgNTMuNjI5NCAyNTkuOTYxIDUyLjc5ODUgMjYwLjQwNyA1Mi4yNjU4QzI2MS4yIDUxLjQ4MzcgMjYyLjI5NiA1MSAyNjMuNTA2IDUxWk0yNjMuNTg2IDY2LjAxODNDMjYwLjczNyA2Ni4wMTgzIDI1OS4zMTMgNjcuMTI0NSAyNTkuMzEzIDY5LjMzNyAyNTkuMzEzIDY5LjYxMDIgMjU5LjMzMiA2OS44NjA4IDI1OS4zNzEgNzAuMDg4N0wyNjEuNzk1IDg0LjAxNjEgMjY1LjM4IDg0LjAxNjEgMjY3LjgyMSA2OS43NDc1QzI2Ny44NiA2OS43MzA5IDI2Ny44NzkgNjkuNTg3NyAyNjcuODc5IDY5LjMxNzkgMjY3Ljg3OSA2Ny4xMTgyIDI2Ni40NDggNjYuMDE4MyAyNjMuNTg2IDY2LjAxODNaTTI2My41NzYgODYuMDU0N0MyNjEuMDQ5IDg2LjA1NDcgMjU5Ljc4NiA4Ny4zMDA1IDI1OS43ODYgODkuNzkyMSAyNTkuNzg2IDkyLjI4MzcgMjYxLjA0OSA5My41Mjk1IDI2My41NzYgOTMuNTI5NSAyNjYuMTE2IDkzLjUyOTUgMjY3LjM4NyA5Mi4yODM3IDI2Ny4zODcgODkuNzkyMSAyNjcuMzg3IDg3LjMwMDUgMjY2LjExNiA4Ni4wNTQ3IDI2My41NzYgODYuMDU0N1oiIGZpbGw9IiNGRkU1MDAiIGZpbGwtcnVsZT0iZXZlbm9kZCIvPjwvZz48L3N2Zz4=) no-repeat 1rem/1.8rem, #b32121;
    padding: 1rem 1rem 1rem 3.7rem;
    color: white;
}

    .blazor-error-boundary::after {
        content: "An error has occurred."
    }

.darker-border-checkbox.form-check-input {
    border-color: #929292;
}

.form-floating > .form-control-plaintext::placeholder, .form-floating > .form-control::placeholder {
    color: var(--bs-secondary-color);
    text-align: end;
}

.form-floating > .form-control-plaintext:focus::placeholder, .form-floating > .form-control:focus::placeholder {
    text-align: start;
}

/* Editor.js-н popover body дээр render болох үед transparent харагдахыг global түвшинд цагаан болгоно. */
.ce-popover,
.ce-popover__container,
.ce-popover__items,
.ce-popover-item,
.ce-popover-item:hover,
.ce-popover-item--active {
    background-color: #ffffff !important;
    opacity: 1 !important;
}

.ce-popover,
.ce-popover__container {
    backdrop-filter: none !important;
}

/* Shared NewsItem болон SpecialNewsItem component-ийн style-уудыг CSS isolation-оос салгаж App.css дээр global байдлаар байршуулсан. */
/* Card UI-г @apply-гаас хамаарахгүйгээр тогтвортой харагдуулахын тулд static CSS өгч байна. */
.news-item {
    position: relative;
    overflow: hidden;
    /* Card өөрөө aspect-ratio-г удирдаж news item-ийг 1:1 квадрат харьцаатай болгоно. */
    aspect-ratio: 1 / 1;
    border: 1px solid rgb(203 213 225);
    border-radius: 1.5rem;
    background: #fff;
    box-shadow: 0 1px 3px rgba(15, 23, 42, 0.1);
    /* Mouse hover үед card бага зэрэг дээш хөдлөх, зөөлөн томрох smooth animation-г нэг дор удирдана. */
    transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.35s ease, border-color 0.35s ease;
    will-change: transform;
}

.news-item:hover {
    transform: translateY(-6px) scale(1.015);
    border-color: rgba(59, 130, 246, 0.35);
    box-shadow: 0 18px 36px rgba(15, 23, 42, 0.18);
}

.news-item__thumb,
.news-item__overlay,
.news-item__content {
    /* Hover animation зөвхөн card биш доторх зураг, overlay-д ч зөөлөн мэдрэмж өгнө. */
    transition: transform 0.45s cubic-bezier(0.22, 1, 0.36, 1), opacity 0.35s ease;
}

.news-item:hover .news-item__thumb {
    transform: scale(1.04);
}

.news-item:hover .news-item__content {
    transform: translateY(-4px);
}

.news-item:hover .news-item__overlay {
    opacity: 0.95;
}

.news-item__link {
    display: block;
    height: 100%;
    text-decoration: none;
}

.news-item button.news-item__link {
    /* NewsItem iframe popup trigger button нь anchor card-тэй яг адил харагдахын тулд browser default style-ийг цэвэрлэнэ. */
    appearance: none;
    background: transparent;
    border: 0;
    color: inherit;
    cursor: pointer;
    padding: 0;
    text-align: inherit;
    width: 100%;
}

.news-item__thumb-wrap {
    position: relative;
    /* Card-ын тооцоолсон өндрийг бүтнээр нь дүүргэж зураг зөвхөн контент болгоно. */
    height: 100%;
    width: 100%;
    background: rgb(241 245 249);
}

.news-item__thumb {
    height: 100%;
    width: 100%;
    object-fit: cover;
}

.news-item__thumb--fallback {
    display: flex;
    align-items: center;
    justify-content: center;
    color: rgb(100 116 139);
}

.news-item__badge {
    position: absolute;
    top: 1rem;
    left: 1rem;
    z-index: 20;
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    border-radius: 999px;
    background: rgba(15, 23, 42, 0.9);
    color: #fff;
    font-size: 0.75rem;
    font-weight: 600;
    padding: 0.25rem 0.75rem;
}

.news-item__badge--published {
    background: rgba(21, 128, 61, 0.9);
}

.news-item__badge--unpublished {
    background: rgba(15, 23, 42, 0.9);
}

.news-item__badge-icon {
    line-height: 1;
    font-size: 0.75rem;
}

.news-item__overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(0, 0, 0, 0.85), rgba(0, 0, 0, 0.35), rgba(0, 0, 0, 0.1));
}

.news-item__date {
    position: absolute;
    top: 1rem;
    right: 1rem;
    z-index: 20;
    /* NewsItem дээр огнооны typography-г Figma заавартай яг тааруулж шинэчилнэ. */
    color: #fff;
    font-family: var(--typography-font-family-default, Manrope);
    font-size: 9px;
    font-style: normal;
    font-weight: 400;
    line-height: 16px;
}

.news-item__content {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 10;
    color: #fff;
    padding: 1rem;
}

.news-item__category {
    margin: 0 0 0.5rem;
    color: rgb(226 232 240);
    font-size: 0.875rem;
}

.news-item__title {
    margin: 0;
    overflow: hidden;
    color: #fff;
    text-overflow: ellipsis;
    font-family: var(--app-font-family);
    font-size: 14px;
    font-style: normal;
    font-weight: 500;
    line-height: 15px;
    letter-spacing: -0.312px;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
}

/* Card дээр hover хийхэд нэг мөрөөр таслагдсан гарчиг бүтнээрээ дээш задарч харагдана. */
.news-item:hover .news-item__title {
    -webkit-line-clamp: unset;
    display: block;
    overflow: visible;
    white-space: normal;
}

.news-item__meta {
    margin: 0.75rem 0 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
    color: rgb(226 232 240);
    font-size: 0.875rem;
}

.news-item__author,
.news-item__views {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
}

.news-item__edit {
    position: absolute;
    right: 0.75rem;
    bottom: 0.75rem;
    z-index: 30;
    border: 1px solid rgb(29 78 216);
    border-radius: 0.375rem;
    background: rgb(37 99 235);
    color: #fff;
    text-decoration: none;
    font-size: 0.875rem;
    font-weight: 600;
    padding: 0.25rem 0.75rem;
}

.news-item--list {
    aspect-ratio: auto;
    min-height: 220px;
}

.news-item--list .news-item__thumb-wrap {
    display: flex;
    height: 100%;
}

.news-item--list .news-item__thumb,
.news-item--list .news-item__thumb--fallback {
    width: 280px;
    min-width: 280px;
}

.news-item--list .news-item__overlay {
    background: linear-gradient(to right, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0.7));
}

.news-item--list .news-item__content {
    left: 280px;
    padding: 1.25rem;
}

.news-item--list .news-item__title {
    font-size: 2rem;
}

@media (max-width: 767px) {
    .news-item--list .news-item__thumb-wrap {
        display: block;
    }

    .news-item--list .news-item__thumb,
    .news-item--list .news-item__thumb--fallback {
        width: 100%;
        min-width: 100%;
        height: 240px;
    }

    .news-item--list .news-item__overlay {
        background: linear-gradient(to top, rgba(0, 0, 0, 0.85), rgba(0, 0, 0, 0.35), rgba(0, 0, 0, 0.1));
    }

    .news-item--list .news-item__content {
        left: 0;
    }
}

.home-special-post-module__card {
    position: relative;
    /* Card нь боломжтой үед parent-ийн өндрийг дагаж, өргөнийг 2:3 харьцаагаар автоматаар тооцно. */
    height: 100%;
    aspect-ratio: 2 / 3;
    min-height: 0;
    border-radius: 16px;
    overflow: hidden;
    background-size: cover;
    background-position: center;
    box-shadow: inset 0 -80px 120px rgba(15, 23, 42, 0.45);
    /* NewsItem-тэй ижил hover мэдрэмжтэй болгохын тулд card болон background-г зөөлөн хөдөлгөнө. */
    transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.35s ease, filter 0.35s ease;
    will-change: transform;
}

.home-special-post-module__card:hover {
    transform: translateY(-6px) scale(1.015);
    box-shadow: inset 0 -80px 120px rgba(15, 23, 42, 0.52), 0 18px 36px rgba(15, 23, 42, 0.18);
    filter: saturate(1.05);
}

.home-special-post-module__card .home-special-post-module__overlay,
.home-special-post-module__card .home-special-post-module__name,
.home-special-post-module__card .home-special-post-module__badge {
    /* Overlay доторх гарчиг, badge нь hover үед NewsItem content шиг бага зэрэг дээшилнэ. */
    transition: transform 0.45s cubic-bezier(0.22, 1, 0.36, 1), opacity 0.35s ease;
}

.home-special-post-module__card:hover .home-special-post-module__overlay {
    transform: translateY(-4px);
}

.home-special-post-module__edit-button {
    position: absolute;
    top: 12px;
    right: 12px;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 10px;
    border-radius: 999px;
    font-size: 13px;
    font-weight: 700;
    color: #0f172a;
    background: rgba(255, 255, 255, 0.92);
}

.home-special-post-module__edit-button:hover {
    background: #ffffff;
}

.home-special-post-module__overlay {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    align-items: flex-start;
    padding: 20px;
    text-decoration: none;
}

.home-special-post-module__name {
    margin: 0;
    overflow: hidden;
    color: #ffffff;
    text-overflow: ellipsis;
    font-family: var(--app-font-family);
    font-size: 14px;
    font-weight: 600;
    line-height: 1.2;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
}

/* Badge-г гарчигийн дараах шинэ мөрөөс эхлүүлж харагдуулах layout-ыг column болгож тохируулна. */
.home-special-post-module__badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-top: 8px;
    padding: 0 12px;
    border-radius: 16px;
    background: #fb2c36;
    color: #fff;
    font-family: var(--typography-font-family-default, Manrope);
    font-size: 8px;
    font-style: normal;
    font-weight: 800;
    line-height: 16px;
}

/* NewsDetail preview дээр SpecialNewsItem / NewsItem дээрх SVG plus товчоор Browse-г нээх нийтлэг style. */
.news-card-upload-btn {
    position: absolute;
    top: 0.5rem;
    right: 0.5rem;
    z-index: 40;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.25rem;
    height: 2.25rem;
    border-radius: 9999px;
    border: 1px solid rgb(203 213 225);
    background: rgba(255, 255, 255, 0.96);
    box-shadow: 0 4px 12px rgba(15, 23, 42, 0.18);
    cursor: pointer;
}

.news-card-upload-btn:hover {
    background: #ffffff;
}

.news-card-upload-btn__icon {
    width: 1.1rem;
    height: 1.1rem;
}

/* NewsDetail component-ийн гарчгийн input style-ийг global түвшинд ашиглахын тулд app.css дээр байршуулна. */
.news-detail-header-title-input {
    width: 100%;
    border: 1px solid #c7c7c7;
    padding: 3px 10px;
    border-radius: 5px;
    background: white;
    font-size: 24px;
}

/* NewsDetail доторх Article хэсгийн уншигдах байдлыг Manrope 16px-аар тогтмолжуулна. */
.news-detail-shell article {
    font-family: "Manrope", sans-serif;
    font-size: 16px;
}


/* ModuleConfig spacing editor-ийн input болон хүрээний style-уудыг global болгон app.css-д шилжүүлэв. */
.module-spacing-editor {
    position: relative;
    min-height: 560px;
    overflow: hidden;
    background: #f8fafc;
}

.module-spacing-editor__margin-boundary {
    position: absolute;
    top: 24px;
    left: 24px;
    right: 24px;
    bottom: 24px;
    border: 3px solid #d1d5db;
    border-radius: 0.5rem;
    pointer-events: none;
}

.module-spacing-editor__div-frame {
    position: absolute;
    top: 140px;
    left: 140px;
    right: 140px;
    bottom: 140px;
    border: 4px solid #111827;
    border-radius: 0.5rem;
    background: #f3f4f6;
    pointer-events: none;
    /* Spacing frame-ийн дотоод агуулгыг төвд байрлуулах тохиргоо */
    display: flex;
    align-items: center;
    justify-content: center;
}

.module-spacing-editor__content-box {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 132px;
    height: 88px;
    border-radius: 0.25rem;
    background: #9ca3af;
    transform: translate(-50%, -50%);
    pointer-events: none;
}

.module-spacing-editor__input {
    position: absolute;
    width: 182px;
    height: 42px;
    border-radius: 0.5rem;
    border: 3px solid #111827;
    background: #ffffff;
    text-align: center;
    font-size: 0.875rem;
    color: #0f172a;
    font-weight: 600;
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.05);
    z-index: 2;
}

.module-spacing-editor__input::placeholder {
    color: #0f172a;
    opacity: 1;
}

.module-spacing-editor__input--margin-top {
    top: 64px;
    left: 50%;
    transform: translateX(-50%);
    width: 120px;
}

.module-spacing-editor__input--margin-left {
    top: 50%;
    left: 40px;
    transform: translateY(-50%);
    width: 80px;
}

.module-spacing-editor__input--margin-right {
    top: 50%;
    right: 40px;
    transform: translateY(-50%);
    width: 80px;
}

.module-spacing-editor__input--margin-bottom {
    bottom: 64px;
    left: 50%;
    transform: translateX(-50%);
    width: 120px;
}

.module-spacing-editor__input--padding-top {
    top: 170px;
    left: 50%;
    transform: translateX(-50%);
    width: 120px;
}

.module-spacing-editor__input--padding-left {
    top: 50%;
    left: 160px;
    transform: translateY(-50%);
    width: 80px;
}

.module-spacing-editor__input--padding-right {
    top: 50%;
    right: 160px;
    transform: translateY(-50%);
    width: 80px;
}

.module-spacing-editor__input--padding-bottom {
    bottom: 170px;
    left: 50%;
    transform: translateX(-50%);
    width: 120px;
}

@media (max-width: 768px) {
    .module-spacing-editor {
        min-height: 620px;
    }

    .module-spacing-editor__div-frame {
        left: 48px;
        right: 48px;
    }

    .module-spacing-editor__input {
        width: 136px;
        font-size: 0.75rem;
    }

    .module-spacing-editor__input--padding-left {
        left: 116px;
    }

    .module-spacing-editor__input--padding-right {
        right: 116px;
    }
}

/* AIGen module-ийн shared style-уудыг CSS isolation-с салгаж global app.css дээр төвлөрүүлэв. */
.aigen-empty-state {
    /* Empty state-г тогтмол өндөртэй card болгож preview хэсгийн төвд харагдуулна. */
    display: flex;
    min-height: 340px;
    width: 100%;
    align-items: center;
    justify-content: center;
    border: 2px dashed rgb(203 213 225);
    border-radius: 1rem;
    background: linear-gradient(180deg, #f8fafc 0%, #f1f5f9 100%);
}

.aigen-add-button {
    display: inline-flex;
    height: 72px;
    width: 72px;
    align-items: center;
    justify-content: center;
    border-radius: 9999px;
    background-color: rgb(37 99 235);
    color: #fff;
    box-shadow: 0 8px 20px rgba(37, 99, 235, 0.25);
    transition: transform 0.2s ease, background-color 0.2s ease;
}

.aigen-add-button:hover {
    background-color: rgb(29 78 216);
    transform: translateY(-2px);
}

.aigen-plus-icon {
    height: 36px;
    width: 36px;
}

.aigen-preview {
    width: 100%;
    min-height: 400px;
    border: 0;
}

/* AIChat popup UI-г design mockup-той ижилсүүлж global style-уудыг app.css дээр байршуулна. */
.aichat-backdrop{position:fixed;inset:0;background:rgba(17,24,39,.45);display:flex;align-items:center;justify-content:center;z-index:60}
.aichat-window{width:min(560px,calc(100vw - 24px));height:min(780px,calc(100vh - 32px));background:#fff;border-radius:26px;box-shadow:0 24px 60px rgba(0,0,0,.28);overflow:hidden;display:flex;flex-direction:column}
.aichat-window__body{flex:1;overflow:auto;padding:18px;background:#fff}
.aichat-window__composer{margin:12px 20px 18px;border:1px solid #fca5a5;border-radius:28px;background:#fff;box-shadow:0 10px 24px rgba(15,23,42,.12);padding:12px 14px;display:grid;grid-template-columns:1fr auto;align-items:end;gap:10px}
.aichat-composer__input{border:none;outline:none;resize:none;min-height:86px;padding:0;color:#334155;background:transparent}
.aichat-composer__input::placeholder{color:#94a3b8}
.aichat-composer__send{width:38px;height:38px;border:none;background:transparent;padding:0;display:inline-flex;align-items:center;justify-content:center}
.aichat-composer__send img{width:34px;height:34px}
.aichat-composer__send:disabled{opacity:.6;cursor:not-allowed}

/* Company_Description module-ийн TinyMCE HTML preview дээр bullet, numbering болон бусад rich text элементүүдийг editor-той ойролцоо харагдуулна. */
.company-description-content {
    color: #334155;
    font-size: 1rem;
    line-height: 1.75;
}

.company-description-content p,
.company-description-content ul,
.company-description-content ol,
.company-description-content blockquote,
.company-description-content table,
.company-description-content pre {
    margin-bottom: 1rem;
}

.company-description-content ul,
.company-description-content ol {
    padding-left: 1.5rem;
}

.company-description-content ul {
    list-style-type: disc;
}

.company-description-content ol {
    list-style-type: decimal;
}

.company-description-content li {
    margin-bottom: 0.35rem;
}

.company-description-content li > ul {
    list-style-type: circle;
}

.company-description-content li > ol,
.company-description-content li > ul {
    margin-top: 0.35rem;
    margin-bottom: 0.35rem;
}

.company-description-content h1,
.company-description-content h2,
.company-description-content h3,
.company-description-content h4,
.company-description-content h5,
.company-description-content h6 {
    margin: 1.25rem 0 0.75rem;
    color: #0f172a;
    font-weight: 700;
    line-height: 1.25;
}

.company-description-content h1 { font-size: 2rem; }
.company-description-content h2 { font-size: 1.5rem; }
.company-description-content h3 { font-size: 1.25rem; }
.company-description-content h4 { font-size: 1.125rem; }

.company-description-content a {
    color: #2563eb;
    text-decoration: underline;
}

.company-description-content blockquote {
    border-left: 4px solid #cbd5e1;
    color: #475569;
    padding-left: 1rem;
}

.company-description-content table {
    width: 100%;
    border-collapse: collapse;
}

.company-description-content th,
.company-description-content td {
    border: 1px solid #cbd5e1;
    padding: 0.5rem 0.75rem;
}

.company-description-content img {
    max-width: 100%;
    height: auto;
}

/* HomeSpecialPost болон News_AI_List module-ууд ижил card layout хэрэглэх тул News_AI_List-ийн CSS isolation style-ийг global болгож app.css-д төвлөрүүлэв. */
.home-special-post-module {
    border-radius: 1rem;
    background: transparent;
    padding: 0;
}

.home-special-post-module__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 1rem;
    gap: 1rem;
}

.home-special-post-module__title {
    font-size: 1.375rem;
    font-weight: 700;
    color: #111827;
}

.home-special-post-module__all-link {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    /* CompanyList module-ийн "Бүгдийг харах" link-тэй font, fontsize, weight-ийг ижил болгов. */
    color: #64748b;
    font-size: 0.875rem;
    font-weight: 600;
    text-decoration: none;
}

.home-special-post-module__all-link:hover {
    color: #111827;
}

.home-special-post-module__all-link-icon {
    height: 1rem;
    width: 1rem;
    opacity: 0.86;
}

.home-special-post-module__all-link-arrow {
    font-size: 1.25rem;
    line-height: 1;
}

.home-special-post-module__cards {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 0.75rem;
}

.home-special-post-module__card {
    position: relative;
    /* Ad poster орсон мөрөнд card өндөр суналгүй, бүх item 2:3 босоо харьцаатай үлдэнэ. */
    min-height: 0;
    height: auto;
    aspect-ratio: 2 / 3;
    border-radius: 1rem;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    overflow: hidden;
    display: flex;
    align-items: flex-end;
    box-shadow: none;
    filter: none;
}

.home-special-post-module__card:hover {
    transform: none;
    box-shadow: none;
    filter: none;
}

.home-special-post-module__add-card {
    /* Шинэ мэдээ нэмэх card-ийг мэдээний card-тэй ижил босоо харьцаатай байлгана. */
    height: 100%;
    aspect-ratio: 2 / 3;
    min-height: 0;
    border-radius: 1rem;
    border: 2px dashed #9ca3af;
    background: #f3f4f6;
    color: #374151;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    font-size: 1rem;
    font-weight: 700;
    text-decoration: none;
}

.home-special-post-module__add-card-icon {
    font-size: 2rem;
    line-height: 1;
}

.home-special-post-module__edit-button {
    /* ModerateMode дээр card доторх edit товчийг зүүн дээд буланд тогтмол харагдуулна. */
    position: absolute;
    top: 0.75rem;
    left: 0.75rem;
    right: auto;
    z-index: 2;
    border-radius: 9999px;
    background: rgba(15, 23, 42, 0.82);
    color: #f9fafb;
    padding: 0.35rem 0.75rem;
    font-size: 0.8125rem;
    font-weight: 700;
    text-decoration: none;
}

.home-special-post-module__edit-button:hover {
    background: rgba(30, 41, 59, 0.92);
}

.home-special-post-module__overlay {
    /* Card-ийн бүх талбайг overlay anchor эзэлж зөвхөн card дээр дарахад news link ажиллахаар тохируулна. */
    position: absolute;
    inset: 0;
    z-index: 1;
    display: flex;
    align-items: flex-end;
    padding: 1rem;
    color: #fff;
    text-decoration: none;
}

.home-special-post-module__name {
    overflow: hidden;
    text-overflow: ellipsis;
    font-family: var(--app-font-family);
    font-size: 14px;
    font-weight: 600;
    line-height: 1.4;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
}

/* SpecialNewsItem card дээр hover хийхэд гарчиг бүтнээрээ олон мөрөөр задарна. */
.home-special-post-module__card:hover .home-special-post-module__name {
    -webkit-line-clamp: unset;
    display: block;
    overflow: visible;
    white-space: normal;
}

.home-special-post-module__ad {
    /* Ad poster нь 2:3 мэдээний card-тэй ижил grid item өндөртэй байж мөрийн өндрийг эвдэхгүй. */
    min-height: 0;
    aspect-ratio: 2 / 3;
    border-radius: 1rem;
    border: 1px dashed #e5e7eb;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    color: #9ca3af;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    text-decoration: none;
    overflow: hidden;
}

.home-special-post-module__ad span {
    /* Зурагтай ad дээр текст уншигдах байдлыг хадгалахын тулд жижиг overlay badge ашиглана. */
    border-radius: 9999px;
    background: rgba(255, 255, 255, 0.88);
    color: #374151;
    padding: 0.4rem 0.85rem;
}

.home-special-post-module__ad--link:hover {
    border-color: #f59e0b;
    color: #92400e;
}

.home-special-post-module__empty {
    min-height: 120px;
    border-radius: 0.75rem;
    border: 1px dashed #d1d5db;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #6b7280;
    grid-column: span 5;
}

.home-special-post-module__warning {
    /* AI query timeout болсон үед module card-уудын дээр анхааруулгыг зөөлөн өнгөөр харуулна. */
    margin-bottom: 0.75rem;
    border-radius: 0.75rem;
    border: 1px solid #fecaca;
    background: #fef2f2;
    color: #b91c1c;
    padding: 0.75rem 1rem;
    font-size: 0.9375rem;
    font-weight: 600;
}

@media (max-width: 1280px) {
    .home-special-post-module__cards {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .home-special-post-module__empty {
        grid-column: span 3;
    }
}

@media (max-width: 768px) {
    .home-special-post-module__header {
        flex-direction: column;
        align-items: flex-start;
    }

    .home-special-post-module__cards {
        grid-template-columns: 1fr;
    }

    .home-special-post-module__empty {
        grid-column: span 1;
    }
}

/* NewsDetail body хэсгийн HTML content-д л Roboto font оноож, сайтын бусад хэсгийг Manrope хэвээр үлдээнэ. */
.news-detail-body,
.news-detail-body * {
    font-family: var(--news-detail-body-font-family) !important;
}

.company-item--button {
    /* CompanyItem iframe popup trigger button нь anchor card-тэй яг адил харагдахын тулд browser default style-ийг цэвэрлэнэ. */
    appearance: none;
    color: inherit;
    cursor: pointer;
    text-align: inherit;
    width: 100%;
}

.company-item-preview-frame,
.news-item-preview-frame {
    /* iframe popup-ийн контентыг дэлгэцийн 90 орчим хувьд хүргэж жижиг өндөртэй харагдах алдааг засна. */
    border: 0;
    height: min(90vh, 980px);
    width: 100%;
}
/* Zar_Filtered_List module-ийн үндсэн container-ийн layout болон typography-г тохируулна. */
.zar-filtered-list {
    color: #0f172a;
    font-family: inherit;
    padding: 15px;
    width: 100%;
}

.zar-filtered-list__header {
    align-items: center;
    display: flex;
    gap: 16px;
    justify-content: space-between;
    margin-bottom: 14px;
}

.zar-filtered-list__summary {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    min-width: 0;
}

.zar-filtered-list__count {
    color: #94a3b8;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.2;
    margin: 0;
}

.zar-filtered-list__count span {
    color: #ef4444;
}

.zar-filtered-list__chip {
    align-items: center;
    background: #fff1f2;
    border-radius: 999px;
    color: #fb7185;
    display: inline-flex;
    font-size: 12px;
    gap: 6px;
    line-height: 1;
    padding: 7px 10px;
    text-decoration: none;
}

.zar-filtered-list__view-switch {
    align-items: center;
    display: inline-flex;
    gap: 8px;
}

.zar-filtered-list__view-button {
    align-items: center;
    background: transparent;
    border: 0;
    border-radius: 9px;
    color: #94a3b8;
    cursor: pointer;
    display: inline-flex;
    font-size: 18px;
    height: 30px;
    justify-content: center;
    padding: 0;
    width: 30px;
}

.zar-filtered-list__view-button--active {
    background: #fff1f2;
    color: #ef4444;
}

.zar-filtered-list__state {
    align-items: center;
    background: #ffffff;
    border-radius: 16px;
    color: #64748b;
    display: flex;
    justify-content: center;
    min-height: 180px;
    padding: 24px;
    text-align: center;
}

.zar-filtered-list__grid {
    display: grid;
    gap: 14px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.zar-filtered-list__card {
    background: #ffffff;
    border: 1px solid #e5e7eb;
    border-radius: 14px;
    box-shadow: 0 10px 24px rgba(15, 23, 42, 0.18);
    color: inherit;
    display: flex;
    flex-direction: column;
    min-height: 254px;
    overflow: hidden;
    text-decoration: none;
    transition: transform 0.18s ease, box-shadow 0.18s ease;
}

.zar-filtered-list__card:hover {
    box-shadow: 0 16px 30px rgba(15, 23, 42, 0.25);
    transform: translateY(-2px);
}

.zar-filtered-list__image-wrap {
    background: #dbe4ee;
    display: block;
    height: 144px;
    overflow: hidden;
    position: relative;
}

.zar-filtered-list__image,
.zar-filtered-list__image-fallback {
    display: block;
    height: 100%;
    object-fit: cover;
    width: 100%;
}

.zar-filtered-list__image-fallback {
    background: linear-gradient(135deg, #cbd5e1 0%, #f1f5f9 45%, #94a3b8 100%);
}

.zar-filtered-list__badge {
    align-items: center;
    border-radius: 999px;
    display: inline-flex;
    font-size: 12px;
    line-height: 1;
    position: absolute;
    white-space: nowrap;
}

.zar-filtered-list__badge--featured {
    background: #ef233c;
    color: #ffffff;
    left: 12px;
    padding: 7px 9px;
    top: 13px;
}

.zar-filtered-list__badge--category {
    background: #ffffff;
    bottom: 12px;
    color: #ef4444;
    left: 12px;
    padding: 7px 10px;
}

.zar-filtered-list__views {
    align-items: center;
    background: rgba(15, 23, 42, 0.72);
    border-radius: 999px;
    bottom: 12px;
    color: #ffffff;
    display: inline-flex;
    font-size: 12px;
    line-height: 1;
    padding: 7px 10px;
    position: absolute;
    right: 12px;
}

.zar-filtered-list__card-body {
    display: flex;
    flex: 1;
    flex-direction: column;
    gap: 14px;
    padding: 17px 14px 18px;
}

.zar-filtered-list__price {
    color: #111827;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.1;
}

.zar-filtered-list__name {
    color: #111827;
    display: -webkit-box;
    font-size: 15px;
    line-height: 1.55;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.zar-filtered-list__rows {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.zar-filtered-list__row {
    align-items: center;
    background: #ffffff;
    border: 1px solid #e5e7eb;
    border-radius: 14px;
    color: inherit;
    display: grid;
    gap: 14px;
    grid-template-columns: 148px minmax(0, 1fr) auto;
    min-height: 122px;
    overflow: hidden;
    padding: 10px 14px 10px 10px;
    text-decoration: none;
}

.zar-filtered-list__row-image-wrap {
    background: #dbe4ee;
    border-radius: 11px;
    display: block;
    height: 102px;
    overflow: hidden;
}

.zar-filtered-list__row-image,
.zar-filtered-list__row-image-fallback {
    display: block;
    height: 100%;
    object-fit: cover;
    width: 100%;
}

.zar-filtered-list__row-image-fallback {
    background: linear-gradient(135deg, #e2e8f0 0%, #f8fafc 50%, #94a3b8 100%);
}

.zar-filtered-list__row-body,
.zar-filtered-list__row-side {
    display: flex;
    flex-direction: column;
}

.zar-filtered-list__row-body {
    gap: 6px;
    min-width: 0;
}

.zar-filtered-list__row-category,
.zar-filtered-list__row-meta,
.zar-filtered-list__row-views {
    color: #64748b;
    font-size: 13px;
}

.zar-filtered-list__row-title {
    color: #111827;
    font-size: 17px;
    font-weight: 600;
    line-height: 1.35;
}

.zar-filtered-list__row-side {
    align-items: flex-end;
    gap: 14px;
    text-align: right;
}

.zar-filtered-list__row-price {
    color: #111827;
    font-size: 18px;
    font-weight: 700;
    white-space: nowrap;
}

.sr-only {
    border: 0;
    clip: rect(0, 0, 0, 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    white-space: nowrap;
    width: 1px;
}

@media (max-width: 1100px) {
    .zar-filtered-list__grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 820px) {
    .zar-filtered-list__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .zar-filtered-list__row {
        grid-template-columns: 118px minmax(0, 1fr);
    }

    .zar-filtered-list__row-side {
        align-items: flex-start;
        grid-column: 2;
        text-align: left;
    }
}

@media (max-width: 560px) {
    .zar-filtered-list__header {
        align-items: flex-start;
        flex-direction: column;
    }

    .zar-filtered-list__grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .zar-filtered-list__row {
        grid-template-columns: minmax(0, 1fr);
    }

    .zar-filtered-list__row-side {
        grid-column: auto;
    }
}


.zar-filtered-list__load-more-sentinel {
    height: 1px;
}

.zar-filtered-list__load-more-button {
    background: #ef4444;
    border: 0;
    border-radius: 999px;
    color: #ffffff;
    cursor: pointer;
    display: block;
    font-size: 14px;
    font-weight: 600;
    margin: 18px auto 0;
    padding: 10px 18px;
}

.zar-filtered-list__add-button {
    align-items: center;
    background: #ef4444;
    border-radius: 10px;
    color: #ffffff;
    display: inline-flex;
    font-size: 13px;
    font-weight: 700;
    height: 34px;
    padding: 0 14px;
    text-decoration: none;
    white-space: nowrap;
}

.zar-filtered-list__add-button:hover {
    background: #dc2626;
}
.product-item {
    display: flex;
    min-height: 100%;
    position: relative;
}

.product-item__card {
    background: #fff;
    border: 0;
    border-radius: 14px;
    box-shadow: 0 14px 30px rgba(15, 23, 42, 0.14);
    color: #111827;
    display: flex;
    flex-direction: column;
    height: 100%;
    min-height: 304px;
    overflow: hidden;
    text-align: left;
    text-decoration: none;
    transition: box-shadow 180ms ease, transform 180ms ease;
}

.product-item:hover .product-item__card,
.product-item__card:focus-visible {
    box-shadow: 0 18px 38px rgba(15, 23, 42, 0.18);
    outline: none;
    transform: translateY(-2px);
}

.product-item__image-wrap {
    align-self: stretch;
    background: #e2e8f0;
    display: block;
    flex: 0 0 192px;
    height: 192px;
    /* Flex card дотор image wrapper 0 өргөнтэй болохоос сэргийлж card-н өргөнийг бүтэн авна. */
    min-width: 100%;
    /* Босоо зурагны илүү гарсан хэсгийг тайрч, цагаан хоосон зай харагдахгүй болгоно. */
    overflow: hidden;
    position: relative;
    width: 100%;
}

.product-item__image {
    display: block;
    height: 100%;
    inset: 0;
    /* Зургийг frame-д бүтэн дүүргэж төвөөс нь crop хийнэ. */
    object-fit: cover;
    object-position: center;
    position: absolute;
    width: 100%;
}

.product-item__image-fallback {
    background: linear-gradient(135deg, #dbeafe 0%, #e0e7ff 45%, #ede9fe 100%);
    display: block;
    height: 100%;
    width: 100%;
}

.product-item__image-wrap::after {
    background: linear-gradient(180deg, rgba(15, 23, 42, 0.08), rgba(15, 23, 42, 0.36));
    content: "";
    inset: 0;
    position: absolute;
}

.product-item__icon {
    align-items: center;
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 10px 20px rgba(15, 23, 42, 0.16);
    color: #155cff;
    display: flex;
    font-size: 28px;
    font-weight: 700;
    height: 48px;
    justify-content: center;
    left: 16px;
    position: absolute;
    top: 128px;
    width: 48px;
    z-index: 1;
}

.product-item__body {
    display: flex;
    flex: 1;
    flex-direction: column;
    padding: 28px 16px 16px;
}

.product-item__status {
    align-self: flex-start;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 800;
    margin-bottom: 10px;
    padding: 5px 10px;
}

.product-item__status--unpublished {
    background: #fff7ed;
    border: 1px solid #fdba74;
    color: #c2410c;
}

.product-item__name {
    color: #111827;
    font-size: 17px;
    font-weight: 800;
    line-height: 1.35;
}

.product-item__desc {
    color: #667085;
    display: -webkit-box;
    font-size: 15px;
    line-height: 1.65;
    margin-top: 16px;
    min-height: 74px;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}

.product-item__footer {
    align-items: center;
    display: flex;
    gap: 12px;
    justify-content: space-between;
    margin-top: auto;
}

.product-item__price {
    color: #155cff;
    font-size: 15px;
    font-weight: 800;
    white-space: nowrap;
}

.product-item__icon img {
    display: block;
    height: 28px;
    object-fit: contain;
    width: 28px;
}

.product-item__edit {
    align-items: center;
    background: #ffffff;
    border-radius: 999px;
    box-shadow: 0 10px 24px rgba(15, 23, 42, 0.24);
    display: flex;
    height: 42px;
    justify-content: center;
    opacity: 0;
    position: absolute;
    right: 12px;
    top: 12px;
    transform: translateY(-6px);
    transition: opacity 160ms ease, transform 160ms ease;
    width: 42px;
    z-index: 3;
}

.product-item:hover .product-item__edit,
.product-item__edit:focus-visible {
    opacity: 1;
    transform: translateY(0);
}

.product-item__edit img {
    height: 22px;
    width: 22px;
}


.product-item__card{border:0;cursor:pointer;width:100%;}
.product-item__preview-frame{border:0;height:min(82vh,900px);width:100%;}

.product-item--select-mode .product-item__card {
    cursor: pointer;
}

.product-item--selected .product-item__card {
    box-shadow: 0 0 0 3px rgba(21, 92, 255, 0.35), 0 18px 38px rgba(15, 23, 42, 0.18);
}

.product-item__select-badge {
    align-items: center;
    background: #ffffff;
    border: 2px solid #155cff;
    border-radius: 999px;
    box-shadow: 0 10px 24px rgba(15, 23, 42, 0.22);
    color: #155cff;
    display: flex;
    font-size: 20px;
    font-weight: 900;
    height: 34px;
    justify-content: center;
    left: 12px;
    position: absolute;
    top: 12px;
    width: 34px;
    z-index: 4;
}

.product-item--selected .product-item__select-badge {
    background: #155cff;
    color: #ffffff;
}

/* Профайлын desktop болон mobile бүтэц global stylesheet-ээс тогтвортой хэрэглэгдэнэ. */
.profile-page { background:#f8fafc; min-height:calc(100vh - 74px); color:#172033; }
.profile-shell { display:grid; grid-template-columns:minmax(0, 900px) 310px; gap:42px; max-width:1260px; margin:auto; padding:44px 24px 70px; }
.profile-content { min-width:0; }
.profile-heading { margin-bottom:26px; }
.profile-heading h1 { margin:4px 0 6px; font-size:30px; font-weight:800; letter-spacing:-.025em; }
.profile-heading>p:last-child,.profile-section__header span,.profile-summary p { color:#64748b; }
.profile-eyebrow { color:#e3262e!important; font-size:11px; font-weight:800; letter-spacing:.13em; margin:0; }
.profile-card { background:#fff; border:1px solid #e5e7eb; border-radius:18px; box-shadow:0 7px 24px rgba(15,23,42,.035); }
.profile-identity { display:flex; align-items:center; gap:25px; padding:30px 32px; }
.profile-avatar-wrap { position:relative; flex:none; }
.profile-avatar { width:116px; height:116px; border-radius:50%; background:#f1f5f9; border:5px solid #fff; box-shadow:0 4px 18px #cbd5e1; object-fit:cover; }
.profile-verified { position:absolute; right:2px; bottom:7px; display:grid; place-items:center; width:29px; height:29px; background:#16c965; color:white; border:3px solid white; border-radius:50%; font-weight:900; }
.profile-person { flex:1; min-width:0; }
.profile-person h2 { font-size:25px; margin:5px 0 12px; }
.profile-status { display:inline-block; color:#9a6700; background:#fff2c2; border-radius:8px; padding:4px 9px; font-size:12px; }
.profile-details { display:flex; flex-wrap:wrap; gap:8px 22px; color:#5b6575; font-size:14px; }
.profile-details span { display:flex; gap:7px; }.profile-details b { color:#334155; }
.profile-edit { align-self:flex-start; border:1px solid #dfe3e8; border-radius:9px; padding:9px 13px; color:#28313d; font-size:13px; font-weight:700; }
.profile-editor{padding:27px 31px;margin:18px 0}.profile-editor__close{border:0;background:#f1f5f9;width:34px;height:34px;border-radius:50%;font-size:22px;color:#475569}.profile-editor__body{display:grid;grid-template-columns:180px 1fr;gap:28px;padding-top:22px}.profile-photo-editor{display:flex;flex-direction:column;align-items:center;gap:8px}.profile-photo-editor__trigger{position:relative;width:132px;height:132px;border-radius:50%;overflow:hidden;cursor:pointer}.profile-photo-editor__trigger img{width:100%;height:100%;object-fit:cover}.profile-photo-editor__trigger span{position:absolute;inset:auto 0 0;padding:9px 4px;background:#172033cc;color:#fff;text-align:center;font-size:11px}/* Profile зураг сонгох native input-г ID-аар нь дэлгэцээс бүрэн нууна. */#profile-photo-input{display:none}.profile-photo-editor small{color:#64748b;text-align:center}.profile-editor__form{display:flex;flex-direction:column;gap:10px}.profile-editor__form label{font-size:13px;font-weight:700;color:#334155}.profile-editor__form input{border:1px solid #cbd5e1;border-radius:9px;padding:11px 13px;outline:none}.profile-editor__form input:focus{border-color:#4f46e5;box-shadow:0 0 0 3px #e0e7ff}/* Save товчийг form буюу card-н баруун доод буланд тогтвортой байрлуулна. */.profile-editor__form button{align-self:flex-end;margin-top:auto;margin-left:auto;border:0;border-radius:9px;background:#e3262e;color:#fff;font-weight:700;padding:11px 17px}.profile-editor__form button:disabled{opacity:.6}.profile-upload{margin-top:18px}.profile-upload div{display:flex;justify-content:space-between;font-size:12px;color:#475569}.profile-upload progress{width:100%;height:9px;accent-color:#e3262e}.profile-editor__message{margin:14px 0 0;padding:10px 12px;border-radius:8px;background:#ecfdf5;color:#047857;font-size:13px}.profile-editor__message--error{background:#fff1f2;color:#be123c}
.profile-metrics { display:grid; grid-template-columns:repeat(4,1fr); gap:13px; margin:18px 0 24px; }
.profile-metric { background:white; border:1px solid #e5e7eb; border-radius:15px; padding:18px; display:flex; align-items:center; gap:13px; color:inherit;transition:.2s }
.profile-metric:hover{border-color:#fecaca;transform:translateY(-1px);box-shadow:0 5px 16px #0f172a0d}
.profile-metric__icon { width:47px;height:47px;display:grid;place-items:center;border-radius:12px;color:#fff;font-weight:800; }
.profile-metric div { display:flex; flex-direction:column; }.profile-metric strong { font-size:20px; }.profile-metric div span { font-size:12px;color:#64748b; }
.metric-blue{background:#3179f5}.metric-green{background:#06bd5b}.metric-purple{background:#9b3eef}.metric-orange{background:#ff6508}
.profile-section { padding:27px 31px; margin-bottom:18px; }
.profile-section__header { display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid #edf0f3; padding-bottom:18px; }
.profile-section__header h2,.profile-summary h2 { margin:4px 0 0;font-size:20px; }.profile-section__header span{font-size:13px}
.profile-company-list { display:grid; grid-template-columns:1fr 1fr; gap:10px; padding-top:18px; }
.profile-company { display:flex;align-items:center;gap:12px;padding:12px;border-radius:12px;color:#273244;transition:.2s; }.profile-company:hover{background:#f8fafc}
.profile-company__logo { width:40px;height:40px;display:grid;place-items:center;background:#feecee;color:#e3262e;border-radius:50%;font-weight:800; }
.profile-company span:nth-child(2){display:flex;flex:1;flex-direction:column}.profile-company small{color:#7b8493;margin-top:2px}.profile-company>b{font-size:23px;color:#9ca3af}
.profile-empty { text-align:center;color:#64748b;padding:25px 10px 8px; }
.profile-grid { display:grid;grid-template-columns:1fr 1fr;gap:16px; }.profile-summary{padding:23px;display:grid;grid-template-columns:1fr auto;gap:8px}.profile-summary>strong{font-size:32px;color:#e3262e}.profile-summary a{grid-column:1/-1;color:#d91f28;font-weight:700;font-size:13px;margin-top:12px}
.profile-sidebar { background:#fff;border-left:1px solid #eef0f2;padding:22px 0;height:max-content;position:sticky;top:24px; }.profile-sidebar>p{padding:0 20px 12px;color:#94a3b8;font-size:11px;font-weight:800;letter-spacing:.12em}.profile-sidebar a{display:flex;align-items:center;gap:13px;padding:13px 14px;border-bottom:1px solid #edf0f2;color:#515b66}.profile-sidebar a:hover{color:#e3262e;background:#fffafa}.profile-sidebar a>span:nth-child(2){flex:1}.profile-sidebar a b{font-size:22px}.profile-nav-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:11px;background:#f4f4f5;color:#e3262e;font-weight:800}
.profile-state { padding:36px;background:white;border:1px solid #e5e7eb;border-radius:16px;text-align:center;color:#64748b}.profile-state--error{color:#b91c1c;background:#fff7f7}
@media(max-width:900px){.profile-shell{grid-template-columns:1fr;padding-top:25px}.profile-sidebar{grid-row:1;position:static;display:flex;overflow:auto;padding:7px}.profile-sidebar>p{display:none}.profile-sidebar a{flex:none;border:0;padding:8px}.profile-sidebar a b{display:none}.profile-nav-icon{width:34px;height:34px}.profile-identity{align-items:flex-start;flex-wrap:wrap}.profile-edit{margin-left:auto}.profile-metrics{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.profile-shell{padding-left:14px;padding-right:14px;gap:18px}.profile-identity{padding:23px}.profile-avatar{width:82px;height:82px}.profile-person{flex-basis:calc(100% - 115px)}.profile-edit{width:100%;text-align:center}.profile-metrics,.profile-grid,.profile-company-list{grid-template-columns:1fr}.profile-section{padding:22px}.profile-heading h1{font-size:26px}.profile-editor{padding:21px}.profile-editor__body{grid-template-columns:1fr}.profile-editor__form button{width:100%}}
