.kavim-tibo-welcome-dialog.k-dialog,
.kavim-tibo-welcome-dialog .k-dialog {
    width: min(820px, calc(100vw - 24px));
    max-width: calc(100vw - 24px);
    max-height: calc(100dvh - 48px);
    border-radius: 8px;
}

.kavim-tibo-welcome-dialog .k-dialog-content {
    min-height: 0;
    padding: 0;
    overflow-y: auto;
    overscroll-behavior: contain;
}

.kavim-tibo-welcome {
    width: 100%;
    min-width: 0;
    background: #fff;
    color: #283b50;
    text-align: start;
    line-height: 1.7;
    letter-spacing: 0;
    overflow-wrap: anywhere;
}

.kavim-tibo-welcome * { box-sizing: border-box; }
.kavim-tibo-welcome h2,
.kavim-tibo-welcome h3,
.kavim-tibo-welcome p { margin: 0; }
.kavim-tibo-welcome p + p { margin-top: 8px; }
.kavim-tibo-welcome-hero { display: grid; grid-template-columns: minmax(0, 1fr) 152px; align-items: center; gap: 24px; padding: 28px 30px; color: #fff; background: #214e75; border-bottom: 3px solid #a58be2; }
.kavim-tibo-welcome-brand { display: block; margin-bottom: 6px; color: #e0d5ff; font-size: 13px; }
.kavim-tibo-welcome-hero h2 { margin-bottom: 10px; font-size: 26px; font-weight: 700; line-height: 1.3; color: #fff; }
.kavim-tibo-welcome-hero p { font-size: 15px; }
.kavim-tibo-welcome-hero img { width: 152px; height: 152px; object-fit: contain; }
.kavim-tibo-welcome-content { padding: 24px 30px; font-size: 15px; }
.kavim-tibo-welcome-content section + section { margin-top: 22px; padding-top: 20px; border-top: 1px solid #e5eaf0; }
.kavim-tibo-welcome h3 { margin-bottom: 9px; color: #244c74; font-size: 18px; line-height: 1.4; }
.kavim-tibo-welcome dl { margin: 12px 0 0; }
.kavim-tibo-welcome dl > div { display: grid; grid-template-columns: minmax(140px, 190px) minmax(0, 1fr); gap: 8px 18px; padding: 9px 0; }
.kavim-tibo-welcome dt { color: #6344a5; font-weight: 600; }
.kavim-tibo-welcome dd { min-width: 0; margin: 0; }
.kavim-tibo-welcome ul { margin: 8px 0 0; padding-inline-start: 22px; }
.kavim-tibo-welcome li + li { margin-top: 6px; }
.kavim-tibo-welcome-tip { border-inline-start: 3px solid #a58be2; padding-inline-start: 12px; color: #36445a; }
.kavim-tibo-welcome-contact a { color: #235d97; text-decoration: underline; text-underline-offset: 3px; }
.kavim-tibo-welcome-contact dl > div { grid-template-columns: minmax(180px, 1fr) minmax(0, 1fr); }
.kavim-tibo-welcome-links { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 22px; }
.kavim-tibo-welcome-links a { padding: 7px 12px; border: 1px solid #d6c9f2; border-radius: 6px; color: #5b3c9c; text-decoration: none; font-size: 14px; background: #f7f3ff; }
.kavim-tibo-welcome-links a:hover { border-color: #8c6bc9; background: #eee6fc; }
.kavim-tibo-welcome a:focus-visible { outline: 2px solid #7755b7; outline-offset: 3px; }
.kavim-tibo-welcome-signature { padding-top: 20px; color: #586c7f; }
.kavim-tibo-welcome-read-error { margin: 16px 24px !important; padding: 12px; border: 1px solid #e0b14d; border-radius: 6px; background: #fff8e8; color: #78531b; }

@media (max-width: 560px) {
    .kavim-tibo-welcome-dialog.k-dialog,
    .kavim-tibo-welcome-dialog .k-dialog { max-height: calc(100dvh - 24px); }
    .kavim-tibo-welcome-hero { grid-template-columns: minmax(0, 1fr) 88px; gap: 12px; padding: 22px 18px; }
    .kavim-tibo-welcome-hero h2 { font-size: 23px; }
    .kavim-tibo-welcome-hero img { width: 88px; height: 108px; }
    .kavim-tibo-welcome-content { padding: 20px 18px; }
    .kavim-tibo-welcome dl > div,
    .kavim-tibo-welcome-contact dl > div { grid-template-columns: minmax(0, 1fr); gap: 2px; }
}
