﻿/* â”€â”€â”€ Internal Page Components â”€â”€â”€ */
.kmk-card {
    background: var(--color-paper-elevated);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-lg);
    box-shadow: var(--shadow-soft);
    transition: all .3s var(--ease-out-expo);
}

.kmk-card:hover {
    box-shadow: var(--shadow-elevated);
    border-color: rgba(30, 58, 138, 0.15);
}

.kmk-card.bg-subtle {
    background: var(--color-paper);
}

.empty-state {
    text-align: center;
    padding: var(--space-2xl) var(--space-xl);
    color: var(--color-ink-muted);
}

.empty-state-icon {
    font-size: 3rem;
    color: var(--color-border);
    margin-bottom: var(--space-md);
}

.page-header-icon {
    width: 48px;
    height: 48px;
    border-radius: var(--radius-md);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    color: #fff;
    box-shadow: var(--shadow-soft), var(--shadow-primary-glow);
}

.page-header-icon-primary {
    background: linear-gradient(135deg, var(--color-primary), var(--color-primary-deep));
}

.page-header-icon-success {
    background: linear-gradient(135deg, #10B981, #059669);
}

.page-header-icon-dark {
    background: linear-gradient(135deg, var(--color-ink), var(--color-ink-soft));
}

.page-header-icon-warning {
    background: linear-gradient(135deg, #d97706, #b45309);
}

.page-header-icon-danger {
    background: linear-gradient(135deg, #991b1b, #7f1d1d);
}

/* â”€â”€â”€ Utility Layout â”€â”€â”€ */
.utility-page {
    padding-block: clamp(2.75rem, 5vw, 4rem);
}

.utility-page-header {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
    margin-bottom: 1.75rem;
}

.utility-page-copy {
    max-width: 58ch;
}

.utility-page-title {
    font-size: clamp(1.6rem, 2.4vw, 2rem);
    font-weight: 650;
    margin-bottom: 0.25rem;
}

.utility-page-subtitle {
    font-size: 0.92rem;
    color: var(--color-ink-muted);
    margin-bottom: 0;
}

.utility-panel,
.card.utility-panel {
    border: 1px solid rgba(226, 232, 240, 0.9);
    border-radius: 20px;
    background: rgba(255, 255, 255, 0.92);
    box-shadow: 0 16px 40px rgba(15, 23, 42, 0.06);
    overflow: hidden;
}

.utility-panel .card-header,
.utility-panel-header {
    padding: 1.5rem 1.5rem 0;
    background: transparent;
    border-bottom: 0;
}

.utility-panel .card-body,
.utility-panel-body {
    padding: 1.5rem;
}

.utility-panel-title {
    font-size: 1rem;
    font-weight: 650;
    margin-bottom: 0;
}

.utility-section-intro {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1rem;
}

.utility-section-copy {
    color: var(--color-ink-muted);
    font-size: 0.92rem;
    margin-bottom: 0;
}

.utility-separator {
    margin-block: 1.5rem;
    border-color: rgba(226, 232, 240, 0.9);
    opacity: 1;
}

/* â”€â”€â”€ Utility Forms â”€â”€â”€ */
.utility-form {
    display: grid;
    gap: 1rem;
}

.field-stack {
    display: grid;
    gap: 0.45rem;
}

.field-stack-lg {
    gap: 0.65rem;
}

.form-label {
    margin-bottom: 0;
    font-size: 0.84rem;
    font-weight: 600;
    color: var(--color-ink-soft);
    letter-spacing: 0.01em;
}

.form-text,
.form-note {
    font-size: 0.82rem;
    color: var(--color-ink-muted);
}

.form-control,
.form-select {
    min-height: 46px;
    border: 1px solid rgba(203, 213, 225, 0.9);
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.95);
    color: var(--color-ink);
    padding: 0.72rem 0.95rem;
    box-shadow: none;
    transition: border-color .22s ease, box-shadow .22s ease, background-color .22s ease;
}

.form-control::placeholder {
    color: var(--color-ink-muted);
    opacity: 0.75;
}

.form-control:focus,
.form-select:focus {
    border-color: rgba(30, 58, 138, 0.35);
    box-shadow: 0 0 0 4px rgba(30, 58, 138, 0.1);
    background: #fff;
}

.form-control-sm,
.form-select-sm {
    min-height: 40px;
    border-radius: 12px;
    padding: 0.52rem 0.8rem;
    font-size: 0.9rem;
}

.form-control-lg,
.form-select-lg {
    min-height: 54px;
    border-radius: 16px;
    padding: 0.9rem 1rem;
}

textarea.form-control {
    min-height: 110px;
    resize: vertical;
}

.input-group {
    align-items: stretch;
}

.input-group > .form-control,
.input-group > .form-select {
    position: relative;
    z-index: 1;
}

.input-group-text {
    border: 1px solid rgba(203, 213, 225, 0.9);
    border-radius: 14px;
    background: var(--color-primary-soft);
    color: var(--color-primary);
    font-weight: 600;
    padding-inline: 0.95rem;
}

.input-group > .input-group-text + .form-control,
.input-group > .input-group-text + .form-select {
    border-left: 0;
    padding-left: 0.3rem;
}

.input-group > .form-control.border-start-0,
.input-group > .form-select.border-start-0 {
    border-left: 0;
}

.input-group .input-group-text.border-end-0 {
    border-right: 0;
}

.input-group:focus-within .input-group-text {
    border-color: rgba(30, 58, 138, 0.35);
    box-shadow: 0 0 0 4px rgba(30, 58, 138, 0.1);
}

.input-group:focus-within .form-control,
.input-group:focus-within .form-select {
    box-shadow: none;
}

.input-group .password-toggle-btn {
    cursor: pointer;
}

.form-check {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    margin: 0;
    padding: 0.9rem 1rem;
    border: 1px solid rgba(226, 232, 240, 0.9);
    border-radius: 14px;
    background: rgba(248, 250, 252, 0.78);
}

.form-check-input {
    margin-top: 0.2rem;
    border-color: rgba(148, 163, 184, 0.8);
}

.form-check-input:checked {
    background-color: var(--color-primary);
    border-color: var(--color-primary);
}

.form-check-label {
    color: var(--color-ink-soft);
}

.utility-inline-form {
    display: flex;
    align-items: end;
    gap: 0.75rem;
    flex-wrap: wrap;
}

/* â”€â”€â”€ Utility Tables & Lists â”€â”€â”€ */
.utility-table-wrap {
    border: 1px solid rgba(226, 232, 240, 0.9);
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.96);
    overflow: hidden;
}

.utility-table {
    margin-bottom: 0;
}

.utility-table thead th {
    padding: 0.9rem 1rem;
    border-bottom: 1px solid rgba(226, 232, 240, 0.95);
    background: rgba(248, 250, 252, 0.9);
    color: var(--color-ink-muted);
    font-size: 0.76rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    white-space: nowrap;
}

.utility-table tbody td {
    padding: 0.95rem 1rem;
    border-bottom-color: rgba(226, 232, 240, 0.8);
    color: var(--color-ink-soft);
}

.utility-table tbody tr:last-child td {
    border-bottom: 0;
}

.utility-table tbody tr:hover {
    background: rgba(30, 58, 138, 0.03);
}

.utility-table .table-active,
.utility-table tbody tr.table-active > * {
    background: rgba(30, 58, 138, 0.08);
    color: var(--color-ink);
    box-shadow: none;
}

.utility-list {
    border: 1px solid rgba(226, 232, 240, 0.9);
    border-radius: 18px;
    overflow: hidden;
    background: rgba(255, 255, 255, 0.96);
}

.utility-list .list-group-item {
    padding: 1rem 1.1rem;
    border-color: rgba(226, 232, 240, 0.85);
    color: var(--color-ink-soft);
}

.utility-list .list-group-item:last-child {
    border-bottom: 0;
}

.utility-list .list-group-item:hover {
    background: rgba(248, 250, 252, 0.8);
}

.utility-badge {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    padding: 0.38rem 0.75rem;
    border-radius: 999px;
    font-size: 0.76rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    background: var(--color-primary-soft);
    color: var(--color-primary);
}

.utility-badge-subtle {
    background: rgba(15, 23, 42, 0.06);
    color: var(--color-ink-soft);
}

.utility-badge-success {
    background: rgba(16, 185, 129, 0.12);
    color: #047857;
}

.utility-badge-warning {
    background: rgba(217, 119, 6, 0.12);
    color: #b45309;
}

.utility-badge-danger {
    background: rgba(220, 38, 38, 0.12);
    color: #b91c1c;
}

.aidat-hero-card {
    height: 100%;
    display: grid;
    gap: 1rem;
    padding: 1.35rem 1.45rem;
    border: 1px solid rgba(226, 232, 240, 0.9);
    border-radius: 22px;
    background:
        radial-gradient(circle at top right, rgba(30, 58, 138, 0.12), transparent 48%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(248, 250, 252, 0.96));
    box-shadow: 0 20px 48px rgba(15, 23, 42, 0.07);
}

.aidat-hero-title {
    font-size: 1.08rem;
    font-weight: 700;
    margin-bottom: 0;
    color: var(--color-ink);
}

.aidat-hero-copy {
    color: var(--color-ink-soft);
    line-height: 1.7;
}

.aidat-hero-metrics {
    display: grid;
    gap: 0.85rem;
}

.aidat-hero-metrics article {
    display: grid;
    gap: 0.2rem;
    padding: 0.9rem 1rem;
    border: 1px solid rgba(226, 232, 240, 0.9);
    border-radius: 16px;
    background: rgba(255, 255, 255, 0.78);
}

.aidat-hero-metrics strong {
    font-size: 0.95rem;
    color: var(--color-ink);
}

.aidat-hero-metrics span {
    font-size: 0.83rem;
    color: var(--color-ink-muted);
}

.aidat-form-stats,
.aidat-summary-grid {
    display: grid;
    gap: 0.85rem;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.aidat-form-stat,
.aidat-summary-card {
    display: grid;
    gap: 0.2rem;
    padding: 1rem;
    border: 1px solid rgba(226, 232, 240, 0.9);
    border-radius: 18px;
    background: rgba(248, 250, 252, 0.78);
}

.aidat-form-stat-label,
.aidat-summary-label,
.aidat-guidance-label {
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--color-ink-muted);
}

.aidat-form-stat strong,
.aidat-summary-value {
    font-size: 1.1rem;
    color: var(--color-ink);
}

.aidat-summary-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.aidat-summary-meta {
    font-size: 0.82rem;
    color: var(--color-ink-muted);
}

.aidat-inline-note {
    font-size: 0.8rem;
    color: var(--color-ink-muted);
}

.aidat-row-list {
    display: grid;
    gap: 0.85rem;
}

.aidat-row-card {
    padding: 0.95rem;
    border: 1px solid rgba(226, 232, 240, 0.95);
    border-radius: 18px;
    background: rgba(248, 250, 252, 0.82);
}

.aidat-row-card-top {
    display: flex;
    align-items: center;
    gap: 0.7rem;
    margin-bottom: 0.8rem;
}

.aidat-row-index {
    width: 2rem;
    height: 2rem;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 0.88rem;
    font-weight: 700;
    color: var(--color-primary);
    background: rgba(30, 58, 138, 0.1);
}

.aidat-row-caption {
    font-size: 0.85rem;
    font-weight: 600;
    color: var(--color-ink-soft);
}

.aidat-quick-actions,
.aidat-result-note {
    display: flex;
    gap: 0.65rem;
    flex-wrap: wrap;
}

.aidat-quick-actions .btn {
    flex: 0 0 auto;
}

.aidat-guidance-grid {
    display: grid;
    gap: 0.85rem;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.aidat-guidance-card {
    display: grid;
    gap: 0.35rem;
    padding: 1rem;
    border: 1px solid rgba(226, 232, 240, 0.9);
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.82);
    color: var(--color-ink-soft);
    font-size: 0.84rem;
}

.aidat-guidance-card strong {
    color: var(--color-ink);
    font-size: 0.92rem;
}

.aidat-results {
    display: grid;
    gap: 1rem;
}

.aidat-result-formula {
    margin-bottom: 0;
}

.aidat-unit-name {
    font-weight: 600;
    color: var(--color-ink);
}

.aidat-share {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 5.25rem;
    padding: 0.28rem 0.65rem;
    border-radius: 999px;
    background: rgba(30, 58, 138, 0.08);
    color: var(--color-primary);
    font-size: 0.82rem;
    font-weight: 700;
}

.aidat-amount {
    color: var(--color-ink);
    font-weight: 700;
}

.aidat-result-note {
    justify-content: space-between;
    padding: 0.95rem 1rem 0;
    color: var(--color-ink-muted);
    font-size: 0.84rem;
    align-items: center;
}

.aidat-empty-state {
    gap: 1rem;
}

.aidat-empty-checklist {
    display: grid;
    gap: 0.65rem;
    width: min(100%, 28rem);
}

.aidat-empty-checklist div {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    padding: 0.8rem 0.95rem;
    border: 1px solid rgba(226, 232, 240, 0.9);
    border-radius: 16px;
    background: rgba(255, 255, 255, 0.8);
    color: var(--color-ink-soft);
    text-align: left;
}

.aidat-empty-checklist i {
    color: #047857;
}

.aidat-empty-note {
    width: min(100%, 34rem);
    text-align: left;
}

@media (min-width: 992px) {
    .aidat-results-panel {
        position: sticky;
        top: 96px;
    }
}

@media (max-width: 991.98px) {
    .aidat-page {
        padding-top: 2rem;
    }

    .aidat-hero-card {
        padding: 1.1rem 1.15rem;
        gap: 0.85rem;
    }

    .aidat-hero-metrics {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .aidat-hero-metrics article {
        padding: 0.8rem 0.85rem;
    }

    .aidat-quick-actions {
        flex-wrap: nowrap;
        overflow-x: auto;
        padding-bottom: 0.2rem;
        margin-inline: -0.15rem;
        padding-inline: 0.15rem;
        scroll-snap-type: x proximity;
        -webkit-overflow-scrolling: touch;
    }

    .aidat-quick-actions .btn {
        scroll-snap-align: start;
        white-space: nowrap;
    }

    .aidat-quick-actions::-webkit-scrollbar {
        display: none;
    }

    .aidat-form-stats,
    .aidat-guidance-grid,
    .aidat-summary-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 575.98px) {
    .aidat-page .utility-page-header {
        gap: 0.8rem;
        margin-bottom: 0;
    }

    .aidat-page .page-header-icon {
        width: 42px;
        height: 42px;
        font-size: 1.25rem;
    }

    .aidat-page .utility-page-title {
        font-size: 1.35rem;
    }

    .aidat-page .utility-page-subtitle,
    .aidat-hero-copy,
    .aidat-inline-note,
    .aidat-guidance-card,
    .aidat-result-note {
        font-size: 0.8rem;
    }

    .aidat-page .utility-panel .card-body,
    .aidat-page .utility-panel .card-header {
        padding-left: 1rem;
        padding-right: 1rem;
    }

    .aidat-hero-card {
        border-radius: 18px;
    }

    .aidat-hero-metrics {
        grid-template-columns: 1fr;
    }

    .aidat-form-stat,
    .aidat-summary-card,
    .aidat-guidance-card {
        padding: 0.85rem;
        border-radius: 16px;
    }

    .aidat-form-stats,
    .aidat-guidance-grid,
    .aidat-summary-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .aidat-row-card {
        padding: 0.85rem;
    }

    .aidat-row-card-top {
        gap: 0.55rem;
    }

    .aidat-row-index {
        width: 1.8rem;
        height: 1.8rem;
        font-size: 0.82rem;
    }

    .aidat-row-card .btn {
        min-height: 2.4rem;
    }

    .aidat-results .utility-table-wrap {
        border: 0;
        background: transparent;
    }

    .aidat-results .utility-table {
        display: block;
    }

    .aidat-results .utility-table thead {
        display: none;
    }

    .aidat-results .utility-table tbody,
    .aidat-results .utility-table tfoot {
        display: grid;
        gap: 0.75rem;
    }

    .aidat-results .utility-table tbody tr,
    .aidat-results .utility-table tfoot tr {
        display: grid;
        gap: 0.65rem;
        padding: 0.9rem;
        border: 1px solid rgba(226, 232, 240, 0.9);
        border-radius: 16px;
        background: rgba(255, 255, 255, 0.94);
    }

    .aidat-results .utility-table tbody td,
    .aidat-results .utility-table tfoot th {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 0.9rem;
        padding: 0;
        border: 0;
        text-align: right !important;
        font-size: 0.9rem;
    }

    .aidat-results .utility-table tbody td::before {
        content: attr(data-label);
        font-size: 0.73rem;
        font-weight: 700;
        letter-spacing: 0.04em;
        text-transform: uppercase;
        color: var(--color-ink-muted);
        text-align: left;
    }

    .aidat-results .utility-table tfoot tr {
        background: rgba(30, 58, 138, 0.06);
    }

    .aidat-results .utility-table tfoot th::before {
        color: var(--color-ink-muted);
        font-size: 0.73rem;
        font-weight: 700;
        letter-spacing: 0.04em;
        text-transform: uppercase;
    }

    .aidat-results .utility-table tfoot th:nth-child(1)::before {
        content: "Satir";
    }

    .aidat-results .utility-table tfoot th:nth-child(2)::before {
        content: "Arsa payÄ±";
    }

    .aidat-results .utility-table tfoot th:nth-child(3)::before {
        content: "Pay orani";
    }

    .aidat-results .utility-table tfoot th:nth-child(4)::before {
        content: "Aidat";
    }

    .aidat-share {
        min-width: auto;
    }

    .aidat-result-note {
        padding-inline: 0;
        align-items: flex-start;
    }

    .aidat-empty-checklist {
        width: 100%;
    }

    .aidat-empty-checklist div {
        padding: 0.75rem 0.85rem;
    }
}

/* â”€â”€â”€ Utility States â”€â”€â”€ */
@media (max-width: 399.98px) {
    .aidat-page {
        padding-top: 1.6rem;
    }

    .aidat-quick-actions .btn,
    .aidat-row-card .btn {
        font-size: 0.78rem;
    }

    .aidat-results .utility-table tbody tr,
    .aidat-results .utility-table tfoot tr {
        padding: 0.8rem;
    }

    .aidat-results .utility-table tbody td,
    .aidat-results .utility-table tfoot th {
        font-size: 0.84rem;
    }
}

.alert {
    padding: 0.95rem 1rem;
    border: 1px solid rgba(226, 232, 240, 0.9);
    border-radius: 16px;
    background: rgba(255, 255, 255, 0.92);
    color: var(--color-ink-soft);
    box-shadow: none;
}

.alert a {
    font-weight: 600;
}

.alert-info {
    background: rgba(30, 58, 138, 0.08);
    border-color: rgba(30, 58, 138, 0.14);
    color: #1e3a8a;
}

.alert-warning {
    background: rgba(217, 119, 6, 0.1);
    border-color: rgba(217, 119, 6, 0.14);
    color: #92400e;
}

.alert-danger {
    background: rgba(220, 38, 38, 0.08);
    border-color: rgba(220, 38, 38, 0.14);
    color: #991b1b;
}

.alert-success {
    background: rgba(16, 185, 129, 0.09);
    border-color: rgba(16, 185, 129, 0.14);
    color: #047857;
}

/* Hesap / giriÅŸ HTMX uyarÄ±larÄ±: satÄ±r iÃ§i yerine yÃ¼zen bildirim (viewport tam ortasÄ±) */
.kmk-toast-stack {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 1085;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    justify-content: center;
    gap: 0.65rem;
    width: min(32rem, calc(100vw - 1.5rem));
    max-height: min(85vh, 28rem);
    overflow-y: auto;
    pointer-events: none;
    padding: 0;
    margin: 0;
}

.kmk-toast {
    pointer-events: auto;
    opacity: 0;
    transform: translateY(-0.65rem) scale(0.98);
    transition:
        opacity 0.22s ease,
        transform 0.22s ease;
}

.kmk-toast--visible {
    opacity: 1;
    transform: translateY(0) scale(1);
}

/* Toast: opak zemin (rgba ile sÃ¼zÃ¼len form alanlarÄ± yazÄ±yÄ± boÄŸmasÄ±n) */
.kmk-toast .alert {
    margin-bottom: 0;
    box-shadow:
        0 4px 24px rgba(15, 23, 42, 0.12),
        0 0 0 1px rgba(15, 23, 42, 0.04);
    background-color: #ffffff;
    border-color: #e2e8f0;
}

.kmk-toast .alert.alert-success {
    background-color: #ecfdf5;
    border-color: #6ee7b7;
    color: #047857;
}

.kmk-toast .alert.alert-warning {
    background-color: #fffbeb;
    border-color: #fcd34d;
    color: #92400e;
}

.kmk-toast .alert.alert-danger {
    background-color: #fef2f2;
    border-color: #fecaca;
    color: #991b1b;
}

.kmk-toast .alert.alert-info {
    background-color: #eff6ff;
    border-color: #bfdbfe;
    color: #1e3a8a;
}

@media (prefers-reduced-motion: reduce) {
    .kmk-toast {
        transition: none;
    }

    .kmk-toast--visible {
        opacity: 1;
        transform: none;
    }
}

.state-panel {
    display: flex;
    align-items: flex-start;
    gap: 0.95rem;
    padding: 1rem 1.1rem;
    border: 1px solid rgba(226, 232, 240, 0.9);
    border-radius: 18px;
    background: rgba(248, 250, 252, 0.82);
}

.state-panel-icon {
    width: 2.5rem;
    height: 2.5rem;
    border-radius: 14px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: var(--color-primary-soft);
    color: var(--color-primary);
    flex-shrink: 0;
}

.state-panel-title {
    font-size: 0.96rem;
    font-weight: 650;
    color: var(--color-ink);
    margin-bottom: 0.2rem;
}

.state-panel-copy {
    font-size: 0.88rem;
    color: var(--color-ink-muted);
    margin-bottom: 0;
}

.state-panel-warning .state-panel-icon {
    background: rgba(217, 119, 6, 0.12);
    color: #b45309;
}

.state-panel-info .state-panel-icon {
    background: rgba(30, 58, 138, 0.12);
    color: #1e3a8a;
}

.state-panel-danger .state-panel-icon {
    background: rgba(220, 38, 38, 0.12);
    color: #b91c1c;
}

.state-panel-success .state-panel-icon {
    background: rgba(16, 185, 129, 0.12);
    color: #047857;
}

.empty-state {
    display: grid;
    justify-items: center;
    gap: 0.8rem;
    text-align: center;
    padding: var(--space-2xl) var(--space-xl);
    color: var(--color-ink-muted);
}

.empty-state-icon {
    width: 4rem;
    height: 4rem;
    border-radius: 18px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 1.6rem;
    color: var(--color-primary);
    background: rgba(30, 58, 138, 0.08);
    margin-bottom: 0;
}

.empty-state-title {
    font-size: 1.05rem;
    font-weight: 650;
    color: var(--color-ink);
    margin-bottom: 0.2rem;
}

.empty-state-copy {
    max-width: 48ch;
    margin-bottom: 0;
}

.empty-state-actions {
    display: flex;
    justify-content: center;
    gap: 0.75rem;
    flex-wrap: wrap;
}

/* --- Secondary Pages --- */
.secondary-page-shell {
    max-width: 760px;
    margin-inline: auto;
}

.secondary-panel {
    border: 1px solid rgba(226, 232, 240, 0.9);
    border-radius: 22px;
    background: rgba(255, 255, 255, 0.94);
    box-shadow: 0 18px 44px rgba(15, 23, 42, 0.07);
}

.secondary-panel .card-body {
    padding: clamp(1.5rem, 3vw, 2.5rem);
}

.secondary-content {
    max-width: 68ch;
    color: var(--color-ink-soft);
    font-size: 0.95rem;
    line-height: 1.78;
}

.secondary-content > :last-child {
    margin-bottom: 0;
}

.secondary-content p,
.secondary-content ul,
.secondary-content ol,
.secondary-content table,
.secondary-content .state-panel,
.secondary-content .alert {
    margin-bottom: 1.15rem;
}

.secondary-content h4,
.secondary-content h5,
.secondary-content h6 {
    font-family: var(--font-body);
    font-weight: 675;
    letter-spacing: -0.02em;
    color: var(--color-ink);
    margin-bottom: 0.55rem;
}

.secondary-content h4 {
    font-size: 1.08rem;
    margin-top: 2rem;
}

.secondary-content h4:first-child,
.secondary-content h5:first-child {
    margin-top: 0;
}

.secondary-content h5 {
    font-size: 1rem;
    margin-top: 1.6rem;
}

.secondary-content h6 {
    font-size: 0.94rem;
    margin-top: 1.2rem;
}

.secondary-content strong {
    color: var(--color-ink);
}

.secondary-link {
    color: var(--color-primary);
    font-weight: 600;
    text-decoration: none;
    border-bottom: 1px solid rgba(30, 58, 138, 0.18);
}

.secondary-link:hover {
    color: var(--color-primary-deep);
    border-bottom-color: rgba(30, 58, 138, 0.3);
}

.secondary-divider {
    margin-block: 1.75rem;
    border-color: rgba(226, 232, 240, 0.9);
    opacity: 1;
}

.secondary-table-wrap {
    border: 1px solid rgba(226, 232, 240, 0.9);
    border-radius: 18px;
    overflow: hidden;
    background: rgba(255, 255, 255, 0.86);
}

.secondary-table {
    margin-bottom: 0;
}

.secondary-table thead th {
    background: rgba(248, 250, 252, 0.92);
}

.secondary-list {
    list-style: none;
    padding: 0;
    margin: 0 0 1.15rem;
    display: grid;
    gap: 0.7rem;
}

.secondary-list li {
    display: flex;
    align-items: flex-start;
    gap: 0.7rem;
}

.secondary-list-icon {
    color: var(--color-primary);
    font-size: 0.95rem;
    margin-top: 0.18rem;
    flex-shrink: 0;
}

.secondary-section-block + .secondary-section-block {
    margin-top: 1.15rem;
}

.legal-layout {
    align-items: start;
}

.legal-main-stack,
.legal-side-stack {
    display: grid;
    gap: 1rem;
}

.legal-side-stack {
    position: sticky;
    top: 5.5rem;
}

.legal-mini-title {
    font-size: 0.82rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--color-ink-muted);
    margin-bottom: 0.75rem;
}

.legal-summary-list {
    display: grid;
    gap: 0.85rem;
}

.legal-summary-item {
    display: grid;
    gap: 0.2rem;
}

.legal-summary-label {
    font-size: 0.76rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--color-ink-muted);
}

.legal-summary-value {
    color: var(--color-ink);
    font-weight: 600;
    line-height: 1.5;
}

.legal-anchor-list {
    display: grid;
    gap: 0.6rem;
}

.legal-anchor-link {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    padding: 0.8rem 0.95rem;
    border: 1px solid rgba(226, 232, 240, 0.9);
    border-radius: 14px;
    background: rgba(248, 250, 252, 0.78);
    color: var(--color-ink-soft);
    text-decoration: none;
    transition: border-color 0.2s ease, background-color 0.2s ease, transform 0.2s ease;
}

.legal-anchor-link:hover {
    border-color: rgba(30, 58, 138, 0.18);
    background: rgba(30, 58, 138, 0.05);
    color: var(--color-ink);
    transform: translateY(-1px);
}

.legal-anchor-link i {
    color: var(--color-primary);
}

.legal-note-list {
    display: grid;
    gap: 0.9rem;
}

.state-panel-ink {
    background: linear-gradient(135deg, rgba(15, 23, 42, 0.98), rgba(30, 41, 59, 0.96));
    border-color: rgba(30, 41, 59, 0.96);
}

.state-panel-ink .state-panel-icon {
    background: rgba(255, 255, 255, 0.1);
    color: rgba(255, 255, 255, 0.92);
}

.state-panel-ink .state-panel-title,
.state-panel-ink .state-panel-copy {
    color: rgba(255, 255, 255, 0.92);
}

/* state-panel-ink iÃ§inde sÄ±nÄ±fsÄ±z p kalmamasÄ± iÃ§in: koyu arka planda okunaklÄ± metin */
.state-panel-ink .state-panel-body,
.state-panel-ink > div > p:not(.state-panel-title) {
    color: rgba(255, 255, 255, 0.92);
    font-size: 0.88rem;
}

/* Koyu temada .state-panel rengi tÃ¼m metni soluk yapmasÄ±n â€” ink panelleri aÃ§Ä±k metin */
/* â”€â”€â”€ Account & Admin â”€â”€â”€ */
.utility-stack {
    display: grid;
    gap: 1.5rem;
}

.account-identity {
    text-align: center;
}

.account-avatar {
    width: 80px;
    height: 80px;
    border-radius: 24px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 1rem;
    background: linear-gradient(135deg, var(--color-primary), var(--color-primary-deep));
    color: #fff;
    font-size: 2rem;
    font-weight: 700;
    box-shadow: var(--shadow-elevated);
}

.account-plan-badge {
    text-transform: uppercase;
}

.account-actions {
    display: grid;
    gap: 0.75rem;
}

.account-persona-panel {
    display: grid;
    gap: 0.85rem;
}

.account-page .account-identity h5,
.account-page .form-note,
.account-page .state-panel-copy {
    overflow-wrap: anywhere;
}

.account-page .table-responsive {
    -webkit-overflow-scrolling: touch;
}

.account-section-kicker,
.account-mobile-label {
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--color-primary);
}

.account-sidebar-card .card-body,
.account-persona-shell {
    display: grid;
    gap: 1rem;
}

.account-mobile-hero {
    position: relative;
    overflow: hidden;
    background:
        radial-gradient(circle at top left, rgba(59, 130, 246, 0.14), transparent 44%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(241, 245, 255, 0.96));
}

.account-mobile-hero::before {
    content: "";
    position: absolute;
    inset: -3rem auto auto -2rem;
    width: 10rem;
    height: 10rem;
    border-radius: 999px;
    background: rgba(30, 58, 138, 0.08);
    filter: blur(8px);
}

.account-mobile-hero .card-body {
    position: relative;
    display: grid;
    gap: 1rem;
}

.account-mobile-hero-top {
    display: flex;
    align-items: flex-start;
    gap: 0.9rem;
}

.account-mobile-identity {
    min-width: 0;
}

.account-mobile-identity h4 {
    margin: 0;
    font-size: 1.08rem;
    line-height: 1.4;
    overflow-wrap: anywhere;
}

.account-mobile-badges {
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
    margin-top: 0.75rem;
}

.account-mobile-stats {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.75rem;
}

.account-mobile-stat {
    display: grid;
    gap: 0.28rem;
    padding: 0.9rem;
    border: 1px solid rgba(191, 219, 254, 0.55);
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.84);
    box-shadow: 0 12px 24px rgba(15, 23, 42, 0.05);
}

.account-mobile-stat-label {
    font-size: 0.72rem;
    color: var(--color-ink-muted);
}

.account-mobile-stat strong {
    font-size: 0.96rem;
    line-height: 1.35;
    color: var(--color-ink);
}

.account-mobile-shortcuts {
    display: flex;
    gap: 0.65rem;
    overflow-x: auto;
    padding-bottom: 0.1rem;
    scrollbar-width: none;
}

.account-mobile-shortcuts::-webkit-scrollbar {
    display: none;
}

.account-mobile-shortcut {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 46px;
    padding: 0.72rem 1rem;
    border: 1px solid rgba(191, 219, 254, 0.8);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.86);
    color: var(--color-ink);
    font-size: 0.9rem;
    font-weight: 600;
    text-decoration: none;
    white-space: nowrap;
    transition: transform .18s ease, border-color .18s ease, background-color .18s ease, box-shadow .18s ease;
    -webkit-tap-highlight-color: transparent;
    touch-action: manipulation;
}

.account-mobile-shortcut:hover,
.account-mobile-shortcut:focus-visible {
    color: var(--color-primary);
    border-color: rgba(30, 58, 138, 0.3);
    background: #fff;
    box-shadow: 0 10px 24px rgba(30, 58, 138, 0.12);
    transform: translateY(-1px);
}

.account-plan-mobile-list,
.account-request-mobile-list {
    display: grid;
    gap: 0.9rem;
}

.account-plan-mobile-card,
.account-request-mobile-card {
    border: 1px solid rgba(226, 232, 240, 0.95);
    border-radius: 22px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(248, 250, 252, 0.92));
    box-shadow: 0 14px 32px rgba(15, 23, 42, 0.05);
    padding: 1rem;
}

.account-plan-mobile-card.is-current {
    border-color: rgba(30, 58, 138, 0.24);
    background:
        radial-gradient(circle at top right, rgba(191, 219, 254, 0.45), transparent 40%),
        linear-gradient(180deg, rgba(239, 246, 255, 0.96), rgba(255, 255, 255, 0.98));
}

.account-plan-mobile-head,
.account-request-mobile-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 0.85rem;
    margin-bottom: 0.75rem;
}

.account-plan-mobile-name {
    font-size: 1.02rem;
    font-weight: 700;
    color: var(--color-ink);
}

.account-plan-mobile-price {
    margin-top: 0.2rem;
    font-size: 0.88rem;
    color: var(--color-ink-muted);
}

.account-plan-mobile-meta {
    display: grid;
    gap: 0.55rem;
    margin-bottom: 0.9rem;
}

.account-plan-mobile-meta span,
.account-request-mobile-meta span {
    display: flex;
    align-items: flex-start;
    gap: 0.55rem;
    color: var(--color-ink-soft);
    font-size: 0.88rem;
    line-height: 1.45;
}

.account-plan-mobile-meta i,
.account-request-mobile-meta i,
.account-feature-list i {
    color: var(--color-primary);
    margin-top: 0.12rem;
    flex-shrink: 0;
}

.account-feature-list {
    display: grid;
    gap: 0.55rem;
}

.account-feature-list li {
    display: flex;
    align-items: flex-start;
    gap: 0.6rem;
    font-size: 0.9rem;
    color: var(--color-ink-soft);
    line-height: 1.4;
}

.account-request-mobile-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 0.65rem;
    margin-bottom: 0.7rem;
}

.account-request-mobile-note {
    padding: 0.8rem 0.9rem;
    border-radius: 16px;
    background: rgba(239, 246, 255, 0.72);
    color: var(--color-ink-soft);
    font-size: 0.88rem;
    line-height: 1.5;
}

.account-request-mobile-note.is-muted {
    margin-top: 0.55rem;
    background: rgba(248, 250, 252, 0.9);
    color: var(--color-ink-muted);
}

.account-desktop-kicker {
    font-size: 0.74rem;
    font-weight: 800;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.72);
}

.account-page-shell {
    max-width: 1380px;
}

.account-desktop-topline {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}

.account-desktop-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.45rem 0.8rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.1);
    border: 1px solid rgba(255, 255, 255, 0.14);
    color: rgba(255, 255, 255, 0.82);
    font-size: 0.8rem;
    font-weight: 600;
}

.account-desktop-title {
    margin: 0;
    font-size: clamp(1.55rem, 2vw, 2rem);
    line-height: 1.15;
    color: #fff;
    overflow-wrap: anywhere;
}

.account-desktop-copy {
    margin: 0;
    max-width: 56ch;
    color: rgba(255, 255, 255, 0.8);
    font-size: 0.95rem;
}

.account-desktop-badges {
    display: flex;
    flex-wrap: wrap;
    gap: 0.55rem;
}

.account-desktop-badges .utility-badge {
    background: rgba(255, 255, 255, 0.12);
    border: 1px solid rgba(255, 255, 255, 0.14);
    color: rgba(255, 255, 255, 0.94);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
}

.account-desktop-badges .utility-badge.utility-badge-subtle {
    background: rgba(255, 255, 255, 0.08);
    color: rgba(255, 255, 255, 0.88);
}

.account-desktop-badges .utility-badge i {
    color: rgba(255, 255, 255, 0.82);
}

.account-desktop-badges a.utility-badge:hover,
.account-desktop-badges a.utility-badge:focus-visible {
    background: rgba(255, 255, 255, 0.16);
    color: #fff;
}

.account-desktop-highlight-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.9rem;
}

.account-desktop-shortcuts {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
}

.account-desktop-shortcut {
    display: inline-flex;
    align-items: center;
    gap: 0.55rem;
    min-height: 48px;
    padding: 0.85rem 1rem;
    border: 1px solid rgba(255, 255, 255, 0.16);
    border-radius: 16px;
    background: rgba(255, 255, 255, 0.08);
    color: #fff;
    font-size: 0.9rem;
    font-weight: 600;
    text-decoration: none;
    transition: transform .18s ease, background-color .18s ease, border-color .18s ease;
}

.account-desktop-shortcut:hover,
.account-desktop-shortcut:focus-visible {
    color: #fff;
    background: rgba(255, 255, 255, 0.14);
    border-color: rgba(255, 255, 255, 0.28);
    transform: translateY(-1px);
}

.account-desktop-nav {
    backdrop-filter: blur(12px);
}

.account-desktop-nav .card-body {
    padding-block: 1rem;
}

.account-desktop-nav-wrap {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}

.account-desktop-nav-links {
    display: flex;
    flex-wrap: wrap;
    gap: 0.7rem;
}

.account-desktop-nav-link {
    display: inline-flex;
    align-items: center;
    gap: 0.55rem;
    min-height: 44px;
    padding: 0.72rem 0.95rem;
    border-radius: 14px;
    border: 1px solid rgba(226, 232, 240, 0.95);
    background: rgba(248, 250, 252, 0.88);
    color: var(--color-ink);
    font-size: 0.9rem;
    font-weight: 600;
    text-decoration: none;
    transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease, background-color .18s ease;
}

.account-desktop-nav-link:hover,
.account-desktop-nav-link:focus-visible {
    color: var(--color-primary);
    border-color: rgba(59, 130, 246, 0.24);
    background: #fff;
    box-shadow: 0 14px 30px rgba(15, 23, 42, 0.06);
    transform: translateY(-1px);
}

.account-desktop-nav-link i {
    color: var(--color-primary);
}

.account-desktop-nav-meta {
    display: grid;
    gap: 0.16rem;
    padding: 0.75rem 0.95rem;
    border-radius: 16px;
    background:
        radial-gradient(circle at top right, rgba(191, 219, 254, 0.35), transparent 42%),
        linear-gradient(180deg, rgba(239, 246, 255, 0.94), rgba(255, 255, 255, 0.98));
    border: 1px solid rgba(191, 219, 254, 0.85);
}

.account-desktop-nav-meta span {
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--color-ink-muted);
}

.account-desktop-nav-meta strong {
    color: var(--color-ink);
    font-size: 0.94rem;
}

.account-sidebar-section-label {
    font-size: 0.76rem;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--color-primary);
}

.account-sidebar-metrics {
    display: grid;
    gap: 0.75rem;
}

.account-sidebar-metric {
    padding: 0.95rem 1rem;
    border: 1px solid rgba(191, 219, 254, 0.65);
    border-radius: 18px;
    background: linear-gradient(180deg, rgba(248, 250, 252, 0.95), rgba(239, 246, 255, 0.88));
}

.account-sidebar-metric span {
    display: block;
    margin-bottom: 0.35rem;
    font-size: 0.74rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--color-ink-muted);
}

.account-sidebar-metric strong {
    display: block;
    color: var(--color-ink);
    font-size: 0.98rem;
    line-height: 1.35;
}

.account-sidebar-helper {
    display: grid;
    gap: 0.65rem;
    padding: 1rem;
    border-radius: 20px;
    border: 1px solid rgba(191, 219, 254, 0.75);
    background:
        radial-gradient(circle at top right, rgba(219, 234, 254, 0.72), transparent 42%),
        linear-gradient(180deg, rgba(239, 246, 255, 0.96), rgba(255, 255, 255, 0.98));
}

.account-sidebar-helper h6 {
    font-size: 1rem;
    font-weight: 700;
    color: var(--color-ink);
}

.account-sidebar-helper p {
    color: var(--color-ink-soft);
    font-size: 0.88rem;
    line-height: 1.55;
}

.account-sidebar-helper-actions {
    display: flex;
    align-items: center;
    gap: 0.8rem;
    flex-wrap: wrap;
}

.account-inline-action {
    color: var(--color-primary);
    font-size: 0.88rem;
    font-weight: 600;
    text-decoration: none;
}

.account-inline-action:hover,
.account-inline-action:focus-visible {
    color: #1d4ed8;
    text-decoration: underline;
}

.account-sidebar-links {
    display: grid;
    gap: 0.7rem;
}

.account-sidebar-link {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    min-height: 52px;
    padding: 0.85rem 1rem;
    border: 1px solid rgba(226, 232, 240, 0.95);
    border-radius: 16px;
    background: rgba(255, 255, 255, 0.82);
    color: var(--color-ink);
    text-decoration: none;
    transition: border-color .18s ease, transform .18s ease, box-shadow .18s ease;
}

.account-sidebar-link:hover,
.account-sidebar-link:focus-visible {
    color: var(--color-primary);
    border-color: rgba(30, 58, 138, 0.22);
    box-shadow: 0 14px 28px rgba(15, 23, 42, 0.06);
    transform: translateY(-1px);
}

.account-sidebar-link i {
    color: var(--color-primary);
}

.account-section-heading {
    align-items: end;
    justify-content: space-between;
    margin-bottom: 1rem;
}

.account-plan-desktop-overview {
    display: grid !important;
    align-items: stretch;
    gap: 0.9rem;
    margin-bottom: 1rem;
}

.account-plan-desktop-overview.is-readonly .account-plan-overview-copy {
    grid-column: 1 / -1;
}

.account-plan-desktop-overview.is-readonly {
    gap: 0;
    margin-bottom: 0.85rem;
}

.account-plan-overview-card {
    display: grid;
    gap: 0.18rem;
    min-width: 190px;
    padding: 0.9rem 1rem;
    border-radius: 18px;
    border: 1px solid rgba(226, 232, 240, 0.95);
    background: rgba(248, 250, 252, 0.9);
}

.account-plan-overview-card span {
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--color-ink-muted);
}

.account-plan-overview-card strong {
    color: var(--color-ink);
    font-size: 1rem;
}

.account-plan-overview-card small {
    color: var(--color-ink-muted);
    font-size: 0.82rem;
}

.account-plan-overview-card.is-current {
    background:
        radial-gradient(circle at top right, rgba(191, 219, 254, 0.4), transparent 40%),
        linear-gradient(180deg, rgba(239, 246, 255, 0.96), rgba(255, 255, 255, 0.98));
    border-color: rgba(147, 197, 253, 0.8);
}

.account-plan-overview-card.is-suggested {
    background:
        radial-gradient(circle at top right, rgba(254, 240, 138, 0.42), transparent 42%),
        linear-gradient(180deg, rgba(255, 251, 235, 0.96), rgba(255, 255, 255, 0.98));
    border-color: rgba(253, 224, 71, 0.85);
}

.account-plan-overview-copy {
    display: flex;
    align-items: center;
    padding: 0.95rem 1rem;
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.9);
    border: 1px dashed rgba(191, 219, 254, 0.9);
    color: var(--color-ink-soft);
    font-size: 0.9rem;
    line-height: 1.6;
}

.account-plan-overview-copy.is-standalone {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    align-items: start;
    gap: 0.55rem;
    padding: 0.78rem 0.9rem;
    border-radius: 14px;
    background: rgba(239, 246, 255, 0.58);
    border: 1px solid rgba(191, 219, 254, 0.72);
    box-shadow: none;
    line-height: 1.5;
}

.account-plan-overview-copy.is-standalone > i {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.45rem;
    height: 1.45rem;
    border-radius: 999px;
    background: rgba(59, 130, 246, 0.1);
    color: var(--color-primary);
    font-size: 0.76rem;
    margin-top: 0.08rem;
}

.account-plan-overview-copy.is-standalone > span {
    color: var(--color-ink);
    font-size: 0.85rem;
}

.account-plan-overview-copy.is-standalone strong {
    color: var(--color-ink);
}

.account-plan-desktop-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
}

.account-plan-desktop-card {
    display: grid;
    gap: 1rem;
    padding: 1.15rem;
    border: 1px solid rgba(226, 232, 240, 0.95);
    border-radius: 24px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(248, 250, 252, 0.92));
    box-shadow: 0 16px 34px rgba(15, 23, 42, 0.05);
}

.account-plan-desktop-card.is-current {
    border-color: rgba(59, 130, 246, 0.28);
    background:
        radial-gradient(circle at top right, rgba(191, 219, 254, 0.45), transparent 44%),
        linear-gradient(180deg, rgba(239, 246, 255, 0.96), rgba(255, 255, 255, 0.98));
    box-shadow: 0 22px 42px rgba(30, 58, 138, 0.12);
}

.account-plan-desktop-card.plan-free {
    background:
        radial-gradient(circle at top right, rgba(226, 232, 240, 0.65), transparent 42%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(248, 250, 252, 0.94));
}

.account-plan-desktop-card.plan-starter {
    background:
        radial-gradient(circle at top right, rgba(254, 240, 138, 0.42), transparent 42%),
        linear-gradient(180deg, rgba(255, 251, 235, 0.96), rgba(255, 255, 255, 0.98));
    border-color: rgba(245, 158, 11, 0.18);
}

.account-plan-desktop-card.plan-pro {
    background:
        radial-gradient(circle at top right, rgba(191, 219, 254, 0.55), transparent 42%),
        linear-gradient(180deg, rgba(239, 246, 255, 0.98), rgba(255, 255, 255, 0.98));
    border-color: rgba(59, 130, 246, 0.18);
}

.account-plan-desktop-card.is-suggested-plan {
    box-shadow: 0 18px 36px rgba(245, 158, 11, 0.12);
}

.account-plan-desktop-card.is-compare-only {
    background:
        linear-gradient(180deg, rgba(248, 250, 252, 0.88), rgba(255, 255, 255, 0.94));
    border-color: rgba(226, 232, 240, 0.98);
    box-shadow: none;
}

.account-plan-desktop-card.is-compare-only .account-plan-desktop-head,
.account-plan-desktop-card.is-compare-only .account-plan-desktop-description,
.account-plan-desktop-card.is-compare-only .account-feature-list li,
.account-plan-desktop-card.is-compare-only .form-note {
    opacity: 0.84;
}

.account-plan-desktop-ribbon {
    display: flex;
    justify-content: flex-start;
}

.account-plan-ribbon-tag {
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    padding: 0.34rem 0.68rem;
    border-radius: 999px;
    background: rgba(15, 23, 42, 0.06);
    color: var(--color-ink-soft);
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

.account-plan-ribbon-tag.is-current {
    background: rgba(30, 58, 138, 0.12);
    color: var(--color-primary);
}

.account-plan-ribbon-tag.is-suggested {
    background: rgba(245, 158, 11, 0.14);
    color: #b45309;
}

.account-plan-ribbon-tag.is-upgrade {
    background: rgba(59, 130, 246, 0.12);
    color: #1d4ed8;
}

.account-plan-desktop-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 0.85rem;
}

.account-plan-desktop-name {
    font-size: 1.08rem;
    font-weight: 750;
    color: var(--color-ink);
}

.account-plan-desktop-description {
    margin: 0.35rem 0 0;
    font-size: 0.88rem;
    line-height: 1.55;
    color: var(--color-ink-muted);
}

.account-plan-desktop-metrics {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.75rem;
}

.account-plan-desktop-metric {
    padding: 0.85rem 0.9rem;
    border-radius: 16px;
    background: rgba(248, 250, 252, 0.95);
    border: 1px solid rgba(226, 232, 240, 0.9);
}

.account-plan-desktop-metric span {
    display: block;
    margin-bottom: 0.32rem;
    font-size: 0.74rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--color-ink-muted);
}

.account-plan-desktop-metric strong {
    color: var(--color-ink);
    font-size: 1rem;
    line-height: 1.3;
}

.account-plan-desktop-footer {
    margin-top: auto;
}

.account-desktop-focus {
    display: grid;
    gap: 1rem;
    align-content: start;
    padding: 1.25rem;
    border-radius: 24px;
    border: 1px solid rgba(255, 255, 255, 0.16);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.12), rgba(255, 255, 255, 0.08));
    backdrop-filter: blur(10px);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.account-desktop-focus-kicker {
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.64);
}

.account-desktop-focus-title {
    margin: 0;
    color: #fff;
    font-size: 1.2rem;
    line-height: 1.25;
}

.account-desktop-focus-copy {
    margin: 0;
    color: rgba(255, 255, 255, 0.78);
    font-size: 0.92rem;
    line-height: 1.6;
}

.account-desktop-focus-list {
    display: grid;
    gap: 0.7rem;
}

.account-desktop-focus-item {
    display: flex;
    align-items: flex-start;
    gap: 0.6rem;
    color: rgba(255, 255, 255, 0.84);
    font-size: 0.9rem;
    line-height: 1.45;
}

.account-desktop-focus-item i {
    color: #bfdbfe;
    margin-top: 0.1rem;
}

.account-desktop-focus-footer {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.75rem;
}

.account-desktop-focus-chip {
    display: grid;
    gap: 0.28rem;
    padding: 0.85rem 0.9rem;
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.1);
}

.account-desktop-focus-chip span {
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.62);
}

.account-desktop-focus-chip strong {
    color: #fff;
    font-size: 0.95rem;
    line-height: 1.35;
}

.account-desktop-focus-action .btn {
    border: 0;
    color: #0f172a;
    font-weight: 700;
}

.account-request-grid {
    display: grid;
    gap: 1rem;
}

.account-request-readonly-shell {
    display: grid;
    gap: 0.75rem;
}

.account-request-desktop-summary {
    display: grid !important;
    align-items: center;
    gap: 0.8rem;
    margin-bottom: 1rem;
}

.account-request-summary-chip {
    display: grid;
    gap: 0.2rem;
    min-width: 150px;
    padding: 0.85rem 0.95rem;
    border-radius: 18px;
    background: rgba(248, 250, 252, 0.9);
    border: 1px solid rgba(226, 232, 240, 0.95);
}

.account-request-summary-chip span {
    font-size: 0.7rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--color-ink-muted);
}

.account-request-summary-chip strong {
    color: var(--color-ink);
    font-size: 0.95rem;
}

.account-request-summary-chip.is-suggested {
    background:
        radial-gradient(circle at top right, rgba(191, 219, 254, 0.36), transparent 42%),
        linear-gradient(180deg, rgba(239, 246, 255, 0.96), rgba(255, 255, 255, 0.98));
    border-color: rgba(147, 197, 253, 0.8);
}

.account-request-summary-copy {
    display: flex;
    align-items: center;
    padding: 0.95rem 1rem;
    border-radius: 18px;
    border: 1px dashed rgba(191, 219, 254, 0.9);
    background: rgba(255, 255, 255, 0.88);
    color: var(--color-ink-soft);
    font-size: 0.9rem;
    line-height: 1.55;
}

.account-request-aside {
    flex-direction: column;
    gap: 0.85rem;
    padding: 1.15rem;
    border: 1px solid rgba(226, 232, 240, 0.95);
    border-radius: 22px;
    background:
        radial-gradient(circle at top right, rgba(191, 219, 254, 0.28), transparent 42%),
        linear-gradient(180deg, rgba(248, 250, 252, 0.98), rgba(255, 255, 255, 0.98));
}

.account-request-aside-steps {
    display: grid;
    gap: 0.75rem;
}

.account-request-step {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 0.65rem;
    align-items: start;
    padding: 0.85rem 0.9rem;
    border-radius: 16px;
    background: rgba(255, 255, 255, 0.82);
    border: 1px solid rgba(226, 232, 240, 0.9);
    color: var(--color-ink-soft);
    font-size: 0.88rem;
    line-height: 1.5;
}

.account-request-step strong {
    color: var(--color-primary);
}

.account-request-aside-current {
    display: grid;
    gap: 0.25rem;
    padding: 0.95rem 1rem;
    border-radius: 18px;
    background: rgba(30, 58, 138, 0.06);
}

.account-request-aside-current span {
    font-size: 0.73rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--color-ink-muted);
}

.account-request-aside-current strong {
    color: var(--color-ink);
}

.account-request-aside-current small {
    color: var(--color-ink-muted);
}

.account-request-desktop-list {
    display: grid;
    gap: 0.85rem;
}

.account-request-desktop-card {
    padding: 1rem 1.05rem;
    border: 1px solid rgba(226, 232, 240, 0.95);
    border-radius: 20px;
    background: rgba(255, 255, 255, 0.96);
}

.account-request-desktop-top {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
}

.account-request-desktop-route {
    display: flex;
    align-items: center;
    gap: 0.45rem;
    font-weight: 700;
    color: var(--color-ink);
}

.account-request-desktop-route i {
    color: var(--color-primary);
}

.account-request-desktop-date {
    margin-top: 0.35rem;
    font-size: 0.82rem;
    color: var(--color-ink-muted);
}

.account-request-desktop-notes {
    display: grid;
    gap: 0.45rem;
    margin-top: 0.85rem;
    font-size: 0.88rem;
    line-height: 1.55;
    color: var(--color-ink-soft);
}

.account-request-empty {
    align-items: center;
    gap: 1rem;
    padding: 0.95rem 1rem;
    border-radius: 20px;
    border: 1px dashed rgba(191, 219, 254, 0.85);
    background:
        radial-gradient(circle at top right, rgba(239, 246, 255, 0.9), transparent 42%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(248, 250, 252, 0.92));
}

.account-request-empty-icon {
    width: 3rem;
    height: 3rem;
    border-radius: 18px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(30, 58, 138, 0.1);
    color: var(--color-primary);
    flex-shrink: 0;
}

.account-request-empty-title {
    font-size: 0.98rem;
    font-weight: 700;
    color: var(--color-ink);
    margin-bottom: 0.18rem;
}

.account-request-empty-copy {
    color: var(--color-ink-muted);
    font-size: 0.88rem;
    line-height: 1.55;
}

.account-request-readonly-grid {
    display: grid;
    gap: 0.8rem;
    align-items: start;
}

.account-request-readonly-grid > * {
    align-self: start;
}

.account-request-readonly-grid .state-panel,
.account-request-readonly-state {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 0.8rem;
    min-height: 0;
}

.account-request-readonly-state {
    padding: 0.95rem 1rem;
    border-radius: 20px;
    background:
        radial-gradient(circle at top left, rgba(219, 234, 254, 0.7), transparent 40%),
        linear-gradient(180deg, rgba(248, 250, 252, 0.98), rgba(255, 255, 255, 0.96));
}

.account-request-readonly-state .state-panel-icon {
    width: 2.25rem;
    height: 2.25rem;
    border-radius: 12px;
}

.account-request-readonly-state .state-panel-title {
    font-size: 0.92rem;
    margin-bottom: 0.15rem;
}

.account-request-readonly-state .state-panel-copy {
    font-size: 0.84rem;
    line-height: 1.55;
}

.account-request-readonly-card {
    display: grid;
    gap: 0.72rem;
    padding: 0.95rem 1rem;
    border: 1px solid rgba(226, 232, 240, 0.95);
    border-radius: 20px;
    background:
        radial-gradient(circle at top right, rgba(239, 246, 255, 0.72), transparent 42%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(248, 250, 252, 0.94));
}

.account-request-readonly-card.is-support > p {
    max-width: 44ch;
}

.account-request-readonly-points {
    display: grid;
    gap: 0.55rem;
}

.account-request-readonly-point {
    display: flex;
    align-items: flex-start;
    gap: 0.55rem;
    padding: 0.72rem 0.78rem;
    border-radius: 14px;
    border: 1px solid rgba(226, 232, 240, 0.9);
    background: rgba(255, 255, 255, 0.9);
    color: var(--color-ink-soft);
    font-size: 0.84rem;
    line-height: 1.5;
}

.account-request-readonly-point i {
    color: var(--color-primary);
    margin-top: 0.08rem;
}

.account-settings-intro {
    align-items: end;
    justify-content: space-between;
    margin-bottom: 1rem;
}

.account-settings-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
    margin-bottom: 1.25rem;
}

.account-settings-card {
    height: 100%;
}

.account-settings-card .card-body {
    display: grid;
    align-content: start;
}

.account-settings-card-copy {
    margin-bottom: 0.9rem;
    color: var(--color-ink-muted);
    font-size: 0.88rem;
    line-height: 1.55;
}

.account-settings-card-copy.is-danger {
    color: #b91c1c;
}

.account-settings-card-danger {
    border-color: rgba(254, 202, 202, 0.9);
    background:
        radial-gradient(circle at top right, rgba(254, 226, 226, 0.62), transparent 40%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(254, 242, 242, 0.92));
}

#account-plans,
#account-plan-request,
#account-persona-card,
#account-settings {
    scroll-margin-top: 7rem;
}

.utility-tabs {
    background: rgba(30, 58, 138, 0.08);
}

.utility-tabs .nav-link {
    color: var(--color-ink-muted);
    border-radius: 0;
    min-height: 52px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding-inline: 1rem;
}

.utility-tabs .nav-link.active {
    color: var(--color-ink);
    background: rgba(255, 255, 255, 0.9);
}

.utility-accordion {
    border: 1px solid rgba(226, 232, 240, 0.9);
    border-radius: 18px;
    overflow: hidden;
    background: rgba(255, 255, 255, 0.95);
}

.utility-accordion .accordion-item {
    border-color: rgba(226, 232, 240, 0.9);
}

.utility-accordion .accordion-button {
    background: rgba(248, 250, 252, 0.78);
    color: var(--color-ink);
    box-shadow: none;
    font-weight: 600;
}

.utility-accordion .accordion-button:not(.collapsed) {
    background: rgba(30, 58, 138, 0.06);
    color: var(--color-primary);
}

.utility-accordion .accordion-body {
    background: rgba(255, 255, 255, 0.98);
}

@media (min-width: 768px) {
    .account-page {
        position: relative;
    }

    .account-page::before {
        content: "";
        position: absolute;
        inset: 0 0 auto;
        height: 23rem;
        pointer-events: none;
        background:
            radial-gradient(circle at 14% 18%, rgba(191, 219, 254, 0.26), transparent 28%),
            radial-gradient(circle at 86% 10%, rgba(186, 230, 253, 0.22), transparent 24%),
            linear-gradient(180deg, rgba(248, 250, 252, 0.88), rgba(248, 250, 252, 0));
    }

    .account-page > .row {
        position: relative;
        z-index: 1;
    }

    .account-page .utility-page-header {
        margin-bottom: 1.35rem;
    }

    .account-page .account-desktop-hero.card.utility-panel {
        border-radius: 28px;
        overflow: hidden;
        background:
            radial-gradient(circle at top left, rgba(96, 165, 250, 0.36), transparent 30%),
            radial-gradient(circle at bottom right, rgba(125, 211, 252, 0.22), transparent 26%),
            linear-gradient(135deg, #0f172a, #1e3a8a 62%, #1d4ed8);
        border-color: rgba(30, 58, 138, 0.18);
        box-shadow: 0 28px 58px rgba(15, 23, 42, 0.18);
    }

    .account-desktop-hero .card-body {
        padding: 1.5rem;
    }

    .account-desktop-hero-grid {
        display: grid;
        grid-template-columns: minmax(0, 1.75fr) minmax(310px, 0.95fr);
        gap: 1.1rem;
        align-items: stretch;
    }

    .account-desktop-hero-main {
        display: grid;
        gap: 1rem;
    }

    .account-desktop-identity {
        display: flex;
        align-items: center;
        gap: 1rem;
    }

    .account-desktop-copy-block {
        display: grid;
        gap: 0.7rem;
        min-width: 0;
    }

    .account-desktop-hero .account-avatar {
        width: 88px;
        height: 88px;
        border-radius: 26px;
        box-shadow: 0 18px 34px rgba(2, 6, 23, 0.35);
    }

    .account-desktop-stat-card {
        display: grid;
        gap: 0.35rem;
        padding: 1rem 1.05rem;
        border-radius: 20px;
        border: 1px solid rgba(255, 255, 255, 0.14);
        background: rgba(255, 255, 255, 0.08);
        backdrop-filter: blur(8px);
    }

    .account-desktop-stat-label {
        font-size: 0.74rem;
        font-weight: 700;
        letter-spacing: 0.1em;
        text-transform: uppercase;
        color: rgba(255, 255, 255, 0.68);
    }

    .account-desktop-stat-card strong {
        color: #fff;
        font-size: 1.28rem;
        line-height: 1.15;
    }

    .account-desktop-stat-card small {
        color: rgba(255, 255, 255, 0.74);
        font-size: 0.84rem;
        line-height: 1.45;
    }

    .account-page .utility-page-copy {
        max-width: 72ch;
    }

    .account-main-col {
        display: grid;
        align-content: start;
    }

    .account-plan-desktop-overview {
        display: grid;
        grid-template-columns: repeat(12, minmax(0, 1fr));
    }

    .account-plan-desktop-overview.is-readonly .account-plan-overview-card {
        grid-column: span 3;
        min-width: 0;
        padding-block: 0.78rem;
    }

    .account-plan-desktop-overview.is-readonly .account-plan-overview-copy {
        grid-column: 1 / -1;
        padding: 0.8rem 0.95rem;
        font-size: 0.86rem;
        line-height: 1.5;
    }

    .account-plan-overview-copy.is-standalone {
        grid-template-columns: auto minmax(0, 1fr);
    }

    .account-plan-overview-card {
        grid-column: span 3;
    }

    .account-plan-overview-copy {
        grid-column: span 6;
    }

    .account-settings-grid {
        grid-template-columns: repeat(12, minmax(0, 1fr));
    }

    .account-settings-grid > .account-settings-card:nth-child(1),
    .account-settings-grid > .account-settings-card:nth-child(2) {
        grid-column: span 6;
    }

    .account-settings-grid > .account-settings-card:nth-child(3) {
        grid-column: 1 / -1;
    }

    .account-sidebar-card {
        background: linear-gradient(180deg, rgba(255, 255, 255, 0.97), rgba(248, 250, 252, 0.95));
    }

    .account-sidebar-card .card-body {
        gap: 1.25rem;
    }

    .account-sidebar-desktop {
        display: grid;
        gap: 1rem;
    }

    .account-persona-shell {
        padding-top: 0.25rem;
        border-top: 1px solid rgba(226, 232, 240, 0.9);
    }

    .account-request-grid {
        grid-template-columns: minmax(0, 1.4fr) minmax(260px, 0.95fr);
        align-items: start;
    }

    .account-request-readonly-grid {
        grid-template-columns: minmax(210px, 0.72fr) minmax(0, 1.28fr);
        align-items: start;
    }
}

@media (min-width: 992px) {
    .account-page .account-layout {
        align-items: start;
    }

    .account-sidebar-col {
        align-self: start;
    }

    .account-sidebar-card {
        position: sticky;
        top: 6.4rem;
    }
}

@media (max-width: 1199.98px) {
    .account-plan-desktop-grid {
        grid-template-columns: 1fr;
    }

    .account-settings-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 991.98px) {
    .account-desktop-hero-grid {
        grid-template-columns: 1fr;
    }

    .account-desktop-highlight-grid {
        grid-template-columns: 1fr;
    }

    .account-plan-desktop-overview {
        grid-template-columns: 1fr;
    }

    .account-plan-overview-card,
    .account-plan-overview-copy {
        grid-column: auto;
    }

    .account-plan-overview-copy.is-standalone {
        grid-template-columns: 1fr;
        align-items: start;
    }

    .account-request-desktop-summary {
        flex-direction: column;
        align-items: stretch;
    }

    .account-request-grid {
        grid-template-columns: 1fr;
    }

    .account-request-readonly-grid {
        grid-template-columns: 1fr;
    }


    .account-request-aside {
        display: none !important;
    }

    .account-desktop-nav-wrap {
        flex-direction: column;
        align-items: stretch;
    }

    .account-desktop-nav-meta {
        width: 100%;
    }
}

@media (max-width: 767.98px) {
    .account-page {
        padding-block: clamp(1.75rem, 7vw, 2.5rem);
    }

    .account-page .account-layout {
        row-gap: 1rem;
    }

    .account-page .utility-page-header {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.85rem;
        text-align: left;
        margin-bottom: 1.35rem;
    }

    .account-page .utility-page-copy {
        max-width: none;
    }

    .account-page .page-header-icon {
        align-self: flex-start;
    }

    .account-page .utility-panel .card-header,
    .account-page .utility-panel-header {
        padding: 1.1rem 1.1rem 0;
    }

    .account-page .utility-panel .card-body,
    .account-page .utility-panel-body,
    .account-page .utility-accordion .accordion-body {
        padding: 1.1rem;
    }

    .account-page .account-avatar {
        width: 72px;
        height: 72px;
        border-radius: 20px;
        margin-bottom: 0.85rem;
        font-size: 1.75rem;
    }

    .account-page .account-mobile-hero .account-avatar {
        margin-bottom: 0;
    }

    .account-page .account-mobile-stat {
        min-height: 92px;
    }

    .account-plan-desktop-grid,
    .account-request-desktop-list {
        display: none !important;
    }

    .account-page .utility-table {
        min-width: 38rem;
    }

    .account-page .utility-table thead th,
    .account-page .utility-table tbody td {
        padding: 0.78rem 0.85rem;
    }

    .account-page .utility-form > .d-flex,
    .account-page .account-persona-panel > .d-flex {
        flex-direction: column;
        align-items: stretch !important;
    }

    .account-page .utility-form > .d-flex > .btn,
    .account-page .account-persona-panel > .d-flex > .btn,
    .account-page .account-main-col .vstack .btn.align-self-start {
        width: 100%;
        align-self: stretch !important;
    }

    .account-page .utility-accordion .accordion-button {
        align-items: flex-start;
        padding: 1rem 1.1rem;
        font-size: 0.95rem;
        line-height: 1.4;
    }

    .account-page .utility-accordion .accordion-button i {
        flex-shrink: 0;
        margin-top: 0.15rem;
    }

    .account-page .account-plan-mobile-head,
    .account-page .account-request-mobile-head {
        flex-direction: column;
    }

    .account-page .account-plan-mobile-head .utility-badge,
    .account-page .account-request-mobile-head .utility-badge {
        align-self: flex-start;
    }

    .account-page .state-panel,
    .account-page .form-check {
        padding-inline: 0.95rem;
    }

    .account-page .account-auth-body {
        padding: 1.25rem !important;
        padding-top: 1.1rem !important;
    }

    .account-page #resetForm .account-reset-inline {
        display: grid;
        grid-template-columns: 1fr;
        gap: 0.65rem;
    }

    .account-page #resetForm .account-reset-inline > * {
        width: 100%;
        border-radius: 14px !important;
    }
}

@media (max-width: 575.98px) {
    .account-page .page-header-icon {
        width: 44px;
        height: 44px;
        font-size: 1.3rem;
    }

    .account-page .utility-panel,
    .account-page .utility-accordion {
        border-radius: 18px;
    }

    .account-page .utility-panel .card-header,
    .account-page .utility-panel-header {
        padding: 1rem 1rem 0;
    }

    .account-page .utility-panel .card-body,
    .account-page .utility-panel-body,
    .account-page .utility-accordion .accordion-body {
        padding: 1rem;
    }

    .account-page .account-avatar {
        width: 64px;
        height: 64px;
        border-radius: 18px;
        font-size: 1.45rem;
    }

    .account-page .account-mobile-stats {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .account-page .account-mobile-shortcut {
        font-size: 0.86rem;
        padding-inline: 0.9rem;
    }

    .account-page .utility-tabs .nav-link {
        font-size: 0.94rem;
        padding-inline: 0.75rem;
    }

    .account-page .utility-table {
        min-width: 34rem;
    }

    .account-page .utility-table thead th {
        font-size: 0.72rem;
    }

    .account-page .account-section-header {
        align-items: flex-start !important;
        gap: 0.35rem;
    }

    .account-page .form-check {
        gap: 0.6rem;
        padding: 0.8rem 0.85rem;
    }
}

@media (max-width: 399.98px) {
    .account-page .account-mobile-stats {
        grid-template-columns: 1fr;
    }

    .account-page .utility-tabs .nav-link {
        font-size: 0.88rem;
        padding-inline: 0.55rem;
    }

    .account-page .utility-table {
        min-width: 31rem;
    }

    .account-page .utility-accordion .accordion-button {
        font-size: 0.92rem;
    }
}

.admin-stat-card {
    position: relative;
    overflow: hidden;
    color: #fff;
    box-shadow: 0 20px 50px rgba(15, 23, 42, 0.16);
}

.admin-stat-card::after {
    content: '';
    position: absolute;
    inset: auto -15% -35% auto;
    width: 120px;
    height: 120px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.08);
}

.admin-stat-card .card-body {
    position: relative;
    z-index: 1;
}

.admin-stat-card .card-title {
    color: rgba(255, 255, 255, 0.78);
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

.admin-stat-primary {
    background: linear-gradient(135deg, var(--color-primary), var(--color-primary-deep));
}

.admin-stat-success {
    background: linear-gradient(135deg, #10B981, #059669);
}

.admin-stat-sky {
    background: linear-gradient(135deg, #0EA5E9, #0284C7);
}

.admin-stat-dark {
    background: linear-gradient(135deg, #1E293B, #0F172A);
}

.analytics-kpi-card,
.analytics-panel {
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(248, 250, 252, 0.98));
    border: 1px solid rgba(148, 163, 184, 0.16);
    border-radius: 20px;
    padding: 1rem 1.05rem;
    box-shadow: 0 14px 34px rgba(15, 23, 42, 0.08);
    height: 100%;
}

.analytics-kpi-label,
.analytics-panel-title {
    font-size: 0.8rem;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: var(--color-muted);
    margin-bottom: 0.55rem;
}

.analytics-kpi-value {
    font-size: 1.9rem;
    line-height: 1;
    font-weight: 700;
    color: var(--color-ink);
    margin-bottom: 0.45rem;
}

.analytics-kpi-note {
    color: var(--color-muted);
    font-size: 0.92rem;
    line-height: 1.4;
}

.analytics-funnel-list {
    display: grid;
    gap: 0.75rem;
}

.analytics-funnel-step {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 0.8rem 0.9rem;
    border-radius: 16px;
    background: rgba(30, 58, 138, 0.05);
    color: var(--color-ink);
}

.analytics-funnel-step strong {
    font-size: 1.05rem;
}

.analytics-chip-list {
    display: flex;
    flex-wrap: wrap;
    gap: 0.55rem;
}

/* â”€â”€â”€ Chat Meta â”€â”€â”€ */
.chat-assistant-brand-icon {
    width: 28px;
    height: 28px;
    font-size: 0.8rem;
}

.chat-assistant-brand-name {
    font-family: var(--font-body);
    font-weight: 650;
    letter-spacing: -0.02em;
    color: var(--color-primary);
}

.chat-disclaimer {
    margin-top: 0.9rem;
    padding: 0.75rem 0.9rem;
    border-radius: 14px;
}

.chat-meta {
    margin-top: 0.85rem;
    padding-top: 0.85rem;
    border-top: 1px solid rgba(226, 232, 240, 0.72);
}

.chat-meta + .chat-meta {
    margin-top: 0.7rem;
    padding-top: 0.7rem;
    border-top-color: rgba(226, 232, 240, 0.58);
}

.chat-source-group + .chat-source-group {
    margin-top: 0.6rem;
}

.trust-summary-row {
    border-top: none;
    margin-top: 0.7rem;
    padding-top: 0;
}

/* VarsayÄ±lan kapalÄ±: tek satÄ±r dÃ¼z TÃ¼rkÃ§e Ã¶zet; aÃ§Ä±lÄ±nca chip'ler */
.trust-summary-compact {
    border: 1px solid rgba(148, 163, 184, 0.22);
    border-radius: 14px;
    background: rgba(248, 250, 252, 0.65);
    overflow: hidden;
}

.trust-summary-compact-summary {
    cursor: pointer;
    list-style: none;
    padding: 0.55rem 0.75rem;
    font-size: 0.8rem;
    color: var(--color-ink-soft);
    display: flex;
    align-items: flex-start;
    gap: 0.35rem;
}

.trust-summary-compact-summary::-webkit-details-marker {
    display: none;
}

.trust-summary-compact[open] .trust-summary-compact-summary {
    border-bottom: 1px solid rgba(148, 163, 184, 0.15);
}

.trust-summary-compact-body {
    padding: 0.65rem 0.75rem 0.85rem;
}
.trust-summary-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 0.55rem;
}

.trust-chip {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    padding: 0.45rem 0.7rem;
    border-radius: 999px;
    border: 1px solid rgba(148, 163, 184, 0.25);
    background: rgba(248, 250, 252, 0.9);
    color: var(--color-ink-soft);
    font-size: 0.76rem;
    line-height: 1.2;
}

.trust-chip strong {
    color: var(--color-primary);
    font-weight: 650;
}

.trust-chip-label {
    color: var(--color-ink-muted);
}

.trust-chip-scope strong {
    color: #9a6700;
}

.trust-details {
    border: 1px solid rgba(148, 163, 184, 0.22);
    border-radius: 16px;
    background: rgba(248, 250, 252, 0.72);
    overflow: hidden;
}

.trust-details summary {
    cursor: pointer;
    list-style: none;
    padding: 0.85rem 1rem;
    font-size: 0.82rem;
    font-weight: 600;
    color: var(--color-ink-soft);
}

.trust-details summary::-webkit-details-marker {
    display: none;
}

.trust-details[open] summary {
    border-bottom: 1px solid rgba(148, 163, 184, 0.18);
}

.trust-details-body {
    padding: 0.9rem 1rem 1rem;
    font-size: 0.84rem;
    color: var(--color-ink-soft);
}

.trust-detail-list {
    padding-left: 1.1rem;
}

.trust-detail-list li + li {
    margin-top: 0.35rem;
}

.chat-source-label {
    font-size: 0.74rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--color-ink-muted);
    margin-bottom: 0.35rem;
}

.source-badge {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.74rem;
    font-weight: 600;
    background: rgba(30, 58, 138, 0.08);
    color: var(--color-primary);
    padding: 0.35rem 0.65rem;
    border-radius: 999px;
    border: 1px solid rgba(30, 58, 138, 0.1);
    text-decoration: none;
}

.source-detail {
    display: inline-flex;
    flex-direction: column;
}

.source-detail > summary {
    list-style: none;
    cursor: pointer;
}

.source-detail > summary::-webkit-details-marker {
    display: none;
}

.source-detail-body {
    margin-top: 0.45rem;
    padding: 0.65rem 0.8rem;
    border-radius: 0.85rem;
    border: 1px solid rgba(148, 163, 184, 0.24);
    background: rgba(255, 255, 255, 0.92);
    min-width: min(100%, 18rem);
    max-width: min(100%, 28rem);
}

.source-detail-kicker {
    font-size: 0.67rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--color-ink-muted);
    margin-bottom: 0.2rem;
}

.source-detail-title {
    font-size: 0.84rem;
    font-weight: 700;
    color: var(--color-ink);
}

.source-detail-meta {
    font-size: 0.76rem;
    color: var(--color-ink-muted);
    margin-top: 0.2rem;
    line-height: 1.45;
}

.source-detail-list {
    display: grid;
    gap: 0.35rem;
    margin-top: 0.45rem;
}

.source-detail-item {
    font-size: 0.76rem;
    line-height: 1.45;
    color: var(--color-ink-soft);
    background: rgba(248, 250, 252, 0.9);
    border: 1px solid rgba(148, 163, 184, 0.18);
    border-radius: 0.7rem;
    padding: 0.4rem 0.55rem;
}

.source-badge.source-badge-faq {
    background: rgba(217, 119, 6, 0.1);
    color: #92400e;
    border-color: rgba(217, 119, 6, 0.12);
}

.source-badge.source-badge-case {
    background: rgba(14, 165, 233, 0.1);
    color: #0369a1;
    border-color: rgba(14, 165, 233, 0.12);
}

/* --- Law article inline preview (rÃ¶zet tÄ±klanÄ±nca) --- */
.law-article-details {
    display: inline-flex;
    flex-direction: column;
}

.law-article-summary {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    cursor: pointer;
}

.law-article-summary::-webkit-details-marker {
    display: none;
}

.law-article-summary {
    list-style: none;
}

.law-article-preview {
    margin-top: 0.55rem;
}

.law-article-preview-body {
    margin-top: 0.55rem;
}

.law-article-preview-title {
    font-weight: 700;
    margin-bottom: 0.35rem;
}

@media (max-width: 575.98px) {
    .source-detail,
    .law-article-details {
        width: 100%;
        max-width: 100%;
        min-width: 0;
    }

    .source-detail > summary,
    .law-article-summary {
        width: 100%;
    }

    .source-badge-readable {
        display: flex;
        align-items: flex-start;
        justify-content: flex-start;
        width: 100%;
        max-width: 100%;
        min-width: 0;
        white-space: normal;
        overflow-wrap: anywhere;
        word-break: break-word;
        line-height: 1.35;
        text-align: left;
    }

    .source-detail-body {
        width: 100%;
        min-width: 0;
        max-width: 100%;
    }

    .source-detail-title {
        overflow-wrap: anywhere;
        word-break: break-word;
        line-height: 1.4;
    }
}

@media (max-width: 399.98px) {
    .chat-source-group .d-flex {
        gap: 0.4rem !important;
    }

    .source-badge-readable {
        padding: 0.3rem 0.52rem;
        border-radius: 0.8rem;
        line-height: 1.3;
    }

    .source-detail-body {
        margin-top: 0.3rem;
        padding: 0.55rem 0.65rem;
        border-radius: 0.75rem;
    }

    .source-detail-kicker {
        margin-bottom: 0.15rem;
    }

    .source-detail-meta {
        margin-top: 0.15rem;
    }

    .source-detail-list {
        gap: 0.25rem;
        margin-top: 0.35rem;
    }

    .source-detail-item {
        padding: 0.32rem 0.45rem;
        border-radius: 0.6rem;
    }

    .law-article-preview-body {
        margin-top: 0.4rem;
    }
}

.chat-feedback-row {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    flex-wrap: wrap;
}

.chat-feedback-form {
    flex: 1 1 360px;
}

.chat-feedback-controls {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-wrap: wrap;
}

.chat-feedback-button {
    width: 2rem;
    height: 2rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    border: 1px solid rgba(226, 232, 240, 0.9);
    background: rgba(248, 250, 252, 0.86);
    color: var(--color-ink-muted);
}

.chat-feedback-button:hover {
    color: var(--color-primary);
    border-color: rgba(30, 58, 138, 0.18);
    background: rgba(30, 58, 138, 0.06);
}

.chat-feedback-note {
    font-size: 0.78rem;
    color: var(--color-ink-muted);
    opacity: 0.82;
}

.chat-meta-action {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    color: var(--color-ink-muted);
    opacity: 0.9;
}

@media (max-width: 575.98px) {
    .chat-feedback-row {
        flex-direction: column;
        align-items: stretch;
        gap: 0.75rem;
    }

    .chat-feedback-form {
        flex: 1 1 auto;
        width: 100%;
        min-width: 0;
    }

    .chat-feedback-controls {
        align-items: flex-start;
        row-gap: 0.4rem;
    }

    .chat-feedback-note {
        flex-basis: 100%;
        line-height: 1.4;
    }

    .chat-feedback-button {
        width: 2.25rem;
        height: 2.25rem;
    }

    .chat-feedback-row > form:last-child {
        width: 100%;
    }

    .chat-feedback-row > form:last-child .chat-meta-action {
        min-height: 2.25rem;
        padding: 0.1rem 0;
    }
}

/* Ã–rnek soru kutularÄ±: eÅŸit boÅŸluk ve hizalÄ± kartlar */
#exampleQueries {
    --bs-gutter-x: 0.75rem;
    --bs-gutter-y: 0.75rem;
    margin-top: 1rem !important;
    margin-bottom: 0.75rem;
    padding-inline: 0 !important;
    clear: both;
    position: relative;
    z-index: 1;
}

#exampleQueries > [class*="col-"] {
    display: flex;
}

#exampleQueries .chat-prompt-chip {
    min-height: 3rem;
    height: 100%;
    padding: 0.75rem 0.85rem !important;
    border-radius: 12px;
    white-space: normal;
    text-overflow: initial;
    overflow: hidden;
    line-height: 1.35;
    touch-action: manipulation;
}

@media (max-width: 767.98px) {
    #exampleQueries {
        display: flex;
        flex-wrap: nowrap;
        overflow-x: auto;
        margin-inline: -0.15rem;
        padding: 0 0.15rem 0.3rem !important;
        scroll-snap-type: x proximity;
        scrollbar-width: none;
    }

    #exampleQueries::-webkit-scrollbar {
        display: none;
    }

    #exampleQueries > [class*="col-"] {
        flex: 0 0 min(18rem, 78vw);
        max-width: none;
        scroll-snap-align: start;
    }

    #exampleQueries .chat-prompt-chip {
        min-height: 3.15rem;
        justify-content: flex-start;
        text-align: left;
    }
}

@media (max-width: 575.98px) {
    #exampleQueries {
        display: flex;
        flex-direction: column;
        overflow-x: visible;
        scroll-snap-type: none;
        --bs-gutter-x: 0.6rem;
        --bs-gutter-y: 0.6rem;
        margin-top: 0.85rem !important;
        margin-bottom: 0.55rem;
    }

    #exampleQueries > [class*="col-"] {
        display: block;
        flex: none;
        width: 100%;
        padding: 0;
    }

    #exampleQueries .chat-prompt-chip {
        display: block;
        height: auto;
        min-height: 3rem;
        padding: 0.65rem 0.72rem !important;
        line-height: 1.3;
    }
}

@media (max-width: 399.98px) {
    #exampleQueries {
        gap: 0.5rem;
        --bs-gutter-x: 0.5rem;
        --bs-gutter-y: 0.5rem;
        margin-top: 0.75rem !important;
        margin-bottom: 0.45rem;
    }

    #exampleQueries .chat-prompt-chip {
        height: auto;
        min-height: 2.65rem;
        padding: 0.58rem 0.65rem !important;
        font-size: 0.81rem;
        line-height: 1.25;
    }
}
@media (max-width: 767.98px) {
    .persona-choice-grid {
        grid-template-columns: 1fr;
    }
}
@media (max-width: 767.98px) {
    .secondary-panel .card-body {
        padding: 1.25rem;
    }

    .secondary-content {
        font-size: 0.92rem;
        line-height: 1.72;
    }

    .secondary-content h4 {
        margin-top: 1.6rem;
    }

    .secondary-list li {
        gap: 0.6rem;
    }
}

@media (max-width: 991.98px) {
    .legal-side-stack {
        position: static;
    }
}

