*{box-sizing:border-box} :root{--ink:#172033;--muted:#687386;--line:#e3e8ef;--surface:#fff;--canvas:#f5f7fb;--blue:#2457c5;--blue-dark:#19449f;--green:#e8f7ee;--red:#fff0ef;--amber:#fff6df} body{margin:0;background:var(--canvas);color:var(--ink);font:15px/1.5 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif} a{color:var(--blue);text-decoration:none}a:hover{text-decoration:underline}.topbar{min-height:66px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,calc((100% - 1160px)/2));gap:20px}.brand{font-weight:750;font-size:17px;color:var(--ink)}.topbar nav{display:flex;gap:22px;align-items:center}.topbar nav a{color:#455168;font-size:14px}.logout-form{display:inline;margin:0}.nav-button{border:0;background:none;padding:0;color:#455168;font:inherit;font-size:14px;cursor:pointer}.container{width:min(1160px,calc(100% - 40px));margin:34px auto 60px}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}.page-heading h1{font-size:clamp(26px,4vw,34px);line-height:1.2;margin:5px 0 8px;letter-spacing:-.6px}.eyebrow{font-size:11px;font-weight:800;letter-spacing:1.4px;color:var(--blue)}.muted{color:var(--muted)}.small{font-size:12px}.button{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid transparent;border-radius:9px;padding:10px 15px;font:inherit;font-weight:650;cursor:pointer;text-decoration:none;white-space:nowrap}.button:hover{text-decoration:none;filter:brightness(.97)}.primary{background:var(--blue);color:#fff}.primary:hover{background:var(--blue-dark)}.secondary{background:#fff;border-color:var(--line);color:var(--ink)}.full{width:100%;margin-top:20px}.small-button{font-size:12px;padding:6px 10px;background:#fff;border-color:var(--line);color:var(--ink)}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:24px}.stat-card,.panel{background:var(--surface);border:1px solid var(--line);border-radius:15px;box-shadow:0 3px 14px rgba(25,45,80,.025)}.stat-card{padding:21px}.stat-card span{display:block;font-size:13px;color:var(--muted);margin-bottom:9px}.stat-card strong{font-size:31px;letter-spacing:-.8px}.panel{padding:22px;margin-bottom:20px}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:14px}.panel-heading h2{font-size:18px;margin:0}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;min-width:680px}th,td{text-align:left;padding:14px 12px;border-bottom:1px solid var(--line);vertical-align:middle}th{font-size:11px;text-transform:uppercase;letter-spacing:.7px;color:var(--muted);font-weight:750}td{font-size:14px}tbody tr:last-child td{border-bottom:0}.status{display:inline-flex;padding:4px 9px;border-radius:999px;font-size:12px;font-weight:700;background:#eef1f6;color:#536074}.status.published{background:var(--green);color:#167044}.status.closed{background:var(--amber);color:#8a5b00}.status.archived{background:#f0edff;color:#5b43a5}.empty-state{text-align:center;padding:40px 20px}.empty-state strong{font-size:18px}.empty-state p{color:var(--muted);margin:6px 0 18px}.notice{background:#edf4ff;border:1px solid #d5e4ff;color:#234276;border-radius:12px;padding:15px 18px;font-size:14px}.alert{padding:13px 16px;border-radius:10px;margin:0 0 18px;border:1px solid var(--line)}.alert.success{background:var(--green);border-color:#c8ebd5;color:#17663e}.alert.error{background:var(--red);border-color:#ffd5d1;color:#8c2e25}.alert ul{margin:7px 0 0;padding-left:22px}.form-panel{padding:26px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.field{display:flex;flex-direction:column;gap:7px}.full-width{grid-column:1/-1}.field label{font-size:13px;font-weight:700}.field input:not([type=checkbox]),.field textarea,.field select,.login-card input{width:100%;border:1px solid #d5dce7;border-radius:9px;background:#fff;padding:11px 12px;color:var(--ink);font:inherit;min-height:44px}.field textarea{resize:vertical}.field input:focus,.field textarea:focus,.field select:focus,.login-card input:focus{outline:3px solid #dce8ff;border-color:#8aa9ee}.help{font-size:12px;color:var(--muted);margin:0}.checkbox-field{justify-content:center}.checkbox-field label{display:flex;gap:10px;align-items:center;font-weight:600}.checkbox-field input{width:17px;height:17px}.form-actions{display:flex;gap:10px;margin-top:25px;padding-top:20px;border-top:1px solid var(--line)}.footer{text-align:center;color:#8a94a5;font-size:12px;padding:22px}.login-page{min-height:100vh;display:grid;place-items:center;padding:22px}.login-card{width:min(440px,100%);background:#fff;border:1px solid var(--line);border-radius:18px;padding:34px;box-shadow:0 16px 60px rgba(27,48,82,.08)}.login-card h1{font-size:29px;margin:10px 0 6px;letter-spacing:-.5px}.login-card form{margin-top:24px}.login-card label{display:block;font-size:13px;font-weight:700;margin:15px 0 7px}.login-card .small{margin:22px 0 0}.login-card .eyebrow{font-size:10px}.login-card .muted{font-size:14px}@media(max-width:760px){.topbar{padding:15px 20px;align-items:flex-start;flex-direction:column;gap:10px}.topbar nav{gap:17px;flex-wrap:wrap}.container{width:calc(100% - 28px);margin:24px auto 40px}.page-heading{align-items:flex-start;flex-direction:column}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.stat-card{padding:16px}.stat-card strong{font-size:26px}.panel{padding:15px}.form-panel{padding:18px}.form-grid{grid-template-columns:1fr;gap:16px}.full-width{grid-column:auto}.login-card{padding:25px}.form-actions{flex-wrap:wrap}}

/* Public event registration module */
.public-container{max-width:1120px}.public-event-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.public-event-card{margin:0;display:flex;flex-direction:column;align-items:flex-start;gap:12px}.public-event-card h2{font-size:21px;line-height:1.3;margin:0}.public-event-card .button{margin-top:auto}.public-card-top{display:flex;align-items:center;justify-content:space-between;width:100%}.public-description{margin:0;white-space:normal}.event-meta{display:grid;gap:11px;margin:4px 0 10px;width:100%}.event-meta>div{display:grid;grid-template-columns:150px minmax(0,1fr);gap:12px}.event-meta dt{font-size:13px;color:var(--muted)}.event-meta dd{margin:0;font-size:14px;font-weight:600}.public-detail-panel{padding:26px}.public-long-description{margin:20px 0;line-height:1.75;white-space:normal}.registration-panel h2{margin:0 0 6px;font-size:22px}.registration-panel>.muted{margin:0 0 22px}.public-registration-form .form-grid{margin-bottom:22px}.privacy-field label{display:flex;flex-direction:row;align-items:flex-start;gap:10px;font-weight:500;line-height:1.6}.privacy-field input{margin-top:4px;flex:0 0 auto;width:17px;height:17px}.registration-success{text-align:center;padding:40px 22px}.success-icon{margin:0 auto 12px;width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:var(--green);color:#167044;font-size:28px;font-weight:800}.registration-success h2{font-size:25px;margin:8px 0}.reference-label{color:var(--muted);margin:24px 0 5px}.registration-reference{display:inline-block;padding:10px 16px;border:1px dashed #a9badc;border-radius:8px;font-size:22px;letter-spacing:1px}.registration-closed h2{margin-top:0}.privacy-notice{line-height:1.75}.privacy-notice h1{font-size:26px}.action-cell{white-space:nowrap}
@media(max-width:760px){.public-event-grid{grid-template-columns:1fr}.event-meta>div{grid-template-columns:1fr;gap:2px}.public-detail-panel{padding:18px}.registration-reference{font-size:18px}}

/* Public event registration module */
.public-container{max-width:1120px}.public-event-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.public-event-card{margin:0;display:flex;flex-direction:column;align-items:flex-start;gap:12px}.public-event-card h2{font-size:21px;line-height:1.3;margin:0}.public-event-card .button{margin-top:auto}.public-card-top{display:flex;align-items:center;justify-content:space-between;width:100%}.public-description{margin:0;white-space:normal}.event-meta{display:grid;gap:11px;margin:4px 0 10px;width:100%}.event-meta>div{display:grid;grid-template-columns:150px minmax(0,1fr);gap:12px}.event-meta dt{font-size:13px;color:var(--muted)}.event-meta dd{margin:0;font-size:14px;font-weight:600}.public-detail-panel{padding:26px}.public-long-description{margin:20px 0;line-height:1.75;white-space:normal}.registration-panel h2{margin:0 0 6px;font-size:22px}.registration-panel>.muted{margin:0 0 22px}.public-registration-form .form-grid{margin-bottom:22px}.privacy-field label{display:flex;flex-direction:row;align-items:flex-start;gap:10px;font-weight:500;line-height:1.6}.privacy-field input{margin-top:4px;flex:0 0 auto;width:17px;height:17px}.registration-success{text-align:center;padding:40px 22px}.success-icon{margin:0 auto 12px;width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:var(--green);color:#167044;font-size:28px;font-weight:800}.registration-success h2{font-size:25px;margin:8px 0}.reference-label{color:var(--muted);margin:24px 0 5px}.registration-reference{display:inline-block;padding:10px 16px;border:1px dashed #a9badc;border-radius:8px;font-size:22px;letter-spacing:1px}.registration-closed h2{margin-top:0}.privacy-notice{line-height:1.75}.privacy-notice h1{font-size:26px}.action-cell{white-space:nowrap}
@media(max-width:760px){.public-event-grid{grid-template-columns:1fr}.event-meta>div{grid-template-columns:1fr;gap:2px}.public-detail-panel{padding:18px}.registration-reference{font-size:18px}}


/* DEÜ YDY institutional visual identity - shared across public/admin pages */
:root{--ink:#152d45;--muted:#65788b;--line:#dce4ec;--surface:#fff;--canvas:#f3f6f9;--blue:#155b8a;--blue-dark:#0f4268;--green:#e8f7ee;--red:#fff0ef;--amber:#fff6df}
body.eys-page{background:#f3f6f9;color:#17324b}
.institution-topline{background:#103e66;color:#fff;font-size:11px;letter-spacing:.55px}
.institution-topline-inner{width:min(1180px,calc(100% - 36px));min-height:32px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;gap:15px}
.institution-topline a{color:#eaf4ff;text-decoration:none;letter-spacing:0}
.institution-header{background:#fff;border-bottom:4px solid #b69a54;box-shadow:0 2px 8px rgba(15,45,75,.05)}
.institution-header-inner{width:min(1180px,calc(100% - 36px));min-height:112px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:24px}
.institution-identity{display:flex;align-items:center;gap:16px;min-width:0;text-decoration:none!important;color:#123f68}
.institution-logo-wrap{width:78px;height:78px;flex:0 0 78px;display:grid;place-items:center}
.institution-logo{display:block;width:100%;height:100%;object-fit:contain}
.institution-logo-fallback{width:68px;height:68px;border:2px solid #123f68;border-radius:50%;display:grid;place-items:center;font-size:19px;font-weight:900;color:#123f68}
.institution-wordmark{display:flex;flex-direction:column;gap:4px;line-height:1.2}
.institution-wordmark strong{font-size:11px;letter-spacing:1.8px;color:#60748a}
.institution-wordmark>span{font-size:clamp(16px,2vw,21px);font-weight:850;letter-spacing:.1px;color:#123f68}
.institution-wordmark small{font-size:10px;letter-spacing:1.5px;color:#a08442;font-weight:800;margin-top:3px}
.institution-nav{display:flex;align-items:center;justify-content:flex-end;gap:17px;flex-wrap:wrap}
.institution-nav>a,.institution-logout-form button{font-size:13px;font-weight:650;color:#2b4a66;text-decoration:none;white-space:nowrap}
.institution-nav>a:hover,.institution-logout-form button:hover{color:#0d649d;text-decoration:underline}
.institution-logout-form{display:inline;margin:0}
.institution-logout-form button{padding:0;border:0;background:transparent;font-family:inherit;cursor:pointer}
.eys-page .container{margin-top:30px;margin-bottom:42px}
.institution-footer{background:#103e66;color:#e7f0f8;margin-top:0}
.institution-footer-inner{width:min(1180px,calc(100% - 36px));margin:0 auto;padding:27px 0 24px;display:grid;grid-template-columns:minmax(190px,.75fr) minmax(0,1.8fr);gap:34px}
.institution-footer-title,.institution-footer-contact{display:flex;flex-direction:column;gap:7px;font-size:12px;line-height:1.6}
.institution-footer-title strong{font-size:14px;color:#fff}
.institution-footer-title span{font-size:13px;font-weight:700;color:#fff}
.institution-footer-title a,.institution-footer-contact a{color:#fff;text-decoration:underline;text-underline-offset:2px}
.institution-footer-contact strong{font-size:13px;color:#e8d8a7;margin-bottom:2px}
.institution-footer-bottom{border-top:1px solid rgba(255,255,255,.17);text-align:center;padding:12px 18px;font-size:11px;color:#c4d4e3}
.institution-login-card{margin:24px auto;max-width:470px}
.verification-card{margin:24px auto;max-width:700px}
.login-card{color:#17324b}
.login-card h1{color:#123f68}
.login-card input{width:100%;border:1px solid #d5dce7;border-radius:9px;background:#fff;padding:11px 12px;color:var(--ink);font:inherit;min-height:44px}
.login-card label{display:block;font-size:13px;font-weight:700;margin:15px 0 7px}
.login-card form{margin-top:18px}
.button.primary{background:#155b8a;color:#fff}
.button.primary:hover{background:#0f4268}
@media(max-width:900px){.institution-header-inner{align-items:flex-start;flex-direction:column;padding:18px 0;gap:15px}.institution-nav{justify-content:flex-start;gap:13px}.institution-footer-inner{grid-template-columns:1fr;gap:20px}}
@media(max-width:560px){.institution-topline-inner{align-items:flex-start;flex-direction:column;justify-content:center;padding:7px 0;gap:3px}.institution-header-inner{width:calc(100% - 28px)}.institution-identity{gap:10px}.institution-logo-wrap{width:57px;height:57px;flex-basis:57px}.institution-logo-fallback{width:52px;height:52px;font-size:15px}.institution-wordmark strong{font-size:9px;letter-spacing:1px}.institution-wordmark>span{font-size:15px}.institution-wordmark small{font-size:8px;letter-spacing:1px}.institution-nav{gap:10px 14px}.institution-nav>a,.institution-logout-form button{font-size:12px}.institution-footer-inner{width:calc(100% - 28px);padding:22px 0}.eys-page .container{width:calc(100% - 28px);margin:22px auto 30px}}
[hidden]{display:none!important}


/* v1.8 — screenshot-matched DEÜ YDY banner/header */
:root{--ink:#152d45;--muted:#65788b;--line:#dce4ec;--surface:#fff;--canvas:#f3f6f9;--blue:#064477;--blue-dark:#03345f}
body.eys-page{background:#f3f6f9;color:#17324b}
.institution-header{background:#063768!important;border-bottom:4px solid #d50000!important;box-shadow:none!important}
.institution-header-inner{width:min(1340px,calc(100% - 40px));min-height:129px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:12px 0}
.institution-identity{display:flex;align-items:center;flex:0 1 405px;min-width:0;text-decoration:none!important}
.institution-banner-logo{display:block;width:100%;max-width:405px;max-height:104px;height:auto;object-fit:contain;object-position:left center}
.institution-system-title{flex:0 1 auto;max-width:300px;padding:3px 0 3px 18px;border-left:1px solid rgba(255,255,255,.42);color:#fff;display:flex;flex-direction:column;gap:3px;line-height:1.2;white-space:normal}.institution-system-title-main{font-size:clamp(22px,1.8vw,30px);font-weight:900;letter-spacing:.2px}.institution-system-title-sub{font-size:clamp(12px,1vw,16px);font-weight:650;opacity:.92}
.institution-nav{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;margin-left:auto}
.institution-nav>a,.institution-logout-form button{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:8px 12px;background:#f8fafc;border:1px solid #d7e0ea;border-radius:4px;color:#10283f!important;font-size:12px;font-weight:750;text-decoration:none!important;white-space:nowrap;line-height:1.2}
.institution-nav>a:hover,.institution-logout-form button:hover{background:#e9f0f8;color:#063768!important;text-decoration:none!important}
.institution-logout-form{display:inline-flex;margin:0}
.institution-logout-form button{font-family:inherit;cursor:pointer}
.institution-footer{background:#063768!important;border-top:4px solid #d50000;margin-top:0;color:#e7f0f8}
.institution-footer-contact strong{color:#fff!important}
.institution-footer-bottom{border-top:1px solid rgba(255,255,255,.2)}
.eys-page .container{margin-top:26px;margin-bottom:38px}
.certificate-institution-head{display:flex;flex-direction:column;gap:8px;width:100%;margin:0 0 18px;padding:12px 14px 10px;background:#063768;border-bottom:4px solid #d50000;text-align:left;color:#fff}
.certificate-brand-row{display:flex;align-items:center;justify-content:space-between;gap:16px}
.certificate-brand-row img{display:block;width:min(390px,68%);max-height:84px;height:auto;object-fit:contain;object-position:left center}
.certificate-header-title{flex:0 0 auto;border-left:1px solid rgba(255,255,255,.45);padding-left:14px;color:#fff;font-size:12px;line-height:1.35;text-align:right}
.certificate-institution-contact{display:flex;flex-wrap:wrap;gap:3px 14px;justify-content:flex-end;color:#e0eaf5;font-size:8px;line-height:1.4}
.certificate-institution-contact span{overflow-wrap:anywhere}
.certificate-frame .certificate-institution-head{align-self:stretch}
@media(max-width:1120px){.institution-header-inner{align-items:flex-start;flex-wrap:wrap;gap:12px}.institution-identity{flex-basis:350px}.institution-banner-logo{max-width:350px}.institution-system-title{max-width:260px}.institution-nav{flex-basis:100%;margin-left:0;justify-content:flex-start}}
@media(max-width:760px){.institution-header-inner{width:calc(100% - 28px);min-height:0;padding:14px 0;align-items:flex-start;flex-direction:column;gap:12px}.institution-identity{flex:0 1 auto;width:min(100%,390px)}.institution-banner-logo{max-width:100%;max-height:88px}.institution-system-title{max-width:none;border-left:0;border-top:1px solid rgba(255,255,255,.4);padding:9px 0 0;gap:2px}.institution-system-title-main{font-size:23px}.institution-system-title-sub{font-size:14px}.institution-nav{width:100%;justify-content:flex-start;gap:7px}.institution-nav>a,.institution-logout-form button{font-size:12px;padding:8px 10px}.institution-footer-inner{width:calc(100% - 28px);padding:22px 0;grid-template-columns:1fr;gap:18px}.certificate-brand-row{align-items:flex-start;flex-direction:column;gap:8px}.certificate-brand-row img{width:min(100%,350px);max-height:78px}.certificate-header-title{border-left:0;border-top:1px solid rgba(255,255,255,.4);padding:7px 0 0;text-align:left}.certificate-institution-contact{justify-content:flex-start;font-size:7px}}
@media print{.certificate-institution-head{print-color-adjust:exact;-webkit-print-color-adjust:exact}.ticket-institution-header{print-color-adjust:exact;-webkit-print-color-adjust:exact}}


/* v1.9 — screenshot-aligned institutional identity and registration anti-bot controls */
.institution-header{background:#063768!important;border-bottom:4px solid #d50000!important;color:#fff}
.institution-header-inner{padding-bottom:10px}
.institution-footer{background:#063768!important;border-top:4px solid #d50000!important;color:#e7f0f8}
.institution-footer-inner{width:min(1340px,calc(100% - 40px));display:flex;flex-direction:column;align-items:center;gap:7px;padding:27px 0 20px;text-align:center}
.institution-footer-title{display:block;color:#fff;font-size:13px;font-weight:800;line-height:1.45}
.institution-footer-contact{align-items:center;gap:5px;color:#d5e2ef;font-size:12px;line-height:1.5}
.institution-footer-contact a{color:#d5e2ef}
.institution-footer-bottom{border-top:0;text-align:center;padding:12px 18px 18px;font-size:11px;color:#91a9c1}
.registration-name-warning{padding:12px 14px;margin:0 0 12px;border-left:4px solid #d50000;border-radius:7px;background:#f0f5fb;color:#17324b;line-height:1.6}
.registration-name-warning strong{color:#063768}
.captcha-field{padding:13px 14px;border:1px solid #dce4ec;border-radius:10px;background:#f8fafc}
.captcha-field label{font-weight:750}
.captcha-field input{max-width:180px}
.captcha-field small{display:block;margin-top:5px;font-size:12px}
.hp-field{position:absolute!important;left:-10000px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important}
@media(max-width:760px){.institution-footer-inner{width:calc(100% - 28px);padding:22px 0 15px}.institution-footer-contact{font-size:11px}.registration-name-warning{font-size:14px}}

/* EYS v2.1: event dashboard counters */
.events-stats-grid{margin-bottom:22px}.events-stats-grid .stat-card{border-top:3px solid #063768}.events-stats-grid .stat-card:nth-child(2){border-top-color:#d50000}.events-stats-grid .stat-card:nth-child(3){border-top-color:#17834b}.events-stats-grid .stat-card:nth-child(4){border-top-color:#b69a54}

/* v2.29 — academic event domain restriction and prominent notice */
.academic-event-warning{border:1px solid #d50000;border-left:4px solid #d50000;background:#fff0ef;color:#8c2e25;font-weight:600}
.academic-event-warning strong{color:#8c2e25}
.email-domain-error{display:block;margin-top:6px;color:#a32020;font-weight:650;line-height:1.45}
.email-domain-error[hidden]{display:none!important}
