:root {
    color-scheme: light;
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;
    --brand-orange: #d66930;
    --brand-orange-dark: #b9501d;
    --brand-orange-soft: #fff2ea;
    --brand-charcoal: #4b4042;
    --brand-charcoal-dark: #332b2d;
    --brand-ink: #2f292a;
    --brand-surface: #f8f5f3;
    color: var(--brand-ink);
    background: var(--brand-surface);
    font-synthesis: none;
}

* { box-sizing: border-box; }
body { margin: 0; min-height: 100vh; background: var(--brand-surface); }
button, input { font: inherit; }

.site-header {
    min-height: 68px;
    padding: .85rem clamp(1rem, 4vw, 3rem);
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    border-bottom: 1px solid #e9e1de;
    box-shadow: 0 .35rem 1.4rem rgb(75 64 66 / 7%);
}

.brand { display: flex; align-items: center; gap: 1rem; color: var(--brand-charcoal); text-decoration: none; font-weight: 750; letter-spacing: -.02em; }
.brand img { width: clamp(165px, 18vw, 235px); height: auto; display: block; }
.brand span { padding-left: 1rem; border-left: 1px solid #ded4d1; color: #6f6264; font-size: .82rem; letter-spacing: .01em; }
.user-menu { display: flex; align-items: center; gap: 1rem; color: #766a6c; font-size: .9rem; }
.user-menu > a { color: var(--brand-charcoal); text-decoration: none; font-weight: 700; }
.user-menu form { margin: 0; }
.container { width: min(1380px, calc(100% - 2.5rem)); margin: 2.25rem auto; }
.app-shell { display: grid; grid-template-columns: 230px minmax(0, 1fr); min-height: calc(100vh - 68px); }
.app-shell.simple-shell { display: block; }
.sidebar { background: #fff; border-right: 1px solid #e1e8f1; padding: 1.25rem .8rem; }
.sidebar nav { position: sticky; top: 1rem; display: flex; flex-direction: column; gap: .25rem; }
.sidebar a { padding: .68rem .8rem; border-radius: .5rem; color: #40516a; text-decoration: none; font-size: .9rem; font-weight: 650; }
.sidebar a:hover { background: var(--brand-orange-soft); color: var(--brand-orange-dark); }
.sidebar span { margin: 1rem .8rem .35rem; color: #8b98a9; font-size: .68rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.card { padding: clamp(1.5rem, 4vw, 2.5rem); background: #fff; border: 1px solid #e7edf5; border-radius: 1rem; box-shadow: 0 .65rem 2rem rgb(18 45 79 / 7%); }
.card h1 { margin: .25rem 0 .65rem; letter-spacing: -.035em; }
.card > p:not(.eyebrow) { color: #607089; }

.eyebrow {
    margin: 0 0 .5rem;
    color: var(--brand-orange);
    font-size: .75rem;
    font-weight: 800;
    letter-spacing: .11em;
    text-transform: uppercase;
}
.eyebrow.light { color: #f4b38f; }

.btn {
    border: 0;
    border-radius: .6rem;
    padding: .78rem 1.1rem;
    cursor: pointer;
    text-decoration: none;
    font-weight: 700;
    transition: transform .15s ease, background .15s ease;
}
.btn:hover { transform: translateY(-1px); }
.btn-primary { background: var(--brand-orange); color: #fff; box-shadow: 0 .45rem 1rem rgb(214 105 48 / 18%); }
.btn-primary:hover { background: var(--brand-orange-dark); }
.btn-ghost { padding: .55rem .8rem; background: #f5eeeb; color: var(--brand-charcoal); }
.btn-block { width: 100%; }

.auth-page { background: #f7f3f1; }
.auth-shell { min-height: 100vh; display: grid; grid-template-columns: minmax(340px, .9fr) minmax(420px, 1.1fr); }
.auth-intro {
    position: relative;
    overflow: hidden;
    padding: clamp(2rem, 6vw, 5rem);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    background:
        radial-gradient(circle at 10% 90%, rgb(214 105 48 / 38%), transparent 38%),
        linear-gradient(145deg, #302729, #554648);
    color: #fff;
}
.auth-intro::after {
    content: "";
    position: absolute;
    width: 360px;
    height: 360px;
    right: -170px;
    top: -120px;
    border: 1px solid rgb(255 255 255 / 15%);
    border-radius: 50%;
    box-shadow: 0 0 0 55px rgb(255 255 255 / 3%), 0 0 0 110px rgb(255 255 255 / 2%);
}
.auth-intro h2 { max-width: 620px; margin: .5rem 0 1rem; font-size: clamp(2rem, 4vw, 3.65rem); line-height: 1.08; letter-spacing: -.045em; }
.auth-intro p:not(.eyebrow) { max-width: 540px; color: #e4d9d5; font-size: 1.06rem; line-height: 1.7; }
.version-label { color: #cdbfbb; font-size: .8rem; letter-spacing: .08em; text-transform: uppercase; }
.auth-form-panel { padding: 2rem; display: grid; place-items: center; }
.login-card { width: min(440px, 100%); padding: 2rem; }
.login-brand {
    width: min(260px, 75%);
    margin-bottom: 2rem;
}
.login-brand img { width: 100%; height: auto; display: block; }
.login-heading h1 { margin: .25rem 0 .6rem; font-size: 2rem; letter-spacing: -.04em; }
.login-heading > p:last-child { margin: 0 0 2rem; color: #66758b; line-height: 1.55; }
.form-group { margin-bottom: 1.15rem; }
.form-group > label { display: block; margin-bottom: .45rem; color: #29374d; font-size: .88rem; font-weight: 700; }
.form-control {
    width: 100%;
    height: 48px;
    padding: 0 .85rem;
    border: 1px solid #cfd9e6;
    border-radius: .6rem;
    outline: none;
    background: #fff;
    color: #162236;
}
.form-control:focus { border-color: var(--brand-orange); box-shadow: 0 0 0 3px rgb(214 105 48 / 13%); }
.password-field { position: relative; }
.password-field .form-control { padding-right: 4.5rem; }
.password-toggle { position: absolute; right: .75rem; top: 50%; transform: translateY(-50%); border: 0; background: transparent; color: var(--brand-orange); cursor: pointer; font-size: .8rem; font-weight: 750; }
.checkbox-row { margin: .25rem 0 1.5rem; display: flex; align-items: center; gap: .55rem; color: #526177; font-size: .9rem; }
.checkbox-row input { width: 1rem; height: 1rem; accent-color: var(--brand-orange); }
.recaptcha-container { margin: -.5rem 0 1.25rem; min-height: 78px; overflow: hidden; }
.field-validation { display: block; margin-top: .35rem; color: #b42318; font-size: .8rem; }
.field-validation:empty { display: none; }
.validation-summary { margin-bottom: 1rem; padding: .8rem 1rem; border-radius: .55rem; background: #fff1f0; color: #a51d16; font-size: .88rem; }
.validation-summary:empty, .validation-summary ul:empty { display: none; }
.validation-summary ul { margin: 0; padding-left: 1.1rem; }
.security-note { margin: 1.4rem 0 0; text-align: center; color: #7a8799; font-size: .78rem; }
.stat-grid { margin-top: 2rem; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1rem; }
.stat-card { padding: 1.15rem; display: flex; flex-direction: column; gap: .35rem; border: 1px solid #e3eaf3; border-radius: .75rem; background: #f8fafc; }
.stat-card strong { font-size: 1.55rem; }
.stat-card span { color: #6d7b8f; font-size: .85rem; }
.stat-card.accent { background: #eaf5ef; border-color: #cce8d7; }
.stat-card.accent strong { color: #157347; }
.empty-state { padding: 4rem 1rem; text-align: center; }
.status-code { color: var(--brand-orange); font-size: 4rem; font-weight: 850; letter-spacing: -.06em; }
.empty-state p { margin-bottom: 2rem; color: #68768a; }
.page-heading { margin-bottom: 1.4rem; display: flex; justify-content: space-between; align-items: center; gap: 1rem; }
.page-heading h1 { margin: .15rem 0 0; font-size: 1.8rem; letter-spacing: -.035em; }
.table-card, .form-card, .action-panel { margin-bottom: 1.25rem; padding: 1.25rem; background: #fff; border: 1px solid #e2e9f2; border-radius: .8rem; box-shadow: 0 .35rem 1rem rgb(20 48 82 / 5%); }
.table-card h2, .form-card h2, .action-panel h2 { margin: 0 0 1rem; font-size: 1.05rem; }
.table-responsive { overflow-x: auto; }
table { width: 100%; border-collapse: collapse; font-size: .88rem; }
th { padding: .75rem; text-align: left; color: #6d7b8e; border-bottom: 1px solid #dfe6ef; font-size: .73rem; letter-spacing: .04em; text-transform: uppercase; }
td { padding: .8rem .75rem; border-bottom: 1px solid #edf1f6; vertical-align: middle; }
td small, .definition-row small, .document-row small { display: block; margin-top: .2rem; color: #8793a4; }
.table-link { color: var(--brand-orange-dark); font-weight: 700; text-decoration: none; }
.empty-row { padding: 2rem; text-align: center; color: #7b8798; }
.badge { display: inline-flex; padding: .28rem .55rem; border-radius: 2rem; background: #e8eef6; color: #52647a; font-size: .72rem; font-weight: 750; }
.badge.approved, .status-50, .status-70 { background: #e6f5eb; color: #157347; }
.badge.rejected, .status-60, .status-80 { background: #fdebea; color: #b42318; }
.status-10, .status-20 { background: var(--brand-orange-soft); color: var(--brand-orange-dark); }
.status-30, .status-40 { background: #fff3d8; color: #946200; }
.filter-bar { margin-bottom: 1rem; display: flex; gap: .65rem; align-items: center; }
.filter-bar .form-control { max-width: 320px; }
.form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.span-2 { grid-column: span 2; }
.textarea { min-height: 100px; padding-top: .7rem; resize: vertical; }
.form-actions { margin-top: 1.25rem; display: flex; justify-content: flex-end; gap: .65rem; }
.alert { margin-bottom: 1rem; padding: .85rem 1rem; border-radius: .6rem; }
.alert.success { background: #e7f6ec; color: #146c43; }
.alert.danger { background: #fdebea; color: #a5211a; }
.btn-small { padding: .4rem .65rem; background: #edf2f7; color: #35465c; font-size: .76rem; }
.btn-success { background: #198754; color: #fff; }
.btn-danger { background: #c9362b; color: #fff; }
.inline-form, .quick-add, .button-row { display: flex; align-items: center; gap: .5rem; }
.row-actions { display: flex; align-items: center; flex-wrap: wrap; gap: .4rem; }
.row-actions form { margin: 0; }
.btn-danger-outline { border: 1px solid #c9362b; background: #fff; color: #a5211a; }
.bulk-actions { margin: 0 0 .75rem; display: flex; align-items: center; justify-content: flex-end; gap: .65rem; }
.bulk-actions [data-selection-count] { margin-right: auto; color: #70656a; font-size: .82rem; font-weight: 700; }
.bulk-actions .btn:disabled { cursor: not-allowed; opacity: .45; }
.selection-cell { width: 42px; text-align: center; }
.selection-cell input { width: 1rem; height: 1rem; accent-color: var(--brand-orange); }
.pagination { margin: 1rem 0; display: flex; justify-content: center; align-items: center; flex-wrap: wrap; gap: .35rem; }
.pagination-link { min-width: 38px; padding: .55rem .7rem; border: 1px solid #ddd4d1; border-radius: .45rem; background: #fff; color: #5f5558; text-align: center; text-decoration: none; font-size: .8rem; font-weight: 750; }
.pagination-link:hover { border-color: var(--brand-orange); color: var(--brand-orange-dark); }
.pagination-link.active { border-color: var(--brand-charcoal); background: var(--brand-charcoal); color: #fff; }
.pagination-link.disabled { pointer-events: none; opacity: .4; }
.inline-form select { padding: .45rem; border: 1px solid #d3dce7; border-radius: .4rem; }
.dashboard-grid { margin-bottom: 1.25rem; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .8rem; }
.dashboard-grid article { padding: 1rem; background: #fff; border: 1px solid #e2e9f2; border-radius: .7rem; display: flex; flex-direction: column; }
.dashboard-grid strong { font-size: 1.55rem; }.dashboard-grid span { color: #748196; font-size: .8rem; }
.definition-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; align-items: start; }
.definition-row, .document-row, .notification-item { padding: .7rem 0; border-bottom: 1px solid #edf1f5; display: flex; justify-content: space-between; align-items: center; gap: .8rem; }
.stack-form { margin-bottom: 1rem; display: grid; gap: .6rem; }
.detail-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; align-items: start; }
.detail-list { display: grid; grid-template-columns: 145px 1fr; gap: .7rem; margin: 0; }
.detail-list dt { color: #7a8799; }.detail-list dd { margin: 0; font-weight: 600; }
.upload-form { margin-top: 1rem; display: grid; gap: .6rem; }
.notification-item p { margin: .35rem 0; color: #647287; }.notification-item.unread { border-left: 3px solid var(--brand-orange); padding-left: .8rem; }
.simple-page { max-width: 920px; margin: 0 auto; }
.simple-heading { margin-bottom: 1.5rem; display: flex; align-items: flex-end; justify-content: space-between; gap: 1rem; }
.simple-heading h1 { margin: .2rem 0 .45rem; font-size: clamp(1.8rem, 4vw, 2.5rem); letter-spacing: -.045em; }
.simple-heading p:not(.eyebrow) { margin: 0; color: #69788c; }
.simple-form-card { padding: clamp(1.3rem, 4vw, 2.3rem); }
.form-section-title { margin: .25rem 0 1rem; padding-bottom: .65rem; border-bottom: 1px solid #e4eaf2; color: #23344c; font-weight: 800; }
.form-section-title:not(:first-of-type) { margin-top: 1.8rem; }
.textarea.short { min-height: 76px; }
.submit-button { min-width: 180px; }
.success-card { max-width: 580px; margin: 7vh auto; padding: 3rem; text-align: center; background: #fff; border: 1px solid #dfe8f1; border-radius: 1rem; box-shadow: 0 1rem 3rem rgb(20 49 84 / 8%); }
.success-icon { width: 62px; height: 62px; margin: 0 auto 1.4rem; display: grid; place-items: center; border-radius: 50%; background: #e5f6eb; color: #16834d; font-size: 1.8rem; font-weight: 900; }
.success-card h1 { margin: .3rem 0 .7rem; letter-spacing: -.04em; }
.success-card > p:not(.eyebrow) { color: #65758a; }
.success-meta { width: fit-content; margin: 1.5rem auto; padding: .7rem 1.2rem; display: flex; gap: .7rem; border-radius: .6rem; background: #f2f6fa; }
.record-count { min-width: 92px; padding: .65rem 1rem; text-align: center; border-radius: .7rem; background: var(--brand-orange-soft); color: var(--brand-orange-dark); }
.record-count strong, .record-count span { display: block; }.record-count strong { font-size: 1.45rem; }.record-count span { font-size: .75rem; }
.heading-actions { display: flex; align-items: center; gap: .7rem; }
.simple-filter .form-control:first-child { flex: 1; max-width: none; }
.pre-line { white-space: pre-line; line-height: 1.6; }
.privacy-notice { margin-bottom: 1rem; padding: 1rem; display: flex; flex-direction: column; gap: .3rem; border: 1px solid #cfe5d8; border-radius: .65rem; background: #eef8f2; color: #245b3b; }
.privacy-notice span { font-size: .84rem; line-height: 1.5; }
.document-upload-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .8rem; }
.file-field { padding: .9rem; border: 1px dashed #c8d4e2; border-radius: .65rem; background: #fafcff; }
.file-field label { min-height: 38px; margin-bottom: .5rem; display: block; color: #304158; font-size: .82rem; font-weight: 750; }
.file-field input[type=file] { width: 100%; color: #5f6f83; font-size: .8rem; }
.file-field input[type=file]::file-selector-button { margin-right: .6rem; padding: .48rem .65rem; border: 0; border-radius: .4rem; background: var(--brand-orange-soft); color: var(--brand-orange-dark); cursor: pointer; font-weight: 700; }
.secure-document-row { padding: .85rem 0; display: flex; align-items: center; justify-content: space-between; gap: 1rem; border-bottom: 1px solid #e9eef4; }
.secure-document-row:last-child { border-bottom: 0; }
.secure-document-row small { display: block; margin-top: .25rem; color: #7a8798; }
.personnel-section-header { margin-top: 1.8rem; display: flex; align-items: flex-end; justify-content: space-between; gap: 1rem; }
.personnel-section-header .form-section-title { margin: 0 0 .3rem; border: 0; padding: 0; }
.personnel-section-header p { margin: 0; color: #718095; font-size: .86rem; }
.btn-add-person { position: relative; padding: .65rem .9rem; display: inline-flex; align-items: center; gap: .65rem; overflow: visible; border: 0; background: linear-gradient(135deg,#df7135,#bd4e1d); color: #fff; box-shadow: 0 .55rem 1.25rem rgb(190 78 29 / 28%); animation: add-person-pulse 2.4s ease-in-out infinite; }
.btn-add-person::after { content: ""; position: absolute; inset: -5px; z-index: -1; border: 2px solid rgb(214 105 48 / 35%); border-radius: .62rem; animation: add-person-ring 2.4s ease-out infinite; }
.btn-add-person:hover { color: #fff; transform: translateY(-2px); box-shadow: 0 .75rem 1.5rem rgb(190 78 29 / 35%); }
.btn-add-person > span:last-child { display: flex; align-items: flex-start; flex-direction: column; text-align: left; line-height: 1.15; }
.btn-add-person strong { color: #fff; font-size: .8rem; }
.btn-add-person small { margin-top: .2rem; color: rgb(255 255 255 / 82%); font-size: .61rem; font-weight: 600; }
.add-person-icon { width: 30px; height: 30px; flex: 0 0 30px; display: grid; place-items: center; border-radius: 50%; background: rgb(255 255 255 / 20%); color: #fff; font-size: 1.35rem; font-weight: 800; }
@keyframes add-person-pulse { 0%,100% { box-shadow: 0 .55rem 1.25rem rgb(190 78 29 / 24%); } 50% { box-shadow: 0 .7rem 1.6rem rgb(190 78 29 / 42%); } }
@keyframes add-person-ring { 0%,45% { opacity: 0; transform: scale(.98); } 65% { opacity: 1; } 100% { opacity: 0; transform: scale(1.08); } }
.btn-add-person:disabled { cursor: not-allowed; opacity: .55; transform: none; }
.btn-add-person:disabled::after { display: none; }
.personnel-card { margin: 1rem 0; padding: 1.2rem; border: 1px solid #dbe5f0; border-radius: .85rem; background: linear-gradient(180deg,#fff,#fbfdff); box-shadow: 0 .4rem 1.2rem rgb(23 52 87 / 5%); }
.personnel-card-header { margin: -.2rem 0 1rem; padding-bottom: .85rem; display: flex; align-items: center; gap: .7rem; border-bottom: 1px solid #e7edf4; }
.personnel-card-header > div:nth-child(2) { display: flex; flex-direction: column; }
.personnel-card-header span { color: #8491a3; font-size: .75rem; }
.person-index { width: 34px; height: 34px; display: grid; place-items: center; border-radius: .55rem; background: var(--brand-charcoal); color: #fff; font-size: .8rem; font-weight: 850; }
.remove-person { margin-left: auto; width: 32px; height: 32px; border: 0; border-radius: 50%; background: #fff0ef; color: #b52c23; cursor: pointer; font-size: 1.25rem; }
.person-name-field { max-width: 520px; margin-bottom: 1rem; }
.person-name-field label { display: block; margin-bottom: .4rem; font-size: .82rem; font-weight: 750; }
.document-upload-grid.compact { grid-template-columns: repeat(3,minmax(0,1fr)); }
.document-upload-grid.compact .file-field { position: relative; min-width: 0; }
.document-upload-grid.compact .file-field label { padding-right: 1.4rem; }
.file-number { position: absolute; right: .65rem; top: .55rem; color: #9aabc0; font-size: .68rem; font-weight: 850; }
.section-heading-row { margin-bottom: 1rem; display: flex; justify-content: space-between; align-items: center; gap: 1rem; }
.section-heading-row h2 { margin-bottom: .25rem; }.section-heading-row p { margin: 0; color: #7a8798; font-size: .8rem; }
.secure-badge { padding: .35rem .65rem; border-radius: 2rem; background: #e8f6ed; color: #167447; font-size: .7rem; font-weight: 800; }
.admin-person-card { margin-bottom: 1rem; border: 1px solid #dfe7f0; border-radius: .75rem; overflow: hidden; }
.admin-person-header { padding: .8rem 1rem; display: flex; align-items: center; gap: .7rem; background: #f5f8fc; }
.admin-person-header > div:last-child { display: flex; flex-direction: column; }
.admin-person-header span { color: #7a899c; font-size: .75rem; }
.person-avatar { width: 36px; height: 36px; display: grid; place-items: center; border-radius: 50%; background: var(--brand-charcoal); color: #fff; font-size: .72rem; font-weight: 850; }
.admin-person-card .secure-document-list { padding: 0 1rem; }
.document-center-heading { align-items: center; }
.document-heading-actions, .document-actions { display: flex; align-items: center; gap: .45rem; }
.document-description { min-width: 0; }
.document-description small { overflow-wrap: anywhere; }
.icon-button {
    width: 36px;
    height: 36px;
    padding: 0;
    flex: 0 0 auto;
    display: inline-grid;
    place-items: center;
    border: 1px solid #ddd4d1;
    border-radius: .55rem;
    background: #fff;
    color: var(--brand-charcoal);
    cursor: pointer;
    text-decoration: none;
    transition: color .15s ease, border-color .15s ease, background .15s ease, transform .15s ease;
}
.icon-button:hover { transform: translateY(-1px); border-color: #dba98e; background: var(--brand-orange-soft); color: var(--brand-orange-dark); }
.icon-button:focus-visible { outline: 3px solid rgb(214 105 48 / 20%); outline-offset: 2px; }
.icon-button:disabled { cursor: wait; opacity: .55; transform: none; }
.icon-button svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.icon-button-accent { border-color: var(--brand-orange); background: var(--brand-orange); color: #fff; }
.icon-button-accent:hover { background: var(--brand-orange-dark); color: #fff; }
.whatsapp-button { color: #168a4b; }
.share-feedback { display: none; margin: -.2rem 0 .9rem; padding: .7rem .9rem; border-radius: .55rem; background: #eaf7ef; color: #17633c; font-size: .8rem; }
.share-feedback.visible { display: block; }
.share-feedback.error { background: #fff0ef; color: #a5211a; }
.document-preview-modal { position: fixed; inset: 0; z-index: 1000; padding: clamp(.5rem,2vw,1.5rem); display: grid; place-items: center; }
.document-preview-modal[hidden] { display: none; }
.document-preview-backdrop { position: absolute; inset: 0; background: rgb(20 26 35 / 78%); backdrop-filter: blur(3px); }
.document-preview-dialog { position: relative; width: min(1180px,100%); height: 99%; display: flex; flex-direction: column; overflow: hidden; border-radius: .9rem; background: #eef2f6; box-shadow: 0 1.5rem 5rem rgb(0 0 0 / 35%); }
.document-preview-header { min-height: 68px; padding: .75rem 1rem; display: flex; align-items: center; justify-content: space-between; gap: 1rem; background: #fff; border-bottom: 1px solid #dfe5ec; }
.document-preview-heading { min-width: 0; display: flex; flex-direction: column; }
.document-preview-heading strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.document-preview-heading span { margin-top: .2rem; overflow: hidden; color: #78869a; font-size: .75rem; text-overflow: ellipsis; white-space: nowrap; }
.document-preview-actions { display: flex; align-items: center; gap: .55rem; }
.document-preview-count { color: #718095; font-size: .78rem; white-space: nowrap; }
.document-preview-print { display: inline-flex; align-items: center; gap: .45rem; }
.document-preview-print svg, .document-preview-nav svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.9; stroke-linecap: round; stroke-linejoin: round; }
.document-preview-close { width: 38px; height: 38px; border: 0; border-radius: .55rem; background: #f1f3f6; color: #344054; cursor: pointer; font-size: 1.6rem; line-height: 1; }
.document-preview-body { position: relative; min-height: 0; flex: 1; padding: .75rem 4.8rem; display: grid; place-items: center; }
.document-preview-body iframe { width: 100%; height: 100%; border: 0; border-radius: .35rem; background: #fff; }
.document-preview-loading { position: absolute; z-index: 2; padding: .75rem 1rem; border-radius: .55rem; background: #fff; color: #5f6f83; box-shadow: 0 .5rem 1.5rem rgb(20 49 84 / 12%); }
.document-preview-loading.error { color: #a5211a; }
.document-preview-nav { position: absolute; top: 50%; padding: .7rem .55rem; display: flex; align-items: center; flex-direction: column; gap: .25rem; transform: translateY(-50%); border: 1px solid #d5dde7; border-radius: .65rem; background: rgb(255 255 255 / 94%); color: #344054; cursor: pointer; font-size: .68rem; font-weight: 750; box-shadow: 0 .4rem 1.2rem rgb(20 49 84 / 10%); }
.document-preview-nav:hover { color: var(--brand-orange-dark); border-color: #dba98e; }
.document-preview-nav:disabled { opacity: .35; cursor: default; }
.document-preview-nav.previous { left: .65rem; }
.document-preview-nav.next { right: .65rem; }
body.document-preview-open { overflow: hidden; }
.settings-heading p:last-child { margin: .45rem 0 0; color: #75696b; }
.settings-tabs { margin-bottom: 1rem; padding: .35rem; display: inline-flex; gap: .3rem; border: 1px solid #e4dbd8; border-radius: .7rem; background: #fff; }
.settings-tabs a { padding: .7rem 1rem; border-radius: .48rem; color: #76696b; text-decoration: none; font-size: .84rem; font-weight: 750; }
.settings-tabs a:hover { background: #faf5f2; color: var(--brand-orange-dark); }
.settings-tabs a.active { background: var(--brand-charcoal); color: #fff; box-shadow: inset 0 -3px 0 var(--brand-orange); }
.settings-panel { padding: clamp(1.2rem,3vw,2rem); border: 1px solid #e4dbd8; border-radius: .9rem; background: #fff; box-shadow: 0 .4rem 1.5rem rgb(75 64 66 / 6%); }
.settings-panel-header { margin-bottom: 1.5rem; padding-bottom: 1.15rem; display: flex; align-items: center; justify-content: space-between; gap: 1rem; border-bottom: 1px solid #eee6e3; }
.settings-panel-header h2 { margin: 0 0 .35rem; font-size: 1.15rem; }
.settings-panel-header p { margin: 0; color: #7b6f71; font-size: .82rem; }
.smtp-settings-panel { max-width: 1050px; }
.smtp-section-title { margin: 1.7rem 0 1rem; display: flex; align-items: center; gap: .75rem; }
.smtp-section-title:first-of-type { margin-top: 0; }
.smtp-section-title > span { width: 34px; height: 34px; display: grid; place-items: center; border-radius: .5rem; background: var(--brand-charcoal); color: #fff; box-shadow: inset 0 -3px 0 var(--brand-orange); font-size: .7rem; font-weight: 850; }
.smtp-section-title > div { display: flex; flex-direction: column; }
.smtp-section-title strong { font-size: .9rem; }
.smtp-section-title small { margin-top: .15rem; color: #8a7d7f; font-size: .7rem; }
.smtp-grid { padding: 1.15rem; border: 1px solid #ebe3e0; border-radius: .7rem; background: #fcfaf9; }
.switch-row { min-height: 44px; display: flex !important; align-items: center; gap: .65rem; margin: 0 !important; cursor: pointer; }
.switch-row input { width: 2.6rem; height: 1.35rem; accent-color: var(--brand-orange); }
.notification-addresses { min-height: 125px; padding: .8rem; line-height: 1.7; }
.input-help { display: block; margin-top: .45rem; color: #8a7e80; font-size: .72rem; }
.settings-actions { margin-top: 1.3rem; display: flex; justify-content: flex-end; }
.logs-panel { max-width: none; }
.log-filter-grid { margin-bottom: 1rem; display: grid; grid-template-columns: minmax(220px,2fr) repeat(4,minmax(135px,1fr)) auto auto; gap: .6rem; }
.log-table-wrap { border: 1px solid #eee6e3; border-radius: .65rem; }
.log-table { min-width: 1120px; }
.log-table th { white-space: nowrap; }
.log-table td { vertical-align: top; }
.log-table small, .log-date small { margin-top: .25rem; display: block; color: #8a7d7f; font-size: .68rem; }
.log-date { white-space: nowrap; }
.log-status { padding: .28rem .48rem; display: inline-block; border-radius: .4rem; background: #f0f2f5; color: #536174; font-size: .7rem; font-weight: 800; white-space: nowrap; }
.log-status.success { background: #e8f6ed; color: #167447; }
.log-ip { color: #68483f; font-family: ui-monospace,SFMono-Regular,Consolas,monospace; font-size: .76rem; }
.log-description { min-width: 230px; line-height: 1.45; }
.log-agent { max-width: 260px; overflow: hidden; color: #7b6f71; font-size: .7rem; text-overflow: ellipsis; white-space: nowrap; }
.pagination-summary { padding: .55rem .8rem; color: #718095; font-size: .78rem; }
.smtp-test-form { margin-top: 1.2rem; padding: 1rem 1.1rem; display: flex; align-items: center; justify-content: space-between; gap: 1rem; border: 1px solid #ead8ce; border-radius: .7rem; background: var(--brand-orange-soft); }
.smtp-test-form > div { display: flex; flex-direction: column; }
.smtp-test-form strong { font-size: .82rem; }
.smtp-test-form span { margin-top: .2rem; color: #806d68; font-size: .72rem; }
.modal-open { overflow: hidden; }
.validation-modal { position: fixed; inset: 0; z-index: 1000; display: grid; place-items: center; padding: 1rem; }
.validation-modal[hidden] { display: none; }
.validation-modal-backdrop { position: absolute; inset: 0; background: rgb(36 29 31 / 62%); backdrop-filter: blur(3px); }
.validation-modal-dialog { position: relative; width: min(560px,100%); max-height: min(720px,calc(100vh - 2rem)); overflow-y: auto; padding: 1.7rem; border: 1px solid #eadbd5; border-radius: 1rem; outline: none; background: #fff; box-shadow: 0 1.5rem 4rem rgb(24 17 19 / 28%); }
.validation-modal-close { position: absolute; right: 1rem; top: 1rem; width: 34px; height: 34px; display: grid; place-items: center; border: 0; border-radius: 50%; background: #f7efec; color: #8e3a28; cursor: pointer; font-size: 1.25rem; }
.validation-modal-icon { width: 46px; height: 46px; margin-bottom: 1rem; display: grid; place-items: center; border-radius: .7rem; background: var(--brand-orange-soft); color: var(--brand-orange-dark); font-size: 1.35rem; font-weight: 900; box-shadow: inset 0 -3px 0 rgb(214 105 48 / 20%); }
.validation-modal-dialog h2 { margin: .15rem 2.5rem .45rem 0; font-size: 1.35rem; letter-spacing: -.025em; }
.validation-modal-lead { margin: 0; color: #75696b; font-size: .86rem; line-height: 1.55; }
.validation-issue-list { margin: 1.25rem 0; padding: .35rem 0; display: grid; gap: .15rem; list-style: none; border-top: 1px solid #eee5e2; border-bottom: 1px solid #eee5e2; }
.validation-issue-list li { position: relative; padding: .7rem .6rem .7rem 1.75rem; color: #4e4244; font-size: .82rem; line-height: 1.4; }
.validation-issue-list li::before { content: "!"; position: absolute; left: .45rem; top: .67rem; width: 18px; height: 18px; display: grid; place-items: center; border-radius: 50%; background: #fff0eb; color: #b94e21; font-size: .67rem; font-weight: 900; }
.validation-modal-actions { display: flex; justify-content: flex-end; }
.personnel-question-dialog { width: min(520px,100%); text-align: center; }
.personnel-question-icon { width: 58px; height: 58px; margin: 0 auto 1rem; display: grid; place-items: center; border-radius: 50%; background: linear-gradient(135deg,#df7135,#bd4e1d); color: #fff; box-shadow: 0 .7rem 1.5rem rgb(190 78 29 / 25%); font-size: 2rem; font-weight: 800; }
.personnel-question-dialog h2 { margin: .35rem 2rem .55rem; }
.personnel-question-actions { margin-top: 1.4rem; display: flex; justify-content: center; gap: .65rem; }
.delete-modal-dialog { width: min(480px,100%); }
.delete-modal-icon { background: #fdebea; color: #a5211a; }
.delete-modal-actions { margin-top: 1.35rem; display: flex; justify-content: flex-end; gap: .6rem; }
.kvkk-modal { position: fixed; inset: 0; z-index: 1050; display: grid; place-items: center; padding: 1rem; }
.kvkk-modal[hidden] { display: none; }
.kvkk-modal-backdrop { position: absolute; inset: 0; background: rgb(36 29 31 / 64%); backdrop-filter: blur(5px); }
.kvkk-modal-dialog { position: relative; width: min(760px,100%); max-height: min(860px,calc(100vh - 2rem)); display: flex; flex-direction: column; overflow: hidden; border: 1px solid #e5d9d5; border-radius: 1rem; outline: none; background: #fff; box-shadow: 0 1.8rem 5rem rgb(25 18 20 / 32%); }
.kvkk-modal-header { position: relative; padding: 1.35rem 1.5rem; display: flex; align-items: flex-start; gap: 1rem; border-bottom: 1px solid #e9dfdc; background: linear-gradient(180deg,#fff,#fcfaf9); }
.kvkk-modal-header .validation-modal-close { right: 1rem; top: 1rem; }
.kvkk-modal-header > div:nth-child(2) { padding-right: 2.5rem; }
.kvkk-modal-header h2 { margin: .15rem 0 .35rem; font-size: 1.35rem; letter-spacing: -.025em; }
.kvkk-modal-header p:last-child { margin: 0; color: #786c6e; font-size: .8rem; line-height: 1.5; }
.kvkk-shield { width: 46px; height: 46px; flex: 0 0 auto; display: grid; place-items: center; border-radius: .75rem .75rem 1.05rem 1.05rem; background: var(--brand-charcoal); color: #fff; box-shadow: inset 0 -4px 0 var(--brand-orange); font-size: .72rem; font-weight: 900; }
.kvkk-modal-content { padding: 1.25rem 1.5rem; overflow-y: auto; background: #fff; }
.kvkk-modal-content section { padding: .85rem 0; border-bottom: 1px solid #eee6e3; }
.kvkk-modal-content section:first-child { padding-top: 0; }
.kvkk-modal-content section:last-child { padding-bottom: 0; border-bottom: 0; }
.kvkk-modal-content h3 { margin: 0 0 .35rem; color: var(--brand-charcoal); font-size: .85rem; }
.kvkk-modal-content p { margin: 0; color: #695d5f; font-size: .78rem; line-height: 1.65; }
.kvkk-modal-content p + p { margin-top: .5rem; }
.kvkk-modal-content a { color: var(--brand-orange-dark); font-weight: 700; }
.kvkk-legal-text { white-space: pre-wrap; color: #5f5355; font-family: inherit; font-size: .78rem; line-height: 1.7; }
.kvkk-modal-footer { padding: 1rem 1.5rem 1.2rem; border-top: 1px solid #e8ddda; background: #faf7f5; }
.kvkk-acknowledgement { padding: .8rem .9rem; display: flex; align-items: flex-start; gap: .7rem; border: 1px solid #ead7cd; border-radius: .65rem; background: #fff7f2; color: #4e4143; cursor: pointer; font-size: .78rem; font-weight: 650; line-height: 1.45; }
.kvkk-acknowledgement input { width: 1.1rem; height: 1.1rem; margin: .05rem 0 0; flex: 0 0 auto; accent-color: var(--brand-orange); }
.kvkk-modal-actions { margin-top: .9rem; display: flex; justify-content: flex-end; gap: .6rem; }
.kvkk-modal-actions .btn:disabled { cursor: not-allowed; opacity: .45; transform: none; box-shadow: none; }
.submission-active { overflow: hidden; }
.submission-overlay { position: fixed; inset: 0; z-index: 1100; display: grid; place-items: center; padding: 1rem; }
.submission-overlay[hidden] { display: none; }
.submission-backdrop { position: absolute; inset: 0; background: rgb(48 40 42 / 52%); backdrop-filter: blur(7px); }
.submission-card { position: relative; width: min(440px,100%); padding: 2.2rem 2rem; overflow: hidden; border: 1px solid #eadbd5; border-radius: 1rem; background: #fff; text-align: center; box-shadow: 0 1.8rem 5rem rgb(26 19 21 / 32%); }
.submission-card::before { content: ""; position: absolute; inset: 0 0 auto; height: 4px; background: var(--brand-orange); }
.submission-card h2 { margin: .15rem 0 .55rem; color: var(--brand-charcoal-dark); font-size: 1.35rem; letter-spacing: -.025em; }
.submission-card > p:not(.eyebrow) { margin: 0 auto; max-width: 350px; color: #766a6c; font-size: .84rem; line-height: 1.55; }
.submission-card > small { display: block; margin-top: .8rem; color: #9a8d8f; font-size: .7rem; }
.mail-animation { position: relative; width: 128px; height: 82px; margin: 0 auto 1rem; }
.mail-envelope { position: absolute; left: 34px; top: 17px; width: 64px; height: 48px; color: var(--brand-orange); animation: mail-fly 1.65s ease-in-out infinite; }
.mail-envelope svg { width: 100%; height: 100%; overflow: visible; fill: #fff7f2; stroke: currentColor; stroke-width: 3; stroke-linecap: round; stroke-linejoin: round; filter: drop-shadow(0 7px 8px rgb(214 105 48 / 20%)); }
.mail-flight-line { position: absolute; left: 4px; height: 3px; border-radius: 3px; background: #e7b49a; transform-origin: right center; animation: mail-line 1.65s ease-in-out infinite; }
.mail-flight-line.line-one { top: 31px; width: 32px; }
.mail-flight-line.line-two { top: 48px; width: 22px; animation-delay: .12s; }
.mail-success-dot { position: absolute; right: 7px; top: 6px; width: 14px; height: 14px; border-radius: 50%; background: #4eaa72; box-shadow: 0 0 0 5px rgb(78 170 114 / 13%); animation: mail-dot 1.65s ease-in-out infinite; }
.submission-progress { height: 5px; margin: 1.35rem auto 0; overflow: hidden; border-radius: 5px; background: #f0e8e5; }
.submission-progress span { display: block; width: 42%; height: 100%; border-radius: inherit; background: linear-gradient(90deg,var(--brand-orange),#eea075); animation: submission-progress 1.35s ease-in-out infinite; }
@keyframes mail-fly {
    0%,100% { transform: translate(0,3px) rotate(-2deg); }
    45% { transform: translate(8px,-5px) rotate(3deg); }
}
@keyframes mail-line {
    0%,100% { opacity: .35; transform: scaleX(.55); }
    45% { opacity: 1; transform: scaleX(1); }
}
@keyframes mail-dot {
    0%,35% { opacity: .25; transform: scale(.7); }
    55%,100% { opacity: 1; transform: scale(1); }
}
@keyframes submission-progress {
    0% { transform: translateX(-110%); }
    100% { transform: translateX(260%); }
}
@media (prefers-reduced-motion: reduce) {
    .mail-envelope, .mail-flight-line, .mail-success-dot, .submission-progress span { animation-duration: 3s; }
}

/* Kurumsal çalışma talebi */
.request-page { color: var(--brand-ink); }
.request-hero { position: relative; min-height: 190px; padding: 2.35rem 2.6rem; display: flex; align-items: center; justify-content: space-between; gap: 2rem; overflow: hidden; border-radius: 1rem 1rem 0 0; background: linear-gradient(118deg,#332b2d 0%,#4b4042 62%,#6b4a40 100%); color: #fff; }
.request-hero::before { content: ""; position: absolute; width: 420px; height: 420px; right: -130px; top: -220px; border: 1px solid rgb(255 255 255 / 12%); border-radius: 50%; box-shadow: 0 0 0 55px rgb(255 255 255 / 3%),0 0 0 110px rgb(255 255 255 / 2%); }
.request-hero-copy { position: relative; z-index: 1; }
.request-kicker { margin-bottom: .75rem; display: flex; align-items: center; gap: .55rem; color: #f2b18e; font-size: .7rem; font-weight: 850; letter-spacing: .13em; text-transform: uppercase; }
.request-kicker span { width: 24px; height: 2px; background: var(--brand-orange); }
.request-hero h1 { margin: 0 0 .55rem; font-size: clamp(2rem,4vw,3rem); letter-spacing: -.045em; }
.request-hero p { max-width: 670px; margin: 0; color: #e6dcd8; line-height: 1.6; }
.request-reference { position: relative; z-index: 1; min-width: 145px; padding: .85rem 1rem; border: 1px solid rgb(255 255 255 / 16%); border-radius: .7rem; background: rgb(255 255 255 / 8%); backdrop-filter: blur(4px); }
.request-reference span,.request-reference strong { display: block; }.request-reference span { margin-bottom: .25rem; color: #e1c7ba; font-size: .68rem; text-transform: uppercase; }.request-reference strong { font-size: .95rem; }
.process-strip { margin-bottom: 1.35rem; padding: 1.15rem 2rem; display: flex; align-items: center; border: 1px solid #dce5ef; border-top: 0; border-radius: 0 0 1rem 1rem; background: #fff; box-shadow: 0 .5rem 1.6rem rgb(22 52 88 / 5%); }
.process-step { display: flex; align-items: center; gap: .7rem; white-space: nowrap; }
.process-step > span { width: 34px; height: 34px; display: grid; place-items: center; border-radius: 50%; background: var(--brand-orange-soft); color: var(--brand-orange-dark); font-size: .7rem; font-weight: 900; }
.process-step > div { display: flex; flex-direction: column; }.process-step strong { font-size: .8rem; }.process-step small { margin-top: .12rem; color: #8a97a8; font-size: .68rem; }
.process-connector { height: 1px; flex: 1; min-width: 25px; margin: 0 1.1rem; background: #dce5ef; }
.request-layout { display: grid; grid-template-columns: minmax(0,1fr) 280px; gap: 1.25rem; align-items: start; }
.request-main { min-width: 0; }
.enterprise-section { margin-bottom: 1rem; overflow: hidden; border: 1px solid #dce5ef; border-radius: .85rem; background: #fff; box-shadow: 0 .3rem 1rem rgb(25 54 88 / 4%); }
.enterprise-section-header { min-height: 78px; padding: 1rem 1.25rem; display: flex; align-items: center; gap: .85rem; border-bottom: 1px solid #e5ebf2; background: linear-gradient(180deg,#fff,#fbfcfe); }
.enterprise-section-header .section-number { width: 38px; height: 38px; display: grid; place-items: center; flex: 0 0 auto; border-radius: .55rem; background: var(--brand-charcoal); color: #fff; font-size: .72rem; font-weight: 900; box-shadow: inset 0 -3px 0 var(--brand-orange); }
.enterprise-section-header > div:nth-child(2) { min-width: 0; }
.enterprise-section-header h2 { margin: 0 0 .22rem; font-size: 1rem; letter-spacing: -.015em; }
.enterprise-section-header p { margin: 0; color: #7b899b; font-size: .76rem; }
.required-label { margin-left: auto; padding: .28rem .52rem; border-radius: 2rem; background: var(--brand-orange-soft); color: var(--brand-orange-dark); font-size: .62rem; font-weight: 850; letter-spacing: .04em; text-transform: uppercase; }
.enterprise-section-body { padding: 1.35rem; }
.enterprise-grid { gap: .85rem 1rem; }
.enterprise-grid .form-group { margin: 0; }
.enterprise-grid .form-group > label { margin-bottom: .38rem; font-size: .76rem; }
.enterprise-grid .form-control { height: 44px; border-color: #d5dfea; background: #fcfdff; }
.enterprise-grid .textarea { height: auto; }.work-textarea { min-height: 118px; }
.date-field .form-control { color: #405168; font-weight: 600; }
.personnel-enterprise-section .enterprise-section-header .btn { margin-left: auto; }
.personnel-body { background: #f7f9fc; }
.personnel-enterprise-section .personnel-card { margin: 0 0 1rem; padding: 0; overflow: hidden; border-color: #d8e2ed; background: #fff; box-shadow: none; }
.personnel-enterprise-section .personnel-card:last-of-type { margin-bottom: 0; }
.personnel-enterprise-section .personnel-card-header { margin: 0; padding: .85rem 1rem; background: #f2f6fa; }
.document-completion { margin-left: auto; padding-right: .3rem; display: flex; flex-direction: column; align-items: flex-end; }.document-completion span { color: var(--brand-orange-dark); font-size: .72rem; font-weight: 850; }.document-completion small { color: #8b98a8; font-size: .62rem; }
.personnel-enterprise-section .remove-person { margin-left: .35rem; }
.personnel-enterprise-section .person-name-field { max-width: none; margin: 0; padding: 1rem 1rem .2rem; }
.enterprise-documents { padding: .8rem 1rem 1rem; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .55rem; }
.enterprise-documents .file-field { min-height: 126px; padding: .75rem; display: flex; flex-direction: column; border-style: solid; background: #fbfcfe; }
.enterprise-documents .file-field label { min-height: 34px; margin: 0; color: #293a50; font-size: .73rem; line-height: 1.35; }
.enterprise-documents .file-field > small { margin: .25rem 0 .65rem; color: #94a0b0; font-size: .62rem; }
.enterprise-documents .file-field input { margin-top: auto; }
.enterprise-documents .file-field input[type=file]::file-selector-button { display: block; width: 100%; margin: 0 0 .35rem; }
.enterprise-documents .file-field.has-selected-file,
.enterprise-documents .optional-file-field.has-selected-file { border-color: #87caa5 !important; background: #eaf8f0 !important; box-shadow: inset 0 0 0 1px rgb(31 139 82 / 8%); }
.enterprise-documents .file-field.has-selected-file .file-number { background: #238551; color: #fff; }
.optional-file-field { border-style: dashed !important; background: #fffaf6 !important; }
.optional-label { width: fit-content; margin: 0 0 .45rem; padding: .18rem .4rem; border-radius: 2rem; background: var(--brand-orange-soft); color: var(--brand-orange-dark); font-size: .58rem; font-weight: 850; letter-spacing: .03em; text-transform: uppercase; }
.request-sidebar { position: sticky; top: 1rem; display: grid; gap: .8rem; }
.sidebar-panel { padding: 1.2rem; border: 1px solid #dce5ef; border-radius: .8rem; background: #fff; box-shadow: 0 .3rem 1rem rgb(25 54 88 / 4%); }
.sidebar-panel-icon { width: 38px; height: 38px; margin-bottom: .85rem; display: grid; place-items: center; border-radius: .55rem; background: var(--brand-orange-soft); color: var(--brand-orange-dark); }
.sidebar-panel h3 { margin: 0 0 .5rem; font-size: .9rem; }.sidebar-panel > p { margin: 0 0 .9rem; color: #78869a; font-size: .75rem; line-height: 1.55; }
.security-panel ul { margin: 0; padding: 0; display: grid; gap: .55rem; list-style: none; }
.security-panel li { display: flex; gap: .5rem; color: #44556b; font-size: .73rem; }.security-panel li span { color: #16814e; font-weight: 900; }
.rules-panel dl { margin: 0; }.rules-panel dl > div { padding: .65rem 0; display: flex; justify-content: space-between; gap: .5rem; border-bottom: 1px solid #edf1f5; }.rules-panel dl > div:last-child { border: 0; }.rules-panel dt { color: #8390a1; font-size: .68rem; }.rules-panel dd { margin: 0; color: #314157; font-size: .7rem; font-weight: 750; text-align: right; }
.support-note { padding: .9rem 1rem; display: flex; flex-direction: column; gap: .25rem; border-radius: .7rem; background: var(--brand-orange-soft); color: var(--brand-charcoal); }.support-note strong { font-size: .75rem; }.support-note span { color: #806d68; font-size: .68rem; line-height: 1.45; }
.request-submit-bar { padding: 1rem 1.2rem; display: flex; align-items: center; justify-content: space-between; gap: 1rem; border: 1px solid #d8e2ec; border-radius: .8rem; background: #fff; }
.submit-assurance { display: flex; align-items: center; gap: .65rem; }.submit-assurance > span { width: 32px; height: 32px; display: grid; place-items: center; border-radius: 50%; background: #e5f5eb; color: #16804c; font-weight: 900; }.submit-assurance > div { display: flex; flex-direction: column; }.submit-assurance strong { font-size: .77rem; }.submit-assurance small { margin-top: .12rem; color: #8490a1; font-size: .66rem; }
.enterprise-submit { min-width: 230px; display: flex; justify-content: center; gap: .7rem; box-shadow: 0 .45rem 1rem rgb(214 105 48 / 22%); }

@media (max-width: 1120px) {
    .request-layout { grid-template-columns: 1fr; }
    .request-sidebar { position: static; grid-template-columns: repeat(2,minmax(0,1fr)); }
    .support-note { display: none; }
    .enterprise-documents { grid-template-columns: repeat(3,minmax(0,1fr)); }
}

@media (max-width: 820px) {
    .log-filter-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .site-header { align-items: flex-start; flex-direction: column; }
    .brand span { display: none; }
    .user-menu { width: 100%; justify-content: space-between; }
    .app-shell { grid-template-columns: 1fr; }
    .sidebar { border-right: 0; border-bottom: 1px solid #e1e8f1; overflow-x: auto; }
    .sidebar nav { position: static; flex-direction: row; min-width: max-content; }
    .sidebar span { display: none; }
    .auth-shell { grid-template-columns: 1fr; }
    .auth-intro { min-height: 260px; padding: 2rem; }
    .auth-intro h2 { font-size: 2.2rem; }
    .version-label { display: none; }
    .auth-form-panel { padding: 1rem; }
    .login-card { padding: 1.25rem .5rem; }
    .stat-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .dashboard-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .definition-grid, .detail-grid { grid-template-columns: 1fr; }
    .request-hero { padding: 1.7rem; }.request-reference { display: none; }
    .process-strip { padding: 1rem; overflow-x: auto; }.process-step small { display: none; }
    .enterprise-documents { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .request-sidebar { grid-template-columns: 1fr; }
    .request-submit-bar { align-items: stretch; flex-direction: column; }.enterprise-submit { width: 100%; }
}

@media (max-width: 480px) {
    .log-filter-grid { grid-template-columns: 1fr; }
    .document-preview-modal { padding: 0; }
    .document-preview-dialog { height: 100vh; border-radius: 0; }
    .document-preview-header { align-items: flex-start; }
    .document-preview-count { display: none; }
    .document-preview-print { padding: .6rem; font-size: 0; }
    .document-preview-body { padding: .5rem 2.8rem; }
    .document-preview-nav { padding: .65rem .35rem; }
    .document-preview-nav span { display: none; }
    .document-preview-nav.previous { left: .3rem; }
    .document-preview-nav.next { right: .3rem; }
    .kvkk-modal { padding: .5rem; }
    .kvkk-modal-dialog { max-height: calc(100vh - 1rem); }
    .kvkk-modal-header { padding: 1rem; }
    .kvkk-shield { display: none; }
    .kvkk-modal-content { padding: 1rem; }
    .kvkk-modal-footer { padding: .85rem 1rem 1rem; }
    .kvkk-modal-actions { align-items: stretch; flex-direction: column-reverse; }
    .kvkk-modal-actions .btn { width: 100%; }
    .settings-tabs { width: 100%; }
    .settings-tabs a { flex: 1; text-align: center; }
    .settings-panel-header, .smtp-test-form { align-items: stretch; flex-direction: column; }
    .secure-document-row { align-items: flex-start; flex-direction: column; }
    .document-actions { width: 100%; justify-content: flex-end; }
    .document-center-heading { align-items: flex-start; }
    .document-heading-actions { flex-direction: column; align-items: flex-end; }
    .auth-intro { min-height: 220px; }
    .auth-intro h2 { font-size: 1.8rem; }
    .auth-intro p:not(.eyebrow) { display: none; }
    .user-menu > span { display: none; }
    .form-grid { grid-template-columns: 1fr; }
    .document-upload-grid { grid-template-columns: 1fr; }
    .document-upload-grid.compact { grid-template-columns: 1fr; }
    .personnel-section-header { align-items: stretch; flex-direction: column; }
    .span-2 { grid-column: span 1; }
    .filter-bar { align-items: stretch; flex-direction: column; }
    .enterprise-section-header { align-items: flex-start; flex-wrap: wrap; }
    .enterprise-section-header .required-label,.personnel-enterprise-section .enterprise-section-header .btn { margin-left: 46px; }
    .enterprise-documents { grid-template-columns: 1fr; }
    .submit-assurance { display: none; }
}
