/* Yerleşim Tailwind'de; özel davranışlar ve tüm renkler web token'larıyla. */
.web-thin-scrollbar { scrollbar-width: thin; scrollbar-color: var(--web-black-300) var(--web-white); }
.web-thin-scrollbar::-webkit-scrollbar { width: 6px; height: 6px; }
.web-thin-scrollbar::-webkit-scrollbar-track { background: var(--web-white); }
.web-thin-scrollbar::-webkit-scrollbar-thumb { background: var(--web-black-300); border-radius: 999px; }
.web-thin-scrollbar::-webkit-scrollbar-thumb:hover { background: var(--web-black-400); }
.web-thin-scrollbar::-webkit-scrollbar-button { display: none; }
body { font-family: 'Roboto', var(--font-sans); margin: 0; }
.web-list-page { --list-accent: var(--web-blue-main); --list-soft: var(--web-blue-50); }
.web-list-events { --list-accent: var(--web-turquoise-main); --list-soft: var(--web-turquoise-0); }
.web-list-branches { --list-accent: var(--web-purple-main); --list-soft: var(--web-purple-0); }
.web-list-banner { background: var(--list-soft); color: var(--list-accent); }
.web-list-layout { display: grid; grid-template-columns: 280px minmax(0, 1fr); gap: 20px; align-items: start; }
.web-list-layout { min-height: 680px; }
.web-list-cards .web-card { height: 304px; }
.web-list-cards .web-card-media { height: auto; max-height: 172px; aspect-ratio: 16 / 9; }
.web-list-cards .web-card-media > div:first-child { position: absolute; inset: 0; }
.web-list-cards .web-card-title { font-size: 20px; font-weight: 500; flex-shrink: 0; }
.web-list-cards .web-meta { padding: 8px 10px; min-height: 36px; gap: 8px; font-size: 11px; }
.web-list-cards .web-button { min-height: 40px; }
.web-filter-panel { border: 1px solid var(--web-black-200); border-radius: 6px; color: var(--list-accent); min-width: 0; }
.web-filter-group { margin: 0 0 32px; min-width: 0; }
.web-filter-group legend { font-size: 16px; margin-bottom: 12px; font-weight: 600;}
.web-filter-search { display: flex; align-items: center; border: 1px solid var(--web-black-300); border-radius: 6px; color: var(--web-black-400); padding-right: 8px; }
.web-filter-search input { width: 100%; min-width: 0; background: var(--web-white); color: var(--web-black-800); font-size: 13px; padding: 10px 8px; border-radius: inherit; }
.web-filter-search input::placeholder { color: var(--web-black-400); }
.web-filter-search .material-symbols-outlined { font-size: 18px; }
.web-filter-choice { display: flex; align-items: start; gap: 8px; color: var(--web-black-800); font-size: 13px; padding: 10px 4px; border-bottom: 1px solid var(--web-black-100); cursor: pointer; }
.web-filter-choice input { margin-top: 3px; accent-color: var(--list-accent); }
.web-branch-choices { max-height: 220px; overflow-y: auto; }
.web-view-button { display: inline-flex; align-items: center; gap: 6px; border: 1px solid var(--list-accent); border-radius: 5px; color: var(--list-accent); padding: 7px 10px; font-size: 12px; }
.web-view-button .material-symbols-outlined { font-size: 18px; }
.web-view-button[aria-pressed=true] { color: var(--web-white); background: var(--list-accent); }
.web-page-button { display: inline-flex; align-items: center; justify-content: center; min-width: 32px; height: 32px; border-radius: 5px; font-size: 13px; }
.web-page-button[aria-current=page] { background: var(--list-soft); color: var(--list-accent); }
.web-list-page .web-card-title, .web-list-page .web-meta .material-symbols-outlined { color: var(--list-accent); }
.web-list-page .web-card .web-button { background: var(--list-accent); }
.web-list-page .web-card .web-button:hover { filter: brightness(.94); }
.web-calendar-scroll { overflow-x: auto; }
.web-calendar { min-width: 600px; border-left: 1px solid var(--web-black-200); border-top: 1px solid var(--web-black-200); }
.web-calendar-week { display: grid; grid-template-columns: repeat(7,minmax(0,1fr)); }
.web-calendar-week > div { border-right: 1px solid var(--web-black-200); border-bottom: 1px solid var(--web-black-200); padding: 8px; font-size: 12px; min-width: 0; }
.web-calendar-day { min-height: 150px; overflow-wrap: anywhere; }
.web-calendar-day.is-outside { color: var(--web-black-400); }
.web-calendar-day time { display: inline-flex; width: 26px; height: 26px; align-items: center; justify-content: center; }
.web-calendar-day .has-events { border-radius: 50%; background: var(--list-soft); color: var(--web-black-800); }
.web-calendar-event { display: block; margin-top: 6px; padding: 5px; color: var(--list-accent); background: var(--list-soft); font-size: 11px; line-height: 1.3; }
@media (min-width: 1280px) { .web-list-page .web-card { height: 304px; } }
@media (max-width: 1279px) { .web-list-layout { grid-template-columns: 240px minmax(0,1fr); } }
@media (max-width: 767px) { .web-list-layout { grid-template-columns: minmax(0,1fr); } .web-filter-panel form { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; } .web-filter-group { margin-bottom: 12px; } .web-calendar-day { min-height: 120px; } }
@media (max-width: 420px) { .web-filter-panel form { grid-template-columns: minmax(0,1fr); } }
.web-container { width: calc(100% - 160px); margin-inline: auto; }
.material-symbols-outlined { font-family: 'Material Symbols Outlined'; font-weight: normal; font-style: normal; font-size: 24px; display: inline-block; line-height: 1; vertical-align: middle; font-feature-settings: 'liga'; }
.web-skip { position: fixed; top: -80px; left: 16px; padding: 12px; background: var(--web-white); color: var(--web-blue-500); z-index: 100; }
.web-skip:focus { top: 12px; }
:focus-visible { outline: 2px solid var(--web-blue-main); outline-offset: 4px; }
[hidden] { display: none !important; }
.web-clamp { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; }
.web-image { width: 100%; height: 100%; object-fit: cover; }
.web-image-empty { display: grid; place-items: center; height: 100%; background: var(--web-black-100); color: var(--web-black-400); }
.web-meta { position: relative; margin-top: -30px; width: fit-content; min-height: 30px; background: var(--web-white); padding: 8px; display: flex; align-items: center; flex-wrap: wrap; gap: 7px; font-size: 11px; }
.web-meta .material-symbols-outlined { font-size: 16px; }
.web-card-media > .web-meta { position: absolute; bottom: 0; left: 0; margin-top: 0; border-top-right-radius: 8px; max-width: 100%; }
.web-card-title { line-height: 1.2; font-size: 17px; font-weight: 600; }
.web-button { display: inline-flex; justify-content: center; align-items: center; min-height: 38px; padding: 10px 20px; border-radius: 6px; font-size: 13px; text-align: center; }
.web-rich { overflow-wrap: anywhere; line-height: 1.8; }
.web-rich img { max-width: 100%; height: auto; }
.web-related-scroll { scrollbar-width: thin; scrollbar-color: var(--web-black-300) var(--web-white); }
.publication-detail .web-rich :is(pre,code) { white-space: pre-wrap; overflow-wrap: anywhere; }
.publication-detail .material-symbols-outlined { font-size: 14px; }
.web-rich a { color: var(--web-blue-500); text-decoration: underline; }
.web-rich table { max-width: 100%; display: block; overflow-x: auto; }
.web-rich h2, .web-rich h3 { font-weight: 700; margin-block: 18px; }
.web-rich p { margin-block: 14px; }
.web-rich ul { list-style: disc; padding-left: 24px; }
.web-rich ol { list-style: decimal; padding-left: 24px; }
.web-form label { display: grid; gap: 6px; font-size: 14px; }
.web-form label:has(input[type=checkbox]) { display: flex; align-items: flex-start; gap: 12px; }
.web-form input:not([type=checkbox]), .web-form select, .web-form textarea { width: 100%; border: 1px solid var(--web-black-300); border-radius: 6px; padding: 12px; background: var(--web-white); color: var(--web-black-950); }
.web-form input:disabled, .web-form select:disabled { background: var(--web-black-100); }
.web-form button:disabled { opacity: .5; cursor: wait; }
.web-about-placeholder { background: var(--web-turquoise-main); border-radius: 40% 60% 50% 50%; aspect-ratio: 1; display: grid; place-items: center; color: var(--web-white); width: 280px; max-width: 100%; }
.web-about-placeholder span { font-size: 140px; }
@media (max-width: 767px) { .web-container { width: calc(100% - 32px); } }
@media (prefers-reduced-motion: no-preference) { .web-button { transition: background-color .15s; } }

.portal-auth { position: relative; min-height: calc(100dvh - 190px); padding: 48px 16px 64px; }
.portal-auth-background { position: absolute; inset: 0 0 auto; height: 420px; border-top: 1px solid var(--web-blue-main); }
.portal-auth-card { width: 360px; max-width: 100%; padding: 26px 14px; }
.portal-auth-field { position: relative; margin-top: 8px; }
.portal-auth-field input { width: 100%; min-height: 46px; border: 1px solid var(--web-black-300); border-radius: 6px; padding: 14px 42px 8px 8px; background: var(--web-white); color: var(--web-black-950); font-size: 14px; outline: none; }
.portal-auth-field input::placeholder { color: var(--web-black-400); }
.portal-auth-field label { position: absolute; left: 8px; top: 5px; font-size: 10px; color: var(--web-black-500); pointer-events: none; visibility: hidden; }
.portal-auth-field:has(input:not(:placeholder-shown)) label, .portal-auth-field:has(input:focus) label { visibility: visible; }
.portal-auth-field button { position: absolute; right: 8px; top: 10px; color: var(--web-black-400); }
.portal-auth-field button span { font-size: 22px; }
.portal-auth-field:has(input[aria-invalid=true]) input { border-color: var(--web-error-500); }
.portal-auth-field:has(input[aria-invalid=true]) label, .portal-auth-field:has(input[aria-invalid=true]) button { color: var(--web-error-500); }
.portal-auth-message { border-radius: 3px; padding: 10px 8px; margin-bottom: 10px; font-size: 12px; line-height: 1.4; }
.portal-auth-card button:disabled { cursor: not-allowed; opacity: .6; }
@media (max-width: 767px) { .portal-auth { padding-top: 32px; } .portal-auth-background { height: 310px; } }

.wizard-page { padding-block: 48px 16px; }
.wizard-page [data-panel] { min-height: 260px; }
.wizard-field { position: relative; }
.wizard-field label { position: absolute; top: 5px; left: 8px; font-size: 10px; color: var(--web-black-500); visibility: hidden; pointer-events: none; }
.wizard-field input, .wizard-field select, .wizard-field textarea { width: 100%; min-height: 48px; border: 1px solid var(--web-black-300); border-radius: 6px; background: var(--web-white); color: var(--web-black-950); font-size: 14px; padding: 15px 8px 8px; }
.wizard-field input:focus, .wizard-field select:focus, .wizard-field textarea:focus { outline: none; box-shadow: none; }
.wizard-field select { appearance: none; padding-right: 40px; }
.wizard-field input[type=date] { padding-right: 40px; }
.wizard-field input[type=date]::-webkit-calendar-picker-indicator { opacity: 0; pointer-events: none; }
.wizard-field-icon { position: absolute; right: 10px; top: 50%; transform: translateY(-50%); display: inline-flex; align-items: center; justify-content: center; }
.wizard-field-icon .material-symbols-outlined { font-size: 20px; }
.wizard-field .ui-date-input-shell { display: block; }
.wizard-field .ui-date-icon { display: none; }
.wizard-field .d360-date-display { padding-right: 40px; }
.wizard-phone-field .iti { width: 100%; --iti-border-color: var(--web-black-300); --iti-dialcode-color: var(--web-black-500); --iti-dropdown-bg: var(--web-white); --iti-arrow-color: var(--web-black-400); --iti-hover-color: var(--web-blue-0); }
.wizard-phone-field label { left: 52px; z-index: 1; }
.wizard-phone-field .iti__dropdown-content { color: var(--web-black-950); }
.web-contract-modal { background: color-mix(in srgb, var(--web-black-950) 45%, transparent); }
.web-contract-modal:not(.is-open) { display: none; }
.wizard-photo { position: relative; height: 48px; min-width: 0; }
.wizard-photo details { height: 100%; }
.wizard-field input::placeholder, .wizard-field textarea::placeholder { color: var(--web-black-400); }
.wizard-field select:has(option[value=""]:checked) { color: var(--web-black-400); }
.wizard-field:has(input:not(:placeholder-shown)) label, .wizard-field:has(select option:checked:not([value=""])) label, .wizard-field:has(textarea:not(:placeholder-shown)) label, .wizard-field:has(input[type=date]) label { visibility: visible; }
.wizard-field.wizard-date-field label { visibility: visible; top: 50%; transform: translateY(-50%); font-size: 14px; color: var(--web-black-400); }
.wizard-field.wizard-date-field:focus-within label, .wizard-field.wizard-date-field.is-picker-open label, .wizard-field.wizard-date-field:has(.d360-date-display:not(:placeholder-shown)) label { top: 5px; transform: none; font-size: 10px; color: var(--web-black-500); }
.wizard-field input:disabled, .wizard-field select:disabled { background: var(--web-black-50); }
.wizard-field [aria-invalid=true] { border-color: var(--web-error-500); }
.wizard-field textarea { min-height: 160px; resize: vertical; }
.wizard-field:has(#address) textarea { min-height: 48px; height: 48px; }
.wizard-step-circle { display: inline-flex; width: 32px; height: 32px; justify-content: center; align-items: center; border: 1px solid var(--web-blue-main); border-radius: 50%; color: var(--web-blue-main); font-size: 14px; }
.wizard-steps li { color: var(--web-black-400); }
.wizard-steps li:not(:last-child)::after { content: ''; position: absolute; top: 16px; left: calc(50% + 36px); width: calc(100% - 72px); height: 1px; background: var(--web-black-400); }
.wizard-steps li.is-complete::after, .wizard-steps li.is-active::after { background: var(--web-blue-main); }
.wizard-steps .is-active { color: var(--web-blue-main); }
.wizard-steps .is-active .wizard-step-circle, .wizard-steps .is-complete .wizard-step-circle { background: var(--web-blue-main); color: var(--web-white); }
.wizard-step-circle .material-symbols-outlined { font-size: 20px; }
.wizard-page button:disabled { opacity: .5; cursor: not-allowed; }
.wizard-page input[type=checkbox], .wizard-page input[type=radio] { accent-color: var(--web-blue-main); }
@media (max-width: 767px) { .wizard-page { padding-top: 28px; } .wizard-steps li p { font-size: 10px; } .wizard-steps li::after { display: none; } }

/* Authentication fills the space remaining between the shared header and footer. */
body.portal-auth-page { min-height: 100dvh; }
.portal-auth-page #webHeader, .portal-auth-page #webFooter { flex-shrink: 0; }
.portal-auth-page #main { display: flex; flex-direction: column; min-height: 0; }
.portal-auth-page #webFooter > footer { margin-top: 0; }
.portal-auth-page .portal-auth { display: flex; flex: 1; align-items: center; justify-content: center; min-height: 0; padding: clamp(16px, 3dvh, 40px) 16px; }
.portal-auth-layout { width: 100%; }
.portal-auth-page .portal-auth-background { height: 55%; min-height: 220px; }
#googleStatus:empty { display: none; }
@media (max-height: 820px) {
  .portal-auth-page .portal-auth { padding-block: 12px; }
  .portal-auth-page .portal-auth-logo { width: 64px; height: 64px; }
  .portal-auth-page .portal-auth-brand { margin-top: 8px; margin-bottom: 16px; }
  .portal-auth-page .portal-auth-card { padding: 16px 14px; }
  .portal-auth-page .portal-auth-heading { font-size: 16px; line-height: 1.25; }
  .portal-auth-page .portal-auth-intro { margin-bottom: 12px; }
  .portal-auth-page .portal-auth-forgot { margin-top: 8px; margin-bottom: 16px; }
  .portal-auth-page .portal-auth-divider { margin-block: 14px; }
  .portal-auth-page .portal-auth-signup { margin-top: 14px; }
  .portal-auth-page .portal-auth-field input { min-height: 42px; padding-top: 12px; padding-bottom: 6px; }
  .portal-auth-page .portal-auth-field button { top: 8px; }
}
@media (max-height: 740px) {
  .portal-auth-page .portal-auth { padding-block: 8px; }
  .portal-auth-page .portal-auth-logo { width: 40px; height: 40px; }
  .portal-auth-page .portal-auth-brand { font-size: 20px; margin-top: 4px; margin-bottom: 8px; }
  .portal-auth-page .portal-auth-card { padding-block: 12px; }
  .portal-auth-page .portal-auth-intro { margin-bottom: 8px; }
  .portal-auth-page .portal-auth-forgot { margin-block: 6px 10px; }
  .portal-auth-page .portal-auth-divider { margin-block: 10px; }
  .portal-auth-page .portal-auth-signup { margin-top: 10px; }
  .portal-auth-page .portal-auth-card .web-button { min-height: 34px; padding-block: 7px; }
}


.web-navbar-row { padding-block: 13px; }
@media (min-width: 1024px) { .web-navbar-row { height: 99px; min-height: 99px; } }
#webHeader header { min-height: 100px; }
.web-site-footer .web-store-badge { white-space: nowrap; }
@media (max-width: 767px) { .web-site-footer .web-store-badge { min-height: 32px; padding: 5px 8px !important; font-size: 11px; } .web-site-footer .web-store-badge img { width: 20px; height: 20px; } }
@media (max-height: 740px) {
  .portal-auth-page .portal-auth-card { padding-block: 10px; }
  .portal-auth-page .portal-auth-heading { font-size: 15px; }
  .portal-auth-page .portal-auth-intro { font-size: 11px; }
  .portal-auth-page .portal-auth-field input { min-height: 38px; }
  .portal-auth-page .portal-auth-divider { margin-block: 8px; }
}
@media (max-height: 740px) { .portal-auth-page .portal-auth-message { padding: 8px; margin-bottom: 8px; } }
.web-job-modal:not(.is-open) { display: none; }
.profile-form { min-height: 440px; }
.profile-form input[type=radio] { accent-color: var(--web-blue-main); }
.profile-form .wizard-field:focus-within { outline: 2px solid var(--web-blue-main); outline-offset: 2px; border-radius: 6px; }
@media (max-width: 767px) { .profile-form { min-height: 360px; } }
