@charset "utf-8";

:root { --navy: #002147; --paper: #ffffff; --gold: #ffc600; --muted: #52657a; }

* { box-sizing: border-box; }

html { scroll-behavior: smooth; }

body { margin: 0px; background: var(--paper); color: var(--navy); font: 16px / 1.6 Arial, sans-serif; }

a { color: inherit; text-decoration: none; }

button, input, select, textarea { font: inherit; }

button, a, input, select, textarea { outline-offset: 5px; }

header { border-bottom: 1px solid rgb(213, 228, 239); padding: 20px 6%; display: flex; align-items: center; justify-content: space-between; gap: 25px; }

.brand { display: flex; align-items: center; gap: 13px; font-size: 12px; letter-spacing: 1px; }

.seal { border: 1px solid var(--navy); border-radius: 50%; width: 48px; height: 48px; display: grid; place-items: center; font-family: Georgia; font-size: 17px; }

.brand strong { display: block; font-size: 14px; }

nav { display: flex; gap: 26px; font-size: 14px; }

.btn { display: inline-block; border: 1px solid var(--navy); padding: 12px 23px; background: var(--navy); color: white; cursor: pointer; border-radius: 3px; }

.light { background: transparent; color: var(--navy); }

main { max-width: 1300px; margin: auto; padding: 0px 6%; }

.hero { padding: 72px 0px 62px; display: grid; grid-template-columns: 1.15fr 1fr; gap: 70px; align-items: center; }

.eyebrow { text-transform: uppercase; font-size: 11px; letter-spacing: 2.2px; font-weight: bold; color: rgb(60, 86, 115); }

h1, h2, h3 { font-family: Georgia, serif; font-weight: normal; line-height: 1.13; }

h1 { font-size: clamp(45px, 5.4vw, 76px); margin: 20px 0px; }

h1 em { color: rgb(1, 116, 186); }

p { color: var(--muted); }

.hero p { max-width: 480px; }

.actions { display: flex; gap: 12px; margin-top: 29px; }

.art { position: relative; min-height: 390px; background: rgb(233, 245, 252); border-radius: 180px 180px 8px 8px; display: grid; place-items: center; overflow: hidden; }

.rings { position: absolute; width: 280px; height: 280px; border: 1px solid rgb(131, 187, 223); border-radius: 50%; box-shadow: rgb(233, 245, 252) 0px 0px 0px 35px, rgb(162, 213, 244) 0px 0px 0px 36px, rgb(233, 245, 252) 0px 0px 0px 70px, rgb(201, 231, 249) 0px 0px 0px 71px; }

.art .quote { z-index: 1; background: var(--navy); color: rgb(255, 255, 255); width: 78%; padding: 29px; transform: rotate(-4deg); box-shadow: rgb(162, 213, 244) 12px 15px 0px; }

.quote small { color: rgb(255, 198, 0); letter-spacing: 2px; }

.quote blockquote { font: 30px / 1.3 Georgia; margin: 18px 0px; }

.quote span { font-size: 12px; color: rgb(219, 238, 250); }

.star { position: absolute; right: 20px; top: 25px; font-size: 65px; color: rgb(1, 116, 186); }

.introline { border-top: 1px solid rgb(213, 228, 239); border-bottom: 1px solid rgb(213, 228, 239); display: flex; justify-content: space-between; padding: 18px 0px; font-size: 13px; gap: 15px; }

.introline span:last-child { color: rgb(122, 137, 129); }

section { padding: 65px 0px; }

.sectionhead { display: flex; justify-content: space-between; align-items: end; gap: 20px; }

h2 { font-size: 42px; margin: 10px 0px 15px; }

.sectionhead p { margin: 0px 0px 16px; }

.filters { display: flex; gap: 12px; margin: 25px 0px; flex-wrap: wrap; }

input, select, textarea { border: 1px solid rgb(196, 215, 231); background: white; padding: 12px; border-radius: 3px; color: var(--navy); }

.filters input { flex: 1 1 0%; min-width: 200px; }

.grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; }

.card { border: 1px solid rgb(213, 228, 239); background: rgb(255, 255, 255); padding: 26px; border-radius: 4px; transition: transform 0.2s; }

.card:hover { transform: translateY(-4px); }

.avatar { width: 64px; height: 64px; border-radius: 50%; display: grid; place-items: center; background: rgb(231, 237, 227); color: rgb(70, 103, 83); font: 24px Georgia; }

.card:nth-child(2n) .avatar { background: rgb(240, 230, 212); color: rgb(153, 117, 59); }

.tag { font-size: 11px; letter-spacing: 1px; color: rgb(124, 134, 122); text-transform: uppercase; }

.card h3 { font-size: 25px; margin: 18px 0px 4px; }

.card .role { font-size: 13px; min-height: 42px; }

.card blockquote { margin: 20px 0px; font: 18px / 1.5 Georgia; border-top: 1px solid rgb(228, 231, 223); padding-top: 18px; }

.textbtn { border: 0px; background: none; padding: 0px; color: var(--navy); cursor: pointer; font-size: 13px; font-weight: bold; }

.demo { font-size: 12px; color: rgb(125, 106, 73); border-left: 3px solid rgb(255, 198, 0); padding-left: 12px; }

.news { display: grid; grid-template-columns: repeat(3, 1fr); gap: 25px; margin-top: 28px; }

.news article { border-top: 2px solid var(--navy); padding: 22px 0px; }

.news h3 { font-size: 25px; }

.news p { font-size: 14px; }

.join { background: var(--navy); color: white; padding: 45px; border-radius: 5px; display: grid; grid-template-columns: 1fr 1.15fr; gap: 45px; }

.join p { color: rgb(219, 238, 250); }

.join h2 { font-size: 43px; }

.join .eyebrow { color: rgb(255, 198, 0); }

form { display: grid; grid-template-columns: 1fr 1fr; gap: 15px; }

label { font-size: 12px; display: block; }

label input, label select, label textarea { display: block; width: 100%; margin-top: 5px; }

.full { grid-column: 1 / -1; }

.check { display: flex; gap: 10px; align-items: start; }

.check input { width: auto; margin-top: 4px; }

.join .btn { background: rgb(255, 198, 0); color: rgb(0, 33, 71); border: 0px; }

.notice { font-size: 12px !important; }

footer { padding: 32px 6%; border-top: 1px solid rgb(213, 228, 239); display: flex; justify-content: space-between; font-size: 12px; color: rgb(108, 124, 116); }

dialog { max-width: 540px; width: 90%; padding: 35px; border: 0px; border-radius: 5px; background: var(--paper); color: var(--navy); }

dialog::backdrop { background: rgba(0, 33, 71, 0.79); }

.close { float: right; background: none; border: 0px; font-size: 28px; cursor: pointer; color: var(--navy); }

#empty { display: none; padding: 25px; text-align: center; }

#status { margin: 0px; color: rgb(255, 223, 112); }

@media (max-width: 800px) {
  header { flex-wrap: wrap; }
  nav { gap: 17px; font-size: 12px; }
  .hero { grid-template-columns: 1fr; gap: 35px; padding-top: 40px; }
  .art { min-height: 300px; }
  .grid, .news { grid-template-columns: 1fr 1fr; }
  .join { grid-template-columns: 1fr; padding: 27px; }
  .sectionhead { display: block; }
  .introline { flex-direction: column; gap: 4px; }
}

@media (max-width: 520px) {
  .grid, .news { grid-template-columns: 1fr; }
  h2 { font-size: 34px; }
  form { grid-template-columns: 1fr; }
  form > * { grid-column: 1; }
  .actions { flex-wrap: wrap; }
  .introline { font-size: 12px; }
  footer { display: block; }
}

header { background: rgb(255, 255, 255); border-top: 5px solid rgb(0, 33, 71); border-bottom: 3px solid rgb(162, 213, 244); }

.faculty-logo { display: block; width: 82px; height: 82px; object-fit: contain; flex-shrink: 0; }

.brand { letter-spacing: 0.4px; font-size: 12px; }

.brand strong { font-size: 14px; }

nav { align-items: center; }

.btn:hover { background: rgb(1, 116, 186); border-color: rgb(1, 116, 186); color: white; }

.btn.light:hover { background: rgb(233, 245, 252); color: rgb(0, 33, 71); }

.join { border-top: 5px solid rgb(255, 198, 0); }

.join .btn { background: rgb(255, 198, 0); color: rgb(0, 33, 71); }

.introline { background: rgb(233, 245, 252); padding: 18px 16px; }

footer { background: rgb(0, 33, 71); color: rgb(228, 241, 251); }

.quote small { color: rgb(255, 198, 0); }

.hero h1 em { color: rgb(1, 116, 186); }

@media (max-width: 600px) {
  .faculty-logo { width: 64px; height: 64px; }
  .brand { font-size: 10px; }
  .brand strong { font-size: 12px; }
  header nav { flex-wrap: wrap; width: 100%; justify-content: space-between; gap: 12px; }
  header nav .btn { padding: 9px 12px; }
}

/* Uygulama bütünleştirmesi: orijinal görünüm üstüne erişilebilirlik ve dinamik durumlar. */
[hidden] { display: none !important; }
.skip { position:absolute; left:12px; top:-100px; background:white; padding:10px; z-index:100; }
.skip:focus { top:12px; }
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
:focus-visible { outline:3px solid #0174ba; outline-offset:4px; }
img { max-width:100%; }
body { overflow-wrap:break-word; }
h1, h2, h3 { color: var(--navy); }
.join h2 { color:white; }
.hero h1 { letter-spacing:-1.2px; }
.hero .actions .btn { white-space:normal; }
.art .quote { position:relative; }
.art .quote blockquote { color:white; }
#duvar, #katil, #haberler, #haber-gonder { scroll-margin-top:16px; }
#haber-gonder { margin-top:40px; }
#news-list .empty, #cards .empty { grid-column:1 / -1; }
.empty { border:1px dashed #c4d7e7; background:#f4fafd; padding:28px; text-align:center; color:#52657a; margin:0; }
.grid .card { display:flex; flex-direction:column; }
.grid .card .avatar { font-size:22px; flex:0 0 auto; }
.grid .card .role { min-height:0; }
.grid .card blockquote { white-space:pre-wrap; overflow-wrap:anywhere; }
.grid .card .textbtn { margin-top:auto; text-align:left; padding-top:8px; }
.load-actions { text-align:center; margin-top:24px; }
.load-actions p { font-size:13px; }
.load-actions .btn { display:inline-block; }
.news article p { white-space:pre-wrap; overflow-wrap:anywhere; }
.news article small { color:#71808c; }
.join label { color:white; }
.join label small { color:#d9eefa; font-size:11px; }
.join .check input { width:auto; height:auto; flex:0 0 auto; accent-color:#ffc600; }
.join .btn { font-weight:700; text-align:center; }
.join .btn:hover:not(:disabled) { background:#ffda55; color:#002147; border-color:#ffda55; }
.join .btn.light { background:transparent; color:white; border:1px solid #93bedc; }
.join .btn.light:hover { background:#194a77; color:white; }
.join form label, #login-form label { font-size:12px; font-weight:400; }
.join form label input, .join form label select, .join form label textarea { border:1px solid #c4d7e7; background:white; color:#002147; }
.join form textarea { min-height:130px; resize:vertical; }
.join form label input:disabled, .join form label textarea:disabled { opacity:.7; }
.join form .form-status { margin:0; color:#ffdf70; min-height:1px; line-height:1.5; font-size:13px; }
.join form .form-status.success { color:#c2f3cf; }
button:disabled { opacity:.58; cursor:not-allowed; }
.honeypot { position:absolute; width:1px; height:1px; left:-9999px; overflow:hidden; }
.privacy-contact { font-size:12px!important; color:#d9eefa!important; }
.contact { opacity:.97; }
footer { gap:24px; align-items:center; }
footer a { color:#fff; text-decoration:underline; }
.footer-notice { max-width:400px; }
.admin-overlay { position:fixed; z-index:100; inset:0; overflow:auto; background:rgba(0,33,71,.82); padding:32px; }
.admin-shell { max-width:920px; min-height:280px; margin:0 auto; padding:38px; border-radius:5px; background:#fff; color:#002147; box-shadow:0 20px 80px rgba(0,0,0,.2); }
.admin-header, .admin-toolbar { display:flex; justify-content:space-between; align-items:center; gap:20px; }
.admin-header { border-bottom:1px solid #d5e4ef; margin-bottom:28px; }
.admin-header h2 { font-size:36px; }
.admin-header a { font-size:14px; text-decoration:underline; }
#admin-login { max-width:480px; margin:30px auto; }
#admin-login form { display:grid; grid-template-columns:1fr; gap:16px; }
#admin-login form>* { grid-column:1; }
#admin-login form label { color:#002147; }
#admin-login form input { width:100%; }
#login-message { color:#a43c33; }
.admin-toolbar { margin-bottom:24px; }
.admin-toolbar label select { margin-left:10px; }
.admin-entry { border:1px solid #d5e4ef; border-radius:4px; padding:24px; margin:12px 0; background:#f9fcff; }
.admin-entry h3 { font-size:24px; margin:0 0 10px; }
.admin-entry .item-meta { font-size:12px; color:#52657a; margin:5px 0; }
.admin-entry p { white-space:pre-wrap; overflow-wrap:anywhere; }
.admin-actions { display:flex; flex-wrap:wrap; gap:10px; }
.admin-actions button { border:1px solid #c4d7e7; padding:9px 12px; color:#002147; background:#fff; font-size:12px; border-radius:3px; }
.admin-actions .approve { background:#e3f6e8; border-color:#89cca2; color:#155e32; }
.admin-actions .reject, .admin-actions .delete { background:#fff1f0; border-color:#eeada8; color:#8c2626; }
body.admin-open { overflow:hidden; }
@media (max-width:800px) {
 .admin-toolbar { flex-wrap:wrap; }
 .admin-shell { padding:24px; }
 .faculty-logo { width:70px; height:70px; }
 .join form { gap:12px; }
}
@media (max-width:520px) {
 header { padding:16px 5%; }
 .brand { font-size:10px; line-height:1.4; gap:9px; }
 .brand strong { font-size:12px; }
 .faculty-logo { width:58px; height:58px; }
 header nav { width:100%; justify-content:space-between; gap:10px; flex-wrap:wrap; }
 header nav a { font-size:12px; }
 header nav .btn { padding:8px 10px; font-size:11px; }
 .hero { gap:30px; }
 .hero h1 { font-size:clamp(45px,10vw,68px); }
 .art { min-height:290px; }
 .art .quote { width:82%; padding:24px; }
 .art .quote blockquote { font-size:26px; }
 .join { gap:25px; padding:25px 20px; }
 .join h2 { font-size:34px; }
 .join form { grid-template-columns:1fr; }
 .join form>* { grid-column:1; }
 .admin-overlay { padding:8px; }
 .admin-shell { padding:18px; }
 .admin-header h2 { font-size:28px; }
 footer { display:flex; flex-direction:column; align-items:flex-start; }
}
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } .card { transition:none; } }

#detail-dialog { max-width:640px; width:calc(100% - 36px); border:0; padding:36px; color:#002147; background:#fff; box-shadow:0 18px 70px rgba(0,33,71,.22); }
#detail-dialog::backdrop { background:rgba(0,33,71,.8); }
#detail-dialog h2 { padding-top:22px; }
#detail-dialog #detail-body { white-space:pre-wrap; line-height:1.85; color:#30465c; font-size:16px; }
#detail-dialog .close { float:right; font-size:28px; border:0; background:none; cursor:pointer; }

/* Açıkça ayrılmış, yetkisiz demo yönetim arayüzü */
.demo-notice { background:#fff7d7; border-left:4px solid #d5a000; padding:13px 18px; margin:0 0 24px; color:#453514; font-size:13px; }
.demo-notice strong { font-weight:700; }
.demo-notice p { color:#655429; margin:6px 0 0; line-height:1.6; }
.demo-link { border:1px solid #d5e4ef; background:#f4f9fc; padding:14px; color:#52657a; font-size:13px; }
.demo-link a { font-weight:700; color:#005d96; text-decoration:underline; }

/* Gerçek yönetici parola değiştirme görünümü */
#password-change { max-width:660px; margin:22px auto; padding:24px; background:#f4f9fc; border:1px solid #c4d7e7; border-radius:5px; }
#password-change h3 { font-size:27px; margin:4px 0 12px; }
#password-change p { color:#52657a; font-size:14px; }
#password-change-form { display:grid; grid-template-columns:1fr; gap:14px; margin-top:20px; }
#password-change-form>* { grid-column:1; }
#password-change-form label { font-size:13px; font-weight:600; color:#002147; }
#password-change-form label input { display:block; margin-top:6px; width:100%; }
#password-change-form label small { font-size:12px; font-weight:400; color:#52657a; }
#password-change-message { min-height:1.4em; color:#ae3131 !important; }
#password-change-message.success { color:#1b753a !important; }
#password-change .admin-actions { display:flex; gap:10px; flex-wrap:wrap; }
#password-change .admin-actions button { font-size:13px; padding:10px 14px; }
#password-change .admin-actions .btn { background:#002147; border-color:#002147; color:#fff; }
#password-change .admin-actions .btn.light { background:#fff; border-color:#c4d7e7; color:#002147; }


/* Theme switcher: no external CSS or tracking. */
.theme-toggle { background:transparent; color:#002147; border:1px solid #c4d7e7; border-radius:3px; padding:9px 12px; cursor:pointer; font-size:12px; white-space:nowrap; }
.theme-toggle:hover { border-color:#0174ba; }
.staff-section { padding:28px 0 0; margin-top:32px; border-top:1px solid #d5e4ef; }
.staff-section h3 { font-size:28px; margin:5px 0 10px; }
.staff-section>p { max-width:660px; font-size:14px; }
#staff-create-form { display:grid; grid-template-columns:1fr 1fr; gap:14px; border:1px solid #d5e4ef; padding:20px; border-radius:4px; background:#f4f9fc; }
#staff-create-form label { font-size:13px; }
#staff-create-form label input, #staff-create-form label select { width:100%; margin-top:6px; }
#staff-create-form label small { display:block; color:#52657a; font-size:11px; }
#staff-create-form .btn { width:max-content; }
.staff-credential { border:2px solid #d6b146; background:#fff8e1; padding:20px; margin:20px 0; border-radius:4px; overflow-wrap:anywhere; }
.staff-credential p { font-size:13px; }
.staff-credential code { font-size:13px; overflow-wrap:anywhere; }
.staff-credential .btn { margin-right:8px; margin-top:8px; }
.staff-list { margin-top:16px; }
.staff-entry { display:flex; gap:20px; align-items:center; justify-content:space-between; border:1px solid #d5e4ef; padding:14px 18px; margin-bottom:8px; border-radius:4px; }
.staff-entry p { margin:4px 0 0; }
.staff-protected { font-size:12px; color:#647b91; }
.staff-remove { background:#fff0ed; color:#9d2931; border:1px solid #e5b4b4; padding:9px 14px; cursor:pointer; border-radius:3px; }
.admin-userline { font-size:12px; color:#52657a; margin:0 0 14px; }
@media (max-width:720px){ #staff-create-form { grid-template-columns:1fr; } #staff-create-form>* { grid-column:1; } .staff-entry { flex-wrap:wrap; } }
html[data-theme="dark"] { color-scheme:dark; --navy:#e7f0ff; --paper:#0f1727; --gold:#ffd04c; --muted:#a7b8cf; }
html[data-theme="dark"] body { background:#0f1727; color:#e7f0ff; }
html[data-theme="dark"] header { background:#151f33; border-top-color:#456a9c; border-bottom-color:#345b8b; }
html[data-theme="dark"] .brand, html[data-theme="dark"] nav a { color:#eef5ff; }
html[data-theme="dark"] .theme-toggle { background:#1f2e45; color:#f8d37c; border-color:#4b668a; }
html[data-theme="dark"] .btn:not(.join .btn) { background:#28629c; color:#f3f8ff; border-color:#5689b9; }
html[data-theme="dark"] .btn.light:not(.join .btn) { background:transparent; color:#d6eaff; border-color:#617b9b; }
html[data-theme="dark"] .eyebrow { color:#98bedf; }
html[data-theme="dark"] h1, html[data-theme="dark"] h2, html[data-theme="dark"] h3 { color:#f0f5ff; }
html[data-theme="dark"] h1 em { color:#8dc9ff; }
html[data-theme="dark"] p, html[data-theme="dark"] .sectionhead p { color:#afc1d8; }
html[data-theme="dark"] .art { background:#1b3651; }
html[data-theme="dark"] .art .rings { border-color:#507a9e; box-shadow:#1b3651 0 0 0 35px,#335c7b 0 0 0 36px,#1b3651 0 0 0 70px,#547c97 0 0 0 71px; }
html[data-theme="dark"] .art .quote { background:#152640; box-shadow:#355979 12px 15px 0; }
html[data-theme="dark"] .art .quote small, html[data-theme="dark"] .join .eyebrow { color:#ffd04c; }
html[data-theme="dark"] .art .quote blockquote { color:#fff; }
html[data-theme="dark"] .art .quote span { color:#cfe5fb; }
html[data-theme="dark"] .introline { background:#1b2a42; border-color:#3e5770; }
html[data-theme="dark"] .introline span:last-child { color:#b7c7da; }
html[data-theme="dark"] input, html[data-theme="dark"] select, html[data-theme="dark"] textarea { background:#1b2940; border-color:#52677f; color:#eaf3ff; }
html[data-theme="dark"] input::placeholder, html[data-theme="dark"] textarea::placeholder { color:#94a8c1; }
html[data-theme="dark"] .card { background:#182337; border-color:#354962; }
html[data-theme="dark"] .card .avatar { background:#2a4664; color:#d1e9ff; }
html[data-theme="dark"] .card blockquote { border-color:#41536a; color:#f1f6ff; }
html[data-theme="dark"] .tag, html[data-theme="dark"] .item-meta { color:#adc1d5; }
html[data-theme="dark"] .textbtn { color:#9fd0ff; }
html[data-theme="dark"] .empty { background:#192940; border-color:#536e8f; color:#b9cbe0; }
html[data-theme="dark"] .news article { border-color:#6397cb; }
html[data-theme="dark"] .join { background:#182c46; border-top-color:#ffd04c; }
html[data-theme="dark"] .join h2, html[data-theme="dark"] .join label { color:#f4f8ff; }
html[data-theme="dark"] .join p, html[data-theme="dark"] .join label small { color:#c1d5ec; }
html[data-theme="dark"] .join form label input, html[data-theme="dark"] .join form label select, html[data-theme="dark"] .join form label textarea { background:#f9fbff; color:#102640; border-color:#8ca9c9; }
html[data-theme="dark"] .join form .btn { background:#ffd04c; color:#102640; }
html[data-theme="dark"] .join form .btn.light { background:transparent; color:#eff7ff; border-color:#9cb7d6; }
html[data-theme="dark"] footer { background:#121d30; border-color:#37516a; }
html[data-theme="dark"] footer, html[data-theme="dark"] footer a { color:#e3eeff; }
html[data-theme="dark"] #detail-dialog, html[data-theme="dark"] .admin-shell { background:#18263c; color:#edf5ff; }
html[data-theme="dark"] #detail-dialog #detail-body { color:#c8d8ec; }
html[data-theme="dark"] .admin-header { border-color:#3c526d; }
html[data-theme="dark"] #admin-login form label, html[data-theme="dark"] #password-change-form label { color:#e9f1ff; }
html[data-theme="dark"] #admin-login input { background:#1c3049; color:#fff; }
html[data-theme="dark"] #password-change, html[data-theme="dark"] #staff-create-form { background:#1d304a; border-color:#405c7e; }
html[data-theme="dark"] #password-change p, html[data-theme="dark"] .staff-section>p, html[data-theme="dark"] .admin-userline { color:#c4d4e8; }
html[data-theme="dark"] #password-change input, html[data-theme="dark"] #staff-create-form input, html[data-theme="dark"] #staff-create-form select { background:#142439; color:#f1f7ff; }
html[data-theme="dark"] #password-change .admin-actions .btn, html[data-theme="dark"] #staff-create-form .btn { background:#29649f; color:#fff; }
html[data-theme="dark"] #password-change .admin-actions .btn.light { background:transparent; color:#cfe5ff; }
html[data-theme="dark"] .admin-entry, html[data-theme="dark"] .staff-entry { background:#1b2d44; border-color:#3e5b77; }
html[data-theme="dark"] .admin-actions button { background:#243a54; color:#e1eeff; border-color:#526d88; }
html[data-theme="dark"] .admin-actions .approve { background:#174937; color:#d1ffdf; }
html[data-theme="dark"] .admin-actions .reject, html[data-theme="dark"] .admin-actions .delete, html[data-theme="dark"] .staff-remove { background:#503038; color:#ffc7d0; border-color:#a25a68; }
html[data-theme="dark"] .staff-section { border-color:#3e5b77; }
html[data-theme="dark"] .staff-protected { color:#b1c1d7; }
html[data-theme="dark"] .staff-credential { background:#352c18; border-color:#a88a38; color:#ffecb9; }
html[data-theme="dark"] .staff-credential p { color:#efdfb3; }
html[data-theme="dark"] .demo-link { background:#192c42; border-color:#375c81; }
html[data-theme="dark"] .demo-link a { color:#a3d0ff; }
html[data-theme="dark"] .demo-notice { background:#342c18; color:#ffe4aa; }
html[data-theme="dark"] .demo-notice p { color:#efdbb6; }
html[data-theme="dark"] dialog::backdrop { background:rgba(0,0,0,.8); }


/* 2026-10-20: remove oversized bottom band, preserve compact legal disclosure. */
.legal-footer { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:6px 24px; padding:18px max(5%,calc((100vw - 1130px)/2)); margin:0; border-top:1px solid #d5e4ef; border-bottom:0; background:#f7fbfd; font-size:12px; font-weight:400; color:#52657a; line-height:1.5; }
.legal-footer span { min-width:0; }
.legal-footer #site-status { text-align:right; }
html[data-theme="dark"] .legal-footer { background:#131e2f; border-color:#304660; color:#b7c9dd; }
html[data-theme="dark"] .legal-footer #site-status { color:#b7c9dd; }
/* Fix real overflow causes; don't indiscriminately mask horizontal scrolling. */
html, body { width:100%; }
header, nav, .hero, .hero>div, main, main>section, .join, .join>div, .join form, .sectionhead, .filters, .admin-shell { min-width:0; }
.brand { min-width:0; max-width:100%; }
.brand span { min-width:0; overflow-wrap:anywhere; }
nav { min-width:0; flex-wrap:wrap; justify-content:flex-end; row-gap:10px; }
.art, .quote { min-width:0; }
.hero { grid-template-columns:minmax(0,1.15fr) minmax(0,1fr); }
.join { grid-template-columns:minmax(0,1fr) minmax(0,1.15fr); }
.join form { min-width:0; }
.join form>* { min-width:0; }
.grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
.news { grid-template-columns:repeat(3,minmax(0,1fr)); }
.filters input { min-width:min(200px,100%); }
@media(max-width:1100px){
  header { flex-wrap:wrap; row-gap:14px; }
  header nav { width:100%; justify-content:space-between; }
}
@media(max-width:800px){
  .hero { grid-template-columns:minmax(0,1fr); }
  .join { grid-template-columns:minmax(0,1fr); }
  .grid, .news { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:520px){
  .grid, .news { grid-template-columns:minmax(0,1fr); }
  header nav { justify-content:flex-start; column-gap:14px; }
  header nav a, header nav button { flex:0 0 auto; }
  .brand { width:100%; }
  .legal-footer { padding:15px 5%; flex-direction:column; gap:5px; align-items:flex-start; }
  .legal-footer #site-status { text-align:left; }
}


/* 20 October — editorial refinement, no footer or sticky bottom bar. */
.site-header { display:grid; grid-template-columns:minmax(250px,1.3fr) minmax(260px,auto) auto; gap:24px; align-items:center; padding:14px 5%; }
.site-header .brand { grid-column:1; grid-row:1; gap:12px; line-height:1.38; max-width:100%; }
.site-header .brand strong { font-size:13px; letter-spacing:.06em; }
.site-header .faculty-logo { width:70px; height:70px; }
.site-header .primary-nav { grid-column:2; grid-row:1; width:auto; display:flex; flex-wrap:nowrap; justify-content:center; gap:20px; margin:0; padding:0; font-size:13px; }
.site-header .primary-nav a { white-space:nowrap; text-underline-offset:5px; transition:color .15s; }
.site-header .primary-nav a:hover { color:#0174ba; text-decoration:underline; }
.site-header .header-actions { grid-column:3; grid-row:1; display:flex; align-items:center; justify-content:flex-end; gap:9px; }
.site-header .admin-shortcut { white-space:nowrap; font-size:12px; color:#49637c; text-decoration:underline; text-underline-offset:4px; }
.site-header .theme-toggle { font-size:12px; }
.site-header .menu-toggle { display:none; background:transparent; border:1px solid #b8cedf; border-radius:4px; padding:8px 12px; font-size:13px; color:var(--navy); cursor:pointer; }
.site-disclaimer { font-size:11px; margin:20px 0 0; opacity:.8; color:#52657a; line-height:1.55; }
.hero { padding-top:clamp(38px,5vw,66px); padding-bottom:clamp(38px,5vw,60px); }
.hero h1 { letter-spacing:-.035em; line-height:1.08; }
.hero .actions { flex-wrap:wrap; }
.hero .actions .btn { font-size:13px; font-weight:600; }
.sectionhead h2 { letter-spacing:-.035em; }
section { padding:50px 0; }
#duvar { padding-bottom:38px; }
#haberler { padding-top:52px; }
.filters { margin-top:24px; }
.filters input, .filters select { transition:border-color .15s, box-shadow .15s; }
.filters input:focus-visible, .filters select:focus-visible { border-color:#0174ba; box-shadow:0 0 0 3px rgba(1,116,186,.12); }
.card { box-shadow:0 5px 18px rgba(20,55,91,.035); border-radius:8px; display:flex; flex-direction:column; min-width:0; }
.card:hover { box-shadow:0 15px 35px rgba(20,55,91,.10); transform:translateY(-3px); }
.card .avatar { margin-bottom:6px; }
.card .tag { color:#566a7b; }
.card .role { font-weight:500; }
.card blockquote { overflow-wrap:anywhere; flex:1; }
.news article { border-radius:5px; padding:23px 14px; background:linear-gradient(180deg,rgba(1,116,186,.045),transparent 70%); }
.news article .tag { display:block; margin-bottom:10px; }
.news article h3 { margin:9px 0 12px; letter-spacing:-.02em; }
.empty { padding:30px 22px; border-radius:8px; line-height:1.65; }
.composer-block { scroll-margin-top:20px; }
.composer-prompt { display:flex; align-items:center; justify-content:space-between; gap:35px; padding:27px 33px; background:#e9f5fc; border:1px solid #d2e8f6; border-left:4px solid #0174ba; border-radius:8px; }
.composer-prompt .eyebrow { color:#41657f; }
.composer-prompt h2 { margin:8px 0 10px; font-size:clamp(24px,2.7vw,34px); }
.composer-prompt p { margin:0; font-size:14px; max-width:560px; }
.composer-toggle { font-weight:700; flex-shrink:0; white-space:nowrap; }
.composer-panel { margin-top:15px; scroll-margin-top:20px; }
.composer-close-wrap { display:flex; justify-content:flex-end; margin:0 0 10px; }
.composer-close { border:1px solid #bacddf; background:transparent; color:#385572; padding:8px 13px; border-radius:4px; cursor:pointer; font-size:12px; }
.composer-close:hover { border-color:#0174ba; color:#0174ba; }
#haber-gonder { margin-top:45px; }
.news-composer .composer-prompt { background:#f2f6fd; border-color:#d9e4f6; border-left-color:#efb900; }
.composer-panel .join { box-shadow:0 12px 35px rgba(0,33,71,.08); }
/* Full management page, not an overlay on top of the public site */
.admin-page .site-header { grid-template-columns:1fr auto; }
.admin-page-header .header-actions { grid-column:2; }
.admin-main { width:100%; max-width:1240px; margin:0 auto; padding:28px 4% 70px; min-height:calc(100vh - 125px); }
.admin-page #admin-screen.admin-overlay { position:static; display:block; inset:auto; overflow:visible; background:transparent; border:0; padding:0; height:auto; min-height:0; }
.admin-page .admin-shell { max-width:100%; border:1px solid #d7e4ef; box-shadow:0 12px 40px rgba(20,55,91,.06); }
.admin-page .admin-header h2 { margin:0 0 14px; font-size:clamp(26px,3vw,38px); }
.admin-page #admin-login { margin:30px auto 50px; }
html[data-theme="dark"] .site-header .admin-shortcut { color:#b4cce6; }
html[data-theme="dark"] .site-header .menu-toggle { border-color:#5e7895; color:#e9f3ff; }
html[data-theme="dark"] .site-header .primary-nav a:hover { color:#9fd0ff; }
html[data-theme="dark"] .site-disclaimer { color:#a4bed7; }
html[data-theme="dark"] .composer-prompt { background:#19344c; border-color:#325779; border-left-color:#73bae9; }
html[data-theme="dark"] .composer-prompt p { color:#bdcfe3; }
html[data-theme="dark"] .composer-prompt .eyebrow { color:#9ec5e4; }
html[data-theme="dark"] .news-composer .composer-prompt { background:#20344b; border-color:#3c5572; border-left-color:#e8bd40; }
html[data-theme="dark"] .composer-close { border-color:#526e8a; color:#c4d8ec; }
html[data-theme="dark"] .news article { background:linear-gradient(180deg,rgba(96,165,235,.11),transparent 70%); }
html[data-theme="dark"] .card { box-shadow:0 4px 18px rgba(0,0,0,.08); }
html[data-theme="dark"] .admin-page .admin-shell { border-color:#415873; background:#18263c; }
@media (max-width:1160px) {
  .site-header { grid-template-columns:minmax(0,1fr) auto; column-gap:20px; }
  .site-header .primary-nav { grid-column:1/-1; grid-row:2; width:100%; justify-content:center; border-top:1px solid #dbe7f0; padding:10px 0 1px; }
  .site-header .header-actions { grid-column:2; }
  html[data-theme="dark"] .site-header .primary-nav { border-color:#344b66; }
}
@media (max-width:700px) {
  .site-header { grid-template-columns:minmax(0,1fr) auto; gap:12px; padding:12px 5%; }
  .site-header .faculty-logo { width:53px; height:53px; }
  .site-header .brand { gap:8px; }
  .site-header .brand strong { font-size:11px; }
  .site-header .brand span { font-size:9px; letter-spacing:0; }
  .site-header .menu-toggle { display:inline-block; }
  .site-header .primary-nav { display:none; grid-column:1/-1; grid-row:2; flex-direction:column; align-items:stretch; gap:0; border-top:1px solid #dbe7f0; margin:0; padding:7px 0; }
  .site-header .primary-nav.is-open { display:flex; }
  .site-header .primary-nav a { padding:10px 8px; display:block; white-space:normal; }
  .site-header .admin-shortcut { display:none; }
  .site-header .theme-toggle { padding:8px; white-space:nowrap; font-size:11px; }
  .admin-page .site-header .admin-shortcut { display:inline-block; }
  .admin-page .site-header .header-actions { gap:5px; }
  .composer-prompt { flex-direction:column; align-items:flex-start; padding:22px; gap:17px; }
  .composer-toggle { width:100%; text-align:center; }
  .sectionhead h2 { font-size:clamp(29px,6vw,38px); }
  .admin-main { padding:18px 3% 50px; }
}
@media (max-width:410px) {
  .site-header .brand { max-width:185px; }
  .site-header .faculty-logo { width:45px; height:45px; }
  .site-header .theme-toggle { font-size:0; width:40px; height:40px; }
  .site-header .theme-toggle::first-letter { font-size:20px; }
  .admin-page .site-header .admin-shortcut { font-size:11px; }
  .admin-page .site-header .brand { max-width:145px; }
  .admin-page .site-header .brand span { font-size:9px; }
}

/* Mobile management remains discoverable in the collapsed menu. */
.site-header .primary-nav .mobile-admin-link { display:none; }
@media (max-width:700px) { .site-header .primary-nav.is-open .mobile-admin-link { display:block; border-top:1px solid #dbe7f0; margin-top:3px; } }
@media (max-width:700px) { html[data-theme="dark"] .site-header .primary-nav.is-open .mobile-admin-link { border-color:#344b66; } }


/* Accessible, collapsible information for contributor responsibility and KVKK. */
.legal-disclosures { min-width:0; background:rgba(255,255,255,.075); border:1px solid rgba(224,237,249,.26); padding:14px 15px; border-radius:6px; }
.legal-summary { margin:0 0 10px; font-size:12px; line-height:1.65; color:#e2efff!important; }
.legal-details { margin:9px 0 0; padding:0; border:1px solid rgba(224,237,249,.35); border-radius:5px; background:rgba(255,255,255,.06); color:#f0f7ff; }
.legal-details summary { cursor:pointer; padding:12px 14px; font-weight:700; font-size:13px; line-height:1.4; color:#f8fbff; }
.legal-details summary:hover { background:rgba(255,255,255,.08); }
.legal-details summary:focus-visible { outline:2px solid #ffc600; outline-offset:3px; }
.legal-details[open] summary { border-bottom:1px solid rgba(224,237,249,.25); }
.legal-details-body { padding:12px 16px 16px; overflow-wrap:anywhere; }
.legal-details-body p { font-size:12px!important; line-height:1.75; margin:0 0 12px; color:#e2efff!important; }
.legal-details-body p:last-child { margin-bottom:0; }
.legal-details-body a { text-decoration:underline; text-underline-offset:2px; color:#ffdf75; }
.legal-details-body a:hover { color:#fff0b5; }
.join .check input[name="responsibility"] { accent-color:#ffc600; }
html[data-theme="dark"] .legal-disclosures { background:rgba(0,0,0,.14); border-color:#5b7694; }
html[data-theme="dark"] .legal-details { border-color:#6c88a4; }
html[data-theme="dark"] .legal-details summary { color:#f3f7ff; }
html[data-theme="dark"] .legal-details-body a { color:#ffe18a; }
@media(max-width:520px) { .legal-disclosures { padding:10px; } .legal-details summary { padding:11px; } .legal-details-body { padding:12px; } }


/* Standalone, readable terms page — distinct publication consent from KVKK notice. */
.terms-page { max-width:860px; margin:0 auto; padding:52px 24px 95px; }
.terms-page h1 { font-size:clamp(38px,5vw,60px); line-height:1.14; margin:16px 0 18px; }
.terms-page .terms-lead { max-width:690px; font-size:17px; line-height:1.75; }
.terms-toc { display:flex; flex-wrap:wrap; gap:10px; margin:30px 0 16px; }
.terms-toc a { padding:9px 14px; border:1px solid #d0e1f0; background:#edf6fc; border-radius:5px; color:#0d517d; font-size:13px; font-weight:600; }
.terms-section { padding:28px 0 30px; border-bottom:1px solid #dce7ef; scroll-margin-top:18px; }
.terms-section h2 { font-size:clamp(27px,3.4vw,35px); margin:0 0 20px; line-height:1.27; }
.terms-section p { font-size:15px; line-height:1.85; margin:0 0 15px; }
.terms-section a { color:#006da8; text-decoration:underline; text-underline-offset:3px; }
.terms-contact { background:#eff7fc; border-left:4px solid #0174ba; border-radius:3px; padding:20px 24px; margin:22px 0; overflow-wrap:anywhere; }
.terms-contact strong { display:block; margin-bottom:8px; }
.terms-contact p { margin:6px 0; font-size:14px; }
.terms-back { display:flex; flex-wrap:wrap; gap:12px; padding:30px 0; }
.terms-inline { background:rgba(255,255,255,.07); border:1px solid rgba(255,255,255,.22); border-radius:6px; padding:14px 17px; }
.terms-inline a { display:inline-block; color:#ffdf75; text-decoration:underline; text-underline-offset:3px; font-weight:700; font-size:13px; margin:0 0 5px; }
.terms-inline span { display:block; font-size:12px; line-height:1.7; color:#d9eafa; }
.join form>.check { font-weight:600; line-height:1.65; }
html[data-theme="dark"] .terms-page .terms-section { border-color:#405a76; }
html[data-theme="dark"] .terms-toc a { background:#253953; color:#b5e2ff; border-color:#426581; }
html[data-theme="dark"] .terms-contact { background:#1d334c; color:#eef6ff; }
html[data-theme="dark"] .terms-section a { color:#a9d9ff; }
html[data-theme="dark"] .terms-inline { background:rgba(255,255,255,.05); }
html[data-theme="dark"] .terms-inline a { color:#ffe196; }
@media (max-width:520px) { .terms-page { padding:35px 20px 64px; } .terms-section p { font-size:14px; } .terms-contact { padding:15px; } }

body[data-page="terms"] .site-header { grid-template-columns:minmax(0,1fr) auto; }
body[data-page="terms"] .site-header .header-actions { grid-column:2; }
@media(max-width:700px) { body[data-page="terms"] .site-header .header-actions { justify-content:flex-end; } }



/* 21.10.2026 — Responsive typography and contemporary alumni submission forms.
 * Heading uses its OWN container width; general body word wrapping cannot split it.
 * Forms preserve the existing field names, moderation API and consent semantics.
 */
.hero-copy { container-type:inline-size; min-width:0; }
.hero .hero-title {
  display:block;
  width:100%;
  max-width:100%;
  font-family:Georgia, "Times New Roman",serif;
  font-size:clamp(1.85rem,12cqw,4.8rem);
  font-weight:400;
  letter-spacing:-.045em;
  line-height:1.075;
  overflow-wrap:normal;
  word-break:normal;
  hyphens:none;
  margin:clamp(18px,3vw,28px) 0 22px;
}
.hero .hero-title .hero-line,
.hero .hero-title .hero-line em {
  display:block;
  white-space:nowrap;
  overflow-wrap:normal;
  word-break:normal;
  hyphens:none;
}
.hero .hero-title .hero-line-accent { color:#0174ba; }
.hero .hero-title .hero-line-accent em { font-style:italic; }
html[data-theme="dark"] .hero .hero-title .hero-line-accent { color:#8dc9ff; }
/* For older browsers without CSS container query units, prefer fit to overflow. */
@supports not (font-size:1cqw) {
  .hero .hero-title { font-size:clamp(1.55rem,5vw,3.3rem); }
  @media(max-width:800px) { .hero .hero-title { font-size:clamp(1.55rem,8vw,3.3rem); } }
}
.composer-panel .join {
  display:block;
  width:100%;
  max-width:820px;
  margin-inline:auto;
  padding:clamp(22px,4vw,42px);
  border:1px solid #d8e5f0;
  border-top:4px solid #0174ba;
  border-radius:12px;
  color:#153453;
  background:#fff;
  box-shadow:0 16px 48px rgba(0,33,71,.075);
}
.news-composer .composer-panel .join { border-top-color:#d1a400; }
.composer-panel .alumni-form {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  column-gap:20px;
  row-gap:20px;
  width:100%;
  align-items:start;
  min-width:0;
}
.composer-panel .alumni-form > * { min-width:0; }
.composer-panel .form-introduction {
  padding:0 0 19px;
  border-bottom:1px solid #e5edf4;
  margin-bottom:4px;
}
.composer-panel .form-step {
  display:inline-block;
  padding:6px 10px;
  border-radius:999px;
  font-size:10px;
  letter-spacing:.12em;
  font-weight:800;
  color:#175682;
  background:#e8f4fb;
}
.composer-panel .form-introduction h3 {
  margin:11px 0 5px;
  font-size:clamp(28px,3.2vw,35px);
  letter-spacing:-.025em;
  color:#002147;
}
.composer-panel .form-introduction p { color:#52657a; margin:0; font-size:14px; line-height:1.6; }
.composer-panel .alumni-form .field { color:#25405c; font-size:13px; font-weight:650; line-height:1.5; }
.composer-panel .alumni-form .field input,
.composer-panel .alumni-form .field select,
.composer-panel .alumni-form .field textarea {
  display:block;
  width:100%;
  min-width:0;
  margin-top:9px;
  background:#f9fcff;
  color:#17324e;
  border:1px solid #cbdbe9;
  border-radius:8px;
  padding:13px 15px;
  line-height:1.45;
  font-weight:400;
  font-size:15px;
  transition:border-color .15s ease,box-shadow .15s ease,background .15s ease;
}
.composer-panel .alumni-form .field textarea { min-height:192px; resize:vertical; }
.composer-panel .alumni-form .field input:hover,
.composer-panel .alumni-form .field select:hover,
.composer-panel .alumni-form .field textarea:hover { border-color:#89b4d4; }
.composer-panel .alumni-form .field input:focus-visible,
.composer-panel .alumni-form .field select:focus-visible,
.composer-panel .alumni-form .field textarea:focus-visible {
  outline:2px solid #0174ba; outline-offset:1px;
  border-color:#0174ba;
  background:#fff;
  box-shadow:0 0 0 4px rgba(1,116,186,.08);
}
.composer-panel .alumni-form .field textarea::placeholder,
.composer-panel .alumni-form .field input::placeholder { color:#8396a9; }
.composer-panel .required-indicator { color:#b43139; font-weight:800; }
.composer-panel .optional-indicator { font-size:11px; color:#6b8195; font-weight:400; }
.composer-panel .form-field-help {
  display:flex;
  justify-content:space-between;
  align-items:baseline;
  gap:12px;
  margin-top:8px;
  color:#6f8296;
  font-size:12px;
  font-weight:400;
}
.composer-panel .form-field-help output {
  color:#526c83; white-space:nowrap; font-variant-numeric:tabular-nums;
}
.composer-panel .alumni-form .terms-inline {
  padding:15px 18px;
  background:#f4f8fc;
  border:1px solid #e1ebf4;
  border-radius:8px;
}
.composer-panel .alumni-form .terms-inline a { color:#006ca9; text-decoration:underline; text-underline-offset:3px; font-size:13px; }
.composer-panel .alumni-form .terms-inline span { color:#5f7287; font-size:12px; line-height:1.65; }
.composer-panel .alumni-form .consent-field {
  display:flex;
  align-items:flex-start;
  padding:1px 2px;
  gap:12px;
  color:#2e455e;
  font-size:12px;
  font-weight:500;
  line-height:1.65;
}
.composer-panel .alumni-form .consent-field input {
  appearance:auto;
  width:18px;
  min-width:18px;
  height:18px;
  margin:1px 0 0;
  flex-shrink:0;
  accent-color:#0174ba;
}
.composer-panel .alumni-form .form-submit-row {
  display:flex; flex-wrap:wrap; align-items:center; gap:12px 18px;
  padding-top:6px; border-top:1px solid #e4edf5;
}
.composer-panel .alumni-form .form-submit-row .btn {
  min-height:48px;
  border-radius:7px;
  background:#002147;
  color:#fff;
  padding:12px 20px;
  font-size:14px;
  font-weight:700;
  text-align:center;
  box-shadow:0 6px 18px rgba(0,33,71,.12);
}
.composer-panel .alumni-form .form-submit-row .btn:hover:not(:disabled) { background:#00649b; color:#fff; }
.composer-panel .alumni-form .form-submit-row .btn:disabled { opacity:.55; }
.composer-panel .alumni-form .review-caption { font-size:11px; color:#6f8092; }
.composer-panel .alumni-form .form-status { color:#a42c33; font-weight:600; font-size:13px; }
.composer-panel .alumni-form .form-status.success { color:#156c3c; }
html[data-theme="dark"] .composer-panel .join {
  background:#19283c;
  border-color:#385673;
  border-top-color:#68acd8;
  color:#edf4fc;
}
html[data-theme="dark"] .news-composer .composer-panel .join { border-top-color:#ffd04c; }
html[data-theme="dark"] .composer-panel .form-introduction { border-color:#395572; }
html[data-theme="dark"] .composer-panel .form-introduction h3 { color:#eff7ff; }
html[data-theme="dark"] .composer-panel .form-introduction p { color:#b4c7de; }
html[data-theme="dark"] .composer-panel .form-step { background:#284b6c; color:#c9eaff; }
html[data-theme="dark"] .composer-panel .alumni-form .field { color:#deedff; }
html[data-theme="dark"] .composer-panel .alumni-form .field input,
html[data-theme="dark"] .composer-panel .alumni-form .field select,
html[data-theme="dark"] .composer-panel .alumni-form .field textarea {
  color:#f3f8ff; background:#132238; border-color:#54718c;
}
html[data-theme="dark"] .composer-panel .alumni-form .field input::placeholder,
html[data-theme="dark"] .composer-panel .alumni-form .field textarea::placeholder { color:#91a9bf; }
html[data-theme="dark"] .composer-panel .optional-indicator,
html[data-theme="dark"] .composer-panel .form-field-help,
html[data-theme="dark"] .composer-panel .form-field-help output,
html[data-theme="dark"] .composer-panel .alumni-form .review-caption { color:#a7bdd4; }
html[data-theme="dark"] .composer-panel .alumni-form .terms-inline { background:#22384f; border-color:#40607b; }
html[data-theme="dark"] .composer-panel .alumni-form .terms-inline a { color:#abdcff; }
html[data-theme="dark"] .composer-panel .alumni-form .terms-inline span { color:#c4d8ed; }
html[data-theme="dark"] .composer-panel .alumni-form .consent-field { color:#d5e4f4; }
html[data-theme="dark"] .composer-panel .alumni-form .form-submit-row { border-color:#3c5671; }
html[data-theme="dark"] .composer-panel .alumni-form .form-submit-row .btn { background:#ffc600; color:#002147; }
html[data-theme="dark"] .composer-panel .alumni-form .form-submit-row .btn:hover:not(:disabled) { background:#ffdc5c; color:#002147; }
html[data-theme="dark"] .composer-panel .alumni-form .form-status.success { color:#a8ebbc; }
@media(max-width:640px) {
  .composer-panel .alumni-form { grid-template-columns:minmax(0,1fr); gap:17px; }
  .composer-panel .alumni-form > * { grid-column:1; }
  .composer-panel .join { padding:22px 18px; }
  .composer-panel .alumni-form .form-submit-row { align-items:stretch; }
  .composer-panel .alumni-form .form-submit-row .btn { width:100%; }
}
@media(max-width:360px) {
  .composer-panel .join { padding:19px 14px; }
  .composer-panel .alumni-form .field input, .composer-panel .alumni-form .field select, .composer-panel .alumni-form .field textarea { font-size:16px; }
}

/* Nested textarea labels must override legacy white .join label rule. */
.composer-panel .alumni-form .field > label { display:block; color:#25405c; font-size:13px; font-weight:650; }
html[data-theme="dark"] .composer-panel .alumni-form .field > label { color:#deedff; }

/* Keep headings legible without breaking Turkish words into fragments. */
h1, h2, h3 { overflow-wrap:normal; word-break:normal; hyphens:none; }
.sectionhead h2 { font-size:clamp(1.7rem,6.8vw,2.625rem); text-wrap:balance; }
@media(max-width:700px) {
  .composer-prompt h2 { font-size:clamp(1.6rem,6.8vw,2.125rem); }
}


/* Administrator-specified staff passwords. Usable on desktop and narrow screens. */
#staff-create-form .staff-password-option {
 display:flex; align-items:center; gap:9px; font-size:13px; font-weight:500;
 color:#274766; border-radius:6px; padding:6px 0; cursor:pointer;
}
#staff-create-form .staff-password-option input {
 width:18px; height:18px; margin:0; flex-shrink:0; accent-color:#0174ba;
}
html[data-theme="dark"] #staff-create-form .staff-password-option { color:#d9eafa; }
