@font-face { font-family: "Montserrat"; font-style: normal; font-weight: 400; font-display: swap; src: url("montserrat-400.ttf") format("truetype"); }
@font-face { font-family: "Montserrat"; font-style: normal; font-weight: 500; font-display: swap; src: url("montserrat-500.ttf") format("truetype"); }
@font-face { font-family: "Montserrat"; font-style: normal; font-weight: 600; font-display: swap; src: url("montserrat-600.ttf") format("truetype"); }
@font-face { font-family: "Montserrat"; font-style: normal; font-weight: 700; font-display: swap; src: url("montserrat-700.ttf") format("truetype"); }

.ihsan-feed-theme, .ihsan-host { --header: 80px; --accent: #2457db; --ink: #17202e; --line: #e6e9ef; font-family: "Montserrat", Inter, sans-serif; background: #fff; color: var(--ink); }
.ihsan-header, .ihsan-header *, .ihsan-footer, .ihsan-footer *, .ihsan-host-main { box-sizing: border-box; }
.ihsan-header { position: fixed; inset: 0 0 auto; z-index: 40; height: 80px; background: linear-gradient(105deg, #4675f9, #003bbd); color: #fff; }
.ihsan-header a { text-decoration: none; }
.ihsan-header-inner { width: min(1200px, calc(100% - 64px)); height: 100%; margin: 0 auto; display: flex; align-items: center; gap: 28px; }
.ihsan-logo { flex: 0 0 112px; width: 112px; height: 110px; align-self: flex-start; display: grid; place-items: center; background: #fff; border-radius: 0 0 30px 30px; box-shadow: 0 8px 28px #17202e10; }
.ihsan-logo img { width: 50px; height: 49px; display: block; }
.ihsan-desktop-nav { display: flex; align-items: center; justify-content: center; flex: 1; min-width: 0; gap: 23px; height: 100%; }
.ihsan-desktop-nav a { position: relative; display: flex; align-items: center; min-height: 44px; height: 100%; white-space: nowrap; font-size: 13px; font-weight: 500; letter-spacing: .35px; color: #fff; }
.ihsan-desktop-nav a:hover { color: #dce5ff; }
.ihsan-desktop-nav a[aria-current]::after { position: absolute; content: ""; inset: auto 0 16px; height: 2px; background: #fff; border-radius: 2px; }
.ihsan-header-tools { display: flex; align-items: center; gap: 12px; margin-left: auto; }
.ihsan-header summary { list-style: none; cursor: pointer; }
.ihsan-header summary::-webkit-details-marker { display: none; }
.ihsan-search { position: relative; }
.ihsan-search > summary { width: 44px; height: 44px; display: grid; place-items: center; }
.ihsan-search form { position: absolute; top: 56px; right: 0; width: min(340px, calc(100vw - 40px)); background: #fff; color: var(--ink); border: 1px solid var(--line); border-radius: 10px; box-shadow: 0 12px 32px #17202e14; padding: 20px; }
.ihsan-search label { display: block; font-size: 12px; font-weight: 600; margin-bottom: 10px; }
.ihsan-search form > div { display: flex; gap: 8px; }
.ihsan-search input { width: 100%; min-width: 0; min-height: 44px; border: 1px solid var(--line); border-radius: 6px; padding: 0 12px; font: inherit; }
.ihsan-search button { border: 0; background: #2457db; color: #fff; min-width: 56px; border-radius: 6px; font: inherit; cursor: pointer; }
.ihsan-language { display: flex; gap: 12px; font-size: 12px; font-weight: 600; }
.ihsan-language > * { display: flex; align-items: center; gap: 5px; min-height: 44px; color: #fff; }
.ihsan-id-flag { width: 17px; height: 17px; border-radius: 50%; background: linear-gradient(#ef3340 50%, #fff 50%); border: 1px solid #ffffff80; }
.ihsan-login { min-height: 44px; padding: 0 13px; display: inline-flex; align-items: center; border: 1px solid #ffffff80; border-radius: 6px; color: #fff; font-size: 12px; font-weight: 600; }
.ihsan-login:hover { background: #ffffff18; }
.ihsan-account summary { display: flex; align-items: center; gap: 8px; min-height: 44px; }
.ihsan-header [hidden] { display: none !important; }
.ihsan-account { position: relative; }
.ihsan-account .avatar { width: 34px; height: 34px; display: inline-grid; place-items: center; border-radius: 50%; background: #fff; color: #2457db; font-weight: 600; }
.ihsan-account .account-label { display: none; }
.ihsan-account .popover { position: absolute; top: calc(100% + 12px); right: 0; width: min(220px, calc(100vw - 40px)); padding: 6px; border: 1px solid var(--line); border-radius: 10px; box-shadow: 0 12px 32px #17202e14; background: #fff; color: var(--ink); }
.ihsan-account .popover :is(a,button) { display: flex; align-items: center; width: 100%; min-height: 44px; padding: 0 10px; border: 0; border-radius: 6px; background: transparent; color: var(--ink); font: inherit; font-size: 13px; text-align: left; cursor: pointer; }
.ihsan-account .popover :is(a,button):hover { background: #edf2ff; }
.ihsan-account .popover button:disabled { opacity: .55; cursor: wait; }
.ihsan-account-error { padding: 0 10px; color: #b42318; font-size: 12px; }
.ihsan-account-name { display: block; padding: 10px; font-size: 12px; border-bottom: 1px solid var(--line); margin-bottom: 4px; }
.ihsan-header :is(a,summary,input,button):focus-visible, .ihsan-footer a:focus-visible { outline: 3px solid #a8c5ff; outline-offset: 4px; }
.ihsan-mobile-current, .ihsan-mobile-menu { display: none; }
.ihsan-feed-theme.surface-feed:not(.is-embedded) .feed-gallery-main { padding-top: calc(var(--header) + 48px); }
.ihsan-feed-theme .publisher-gallery { max-width: 1200px; }
.ihsan-feed-theme .publisher-profile { min-height: 230px; padding-top: 16px; }
.ihsan-feed-theme .publisher-profile-avatar { background: #fff; outline-color: #e3e9f7; }
.ihsan-feed-theme .publisher-profile-avatar .publisher-mark { width: 76px; height: 76px; }
.ihsan-feed-theme .publisher-icon { background: #fff; border: 1px solid #e3e9f7; }
.ihsan-feed-theme .publisher-mark { object-fit: contain; }
.ihsan-feed-theme .publisher-profile-brand { display: none; }
.ihsan-feed-theme .official { color: #2457db; background: #edf2ff; }
.ihsan-feed-theme .feed-tabs-line { border-top-color: #e6ecf7; }
.ihsan-feed-theme .feed-tab[aria-current="page"] { color: #2457db; }
.ihsan-feed-theme .feed-tab[aria-current="page"]::after { background: #2457db; }
.ihsan-feed-theme .feed-main { background: #fff; min-height: calc(100vh - 80px); }
.ihsan-feed-theme.is-embedded .feed-gallery-main { padding-top: 0; }
.ihsan-feed-theme.is-embedded .feed-main { min-height: 0; }
.ihsan-feed-theme .post-card { box-shadow: none; }
.ihsan-feed-theme .post-tile.is-text { background: #edf2fc; }
.ihsan-feed-theme.auth-page { background: #f6f8fd; }
.ihsan-feed-theme .auth-brand > img { width: 42px; height: 42px; object-fit: contain; }
.ihsan-footer { background: #315fe3; color: #fff; font-family: "Montserrat", Inter, sans-serif; }
.ihsan-footer > div { width: min(1200px, calc(100% - 64px)); margin: 0 auto; min-height: 80px; display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.ihsan-footer p { margin: 0; font-size: 13px; }
.ihsan-footer nav { display: flex; align-items: center; gap: 24px; }
.ihsan-footer a { color: #fff; font-size: 12px; min-height: 44px; min-width: 44px; justify-content: center; display: inline-flex; align-items: center; text-decoration: none; }
.ihsan-host { margin: 0; line-height: 1.55; }
.ihsan-host-main { padding-top: 128px; min-height: calc(100vh - 80px); }
.ihsan-feed-frame { display: block; width: 100%; min-height: 500px; border: 0; }
.ihsan-host-link { display: block; width: fit-content; min-height: 44px; margin: 0 auto 20px; color: #2457db; font-size: 12px; }
.ihsan-host .skip-link { position: fixed; top: -80px; left: 20px; z-index: 50; padding: 10px; background: #fff; color: #17202e; }
.ihsan-host .skip-link:focus { top: 8px; }

@media (max-width: 1230px) {
    .ihsan-header-inner { gap: 24px; }
    .ihsan-desktop-nav { gap: 14px; }
    .ihsan-desktop-nav a { font-size: 12px; letter-spacing: .1px; }
    .ihsan-language { display: none; }
}
@media (max-width: 1000px) {
    .ihsan-header-inner { width: calc(100% - 40px); }
    .ihsan-desktop-nav { display: none; }
    .ihsan-mobile-current { display: flex; align-items: center; min-height: 44px; font-size: 13px; font-weight: 600; color: #fff; border-bottom: 2px solid #fff; }
    .ihsan-mobile-menu { display: block; }
    .ihsan-mobile-menu > summary { width: 44px; height: 44px; display: grid; place-items: center; }
    .ihsan-mobile-menu nav { position: absolute; left: 20px; right: 20px; top: 92px; padding: 12px; background: #fff; color: #17202e; border: 1px solid #e6e9ef; border-radius: 12px; box-shadow: 0 12px 36px #17202e18; max-height: calc(100dvh - 116px); overflow: auto; }
    .ihsan-mobile-menu nav a { display: flex; align-items: center; min-height: 46px; padding: 0 16px; color: #17202e; font-size: 13px; border-radius: 6px; }
    .ihsan-mobile-menu nav a[aria-current] { background: #edf2ff; color: #2457db; font-weight: 600; }
}
@media (max-width: 760px) {
    .ihsan-feed-theme, .ihsan-host { --header: 72px; }
    .ihsan-header { height: 72px; }
    .ihsan-header-inner { gap: 22px; }
    .ihsan-logo { flex-basis: 76px; width: 76px; height: 92px; border-radius: 0 0 22px 22px; }
    .ihsan-logo img { width: 38px; height: 37px; }
    .ihsan-header-tools { gap: 5px; }
    .ihsan-header-tools > .ihsan-search { display: none; }
    .ihsan-login { min-height: 44px; padding: 0 10px; }
    .ihsan-feed-theme.surface-feed:not(.is-embedded) .feed-gallery-main { padding-top: calc(var(--header) + 34px); }
    .ihsan-feed-theme .publisher-profile { min-height: 170px; padding: 8px 24px 30px; gap: 23px; }
    .ihsan-feed-theme .publisher-profile-avatar .publisher-mark { width: 45px; height: 45px; }
    .ihsan-feed-theme .publisher-profile-name h1 { font-size: 20px; }
    .ihsan-feed-theme .publisher-profile-count { margin-top: 14px; }
    .ihsan-feed-theme .feed-main:not(.feed-gallery-main):not(.embed-main) { padding-top: calc(var(--header) + 36px); }
    .ihsan-footer > div { width: calc(100% - 40px); padding: 18px 0; flex-wrap: wrap; gap: 6px; }
    .ihsan-footer p { font-size: 12px; }
    .ihsan-host-main { padding-top: 106px; }
}
@media (prefers-reduced-motion: reduce) { .ihsan-header * { transition: none; } }
