/* Malitik account and purchase experience */
.app-body {
    min-height: 100vh;
    color: #111827;
    background: #f6f7f9;
}

.app-body a,
.app-body button,
.app-body input {
    -webkit-tap-highlight-color: transparent;
}

/* Public account header */
.app-header {
    background: rgba(255, 255, 255, 0.97);
    border-bottom: 1px solid #e7ebf0;
}

.app-header-inner {
    min-height: 72px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.app-nav {
    display: flex;
    align-items: center;
    gap: 0.65rem;
}

.app-nav-link {
    padding: 0.55rem 0.65rem;
    color: #667085;
    font-size: 0.82rem;
    font-weight: 550;
    text-decoration: none;
}

.app-nav-link:hover { color: #111827; }

.app-body--public .app-main {
    min-height: calc(100vh - 145px);
    padding: 5.5rem 1.5rem;
}

/* Authentication */
.auth-card {
    width: 100%;
    max-width: 460px;
    margin: 0 auto;
    padding: 2.5rem;
    background: #ffffff;
    border: 1px solid #e4e8ed;
    border-radius: 0.9rem;
    box-shadow: 0 18px 50px rgba(15, 23, 42, 0.07);
}

.auth-eyebrow {
    display: inline-block;
    margin-bottom: 0.8rem;
    color: #4f46e5;
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.07em;
    text-transform: uppercase;
}

.auth-card h1 {
    margin-bottom: 0.55rem;
    color: #111827;
    font-size: 1.65rem;
    font-weight: 720;
    letter-spacing: -0.035em;
}

.auth-subtitle {
    margin-bottom: 2rem;
    color: #667085;
    font-size: 0.87rem;
    line-height: 1.65;
}

.auth-switch {
    margin-top: 1.5rem;
    color: #667085;
    font-size: 0.8rem;
    text-align: center;
}

.auth-switch a,
.inline-link {
    color: #4f46e5;
    font-weight: 650;
    text-decoration: none;
}
.auth-label-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.45rem}.auth-label-row label{margin:0}.auth-label-row a{color:#4f46e5;font-size:.7rem;font-weight:650;text-decoration:none}.auth-result{display:grid;justify-items:center;gap:.55rem;margin-top:1.25rem;padding:1.35rem;color:#344054;background:#f7f8ff;border:1px solid #e0e7ff;border-radius:.7rem;text-align:center}.auth-result>i{color:#4f46e5;font-size:1.35rem}.auth-result strong{font-size:.8rem}.auth-result p{color:#667085;font-size:.72rem;line-height:1.55}.auth-result--error{background:#fff8f7;border-color:#fee4e2}.auth-result--error>i{color:#d92d20}.form-group .auth-label-row label{margin:0}
.order-shipping-link{display:inline-flex;align-items:center;gap:.3rem;margin-top:.35rem;padding:0;color:#4f46e5;background:none;border:0;font-size:.6rem;font-weight:650;cursor:pointer}.shipping-dialog{position:relative;width:min(420px,calc(100% - 2rem));margin:auto;padding:1.55rem;color:#111827;background:#fff;border:0;border-radius:.85rem;box-shadow:0 24px 70px rgba(15,23,42,.22)}.shipping-dialog::backdrop{background:rgba(15,23,42,.5);backdrop-filter:blur(2px)}.shipping-dialog-close{position:absolute;top:.85rem;right:.85rem;width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;color:#667085;background:#f2f4f7;border:0;border-radius:50%;cursor:pointer}.shipping-dialog-icon{width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;margin-bottom:.8rem;color:#4f46e5;background:#eef2ff;border-radius:.55rem}.shipping-dialog>small{display:block;color:#4f46e5;font-size:.58rem;font-weight:700}.shipping-dialog h2{margin:.25rem 0 1rem;font-size:1rem}.shipping-dialog-info{display:grid;gap:.1rem;padding:.3rem .85rem;background:#f8fafc;border-radius:.6rem}.shipping-dialog-info p{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.65rem 0;border-bottom:1px solid #e8ebef}.shipping-dialog-info p:last-child{border-bottom:0}.shipping-dialog-info span{color:#667085;font-size:.65rem}.shipping-dialog-info strong{color:#344054;font-size:.68rem;text-align:right}.shipping-dialog-empty{padding:1rem;color:#667085;background:#f8fafc;border-radius:.6rem;font-size:.7rem;line-height:1.55}

/* Forms */
.form-group { margin-bottom: 1.15rem; }

.form-group label {
    display: block;
    margin-bottom: 0.45rem;
    color: #344054;
    font-size: 0.77rem;
    font-weight: 650;
}

.form-group input[type="text"],
.form-group input[type="number"],
.form-group input[type="email"],
.form-group input[type="tel"],
.form-group input[type="password"],
.form-group input[type="file"] {
    width: 100%;
    min-height: 44px;
    padding: 0.72rem 0.85rem;
    color: #111827;
    background: #ffffff;
    border: 1px solid #dfe3e8;
    border-radius: 0.55rem;
    font: inherit;
    font-size: 0.84rem;
    transition: border-color 0.18s ease, box-shadow 0.18s ease;
}

.form-group input[type="file"] { padding: 0.55rem; }

.form-group input:focus {
    outline: none;
    border-color: #8178ed;
    box-shadow: 0 0 0 3px rgba(79, 70, 229, 0.09);
}

.form-hint {
    margin-top: 0.35rem;
    color: #98a2b3;
    font-size: 0.7rem;
    line-height: 1.55;
}

.form-checkbox {
    display: flex;
    align-items: flex-start;
    gap: 0.65rem;
    margin: 1.25rem 0;
    color: #667085;
    font-size: 0.76rem;
    line-height: 1.55;
    cursor: pointer;
}

.form-checkbox input { margin-top: 0.2rem; accent-color: #4f46e5; }
.form-actions { margin-top: 1.5rem; }
.form-actions .btn { width: 100%; }

.app-body .btn-primary {
    color: #ffffff;
    background: #111827;
    border-radius: 0.55rem;
    box-shadow: none;
}

.app-body .btn-primary:hover {
    background: #273449;
    box-shadow: none;
    transform: translateY(-1px);
}

.app-body .btn-secondary {
    color: #344054;
    background: #ffffff;
    border: 1px solid #dfe3e8;
    border-radius: 0.55rem;
}

.alert {
    margin-bottom: 1.25rem;
    padding: 0.85rem 1rem;
    border-radius: 0.55rem;
    font-size: 0.78rem;
    line-height: 1.55;
}

.alert-success { color: #067647; background: #ecfdf3; border: 1px solid #abefc6; }
.alert-error { color: #b42318; background: #fef3f2; border: 1px solid #fecdca; }

/* Dashboard shell */
.app-shell { display: flex; min-height: 100vh; }

.app-sidebar {
    position: sticky;
    top: 0;
    width: 238px;
    height: 100vh;
    flex: 0 0 238px;
    display: flex;
    flex-direction: column;
    padding: 1.25rem 1rem;
    background: #ffffff;
    border-right: 1px solid #e7ebf0;
}

.sidebar-brand {
    display: flex;
    align-items: center;
    gap: 0.65rem;
    padding: 0.4rem 0.65rem 1.25rem;
    margin-bottom: 0.75rem;
    color: #111827;
    text-decoration: none;
    border-bottom: 1px solid #eef0f3;
}

.sidebar-brand-text { font-size: 0.95rem; font-weight: 700; letter-spacing: -0.025em; }
.sidebar-menu-toggle { display: none; }

.sidebar-nav {
    display: flex;
    flex: 1;
    flex-direction: column;
    gap: 0.2rem;
}

.sidebar-link {
    display: flex;
    align-items: center;
    gap: 0.7rem;
    min-height: 42px;
    padding: 0.65rem 0.75rem;
    color: #667085;
    border-radius: 0.5rem;
    font-size: 0.8rem;
    font-weight: 550;
    text-decoration: none;
}

.sidebar-link i { width: 16px; color: #98a2b3; font-size: 0.78rem; text-align: center; }
.sidebar-link:hover { color: #111827; background: #f7f8fa; }
.sidebar-link.active { color: #4338ca; background: #f0f1ff; }
.sidebar-link.active i { color: #4f46e5; }
.sidebar-link--support { margin-top: auto; }
.sidebar-link--services { font-weight: 650; }
.sidebar-count { margin-left: auto; min-width: 20px; padding: 0.15rem 0.35rem; color: #4f46e5; background: #eef2ff; border-radius: 99px; font-size: 0.6rem; text-align: center; }

.sidebar-footer {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.9rem 0.5rem 0;
    margin-top: 0.75rem;
    border-top: 1px solid #eef0f3;
}

.sidebar-user {
    min-width: 0;
    flex: 1;
    display: flex;
    align-items: center;
    gap: 0.6rem;
    color: #111827;
    text-decoration: none;
}

.user-avatar {
    width: 34px;
    height: 34px;
    flex: 0 0 34px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    background: #111827;
    border-radius: 0.55rem;
    font-size: 0.75rem;
    font-weight: 700;
}

.sidebar-user-copy { min-width: 0; display: flex; flex: 1; flex-direction: column; gap: 0.12rem; }
.sidebar-user-name { overflow: hidden; color: #344054; font-size: 0.76rem; font-weight: 650; text-overflow: ellipsis; white-space: nowrap; }
.sidebar-user-copy small { color: #98a2b3; font-size: 0.6rem; }
.sidebar-user:hover .sidebar-user-name { color: #4f46e5; }
.sidebar-logout { width: 34px; height: 34px; display: inline-flex; align-items: center; justify-content: center; color: #98a2b3; border-radius: 0.5rem; text-decoration: none; }
.sidebar-logout:hover { color: #b42318; background: #fef3f2; }

.app-content-col { min-width: 0; flex: 1; display: flex; flex-direction: column; }
.app-body--dashboard .app-main { flex: 1; padding: 3rem; }
.app-content { width: 100%; max-width: 1120px; margin: 0 auto; }

.panel-header { margin-bottom: 2.25rem; }
.panel-eyebrow { display: block; margin-bottom: 0.6rem; color: #4f46e5; font-size: 0.65rem; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; }
.panel-header h1 { margin-bottom: 0.45rem; color: #111827; font-size: 1.75rem; font-weight: 720; letter-spacing: -0.04em; }
.panel-header p { color: #667085; font-size: 0.86rem; }

/* Profile overview */
.panel-welcome {
    margin-bottom: 1rem;
    padding: 1.65rem;
    background: #ffffff;
    border: 1px solid #e4e8ed;
    border-radius: 0.85rem;
}

.panel-welcome-inner { display: flex; align-items: center; justify-content: space-between; gap: 2rem; }
.panel-welcome-info { display: flex; align-items: center; gap: 1rem; }
.panel-welcome-avatar { width: 52px; height: 52px; display: inline-flex; align-items: center; justify-content: center; color: #ffffff; background: #111827; border-radius: 0.7rem; font-size: 1rem; font-weight: 700; }
.panel-welcome-title { color: #111827; font-size: 1.35rem; font-weight: 700; letter-spacing: -0.03em; }
.panel-welcome-title span { color: #4f46e5; }
.panel-welcome-sub { margin-top: 0.25rem; color: #98a2b3; font-size: 0.74rem; }
.panel-welcome-stats { display: flex; gap: 0.75rem; }
.panel-welcome-stat { min-width: 145px; display: flex; align-items: center; gap: 0.7rem; padding: 0.85rem 1rem; background: #f7f8fa; border-radius: 0.65rem; }
.panel-welcome-stat-icon { width: 34px; height: 34px; display: inline-flex; align-items: center; justify-content: center; color: #4f46e5; background: #eef2ff; border-radius: 0.55rem; font-size: 0.75rem; }
.panel-welcome-stat-value,.panel-welcome-stat-label { display: block; }
.panel-welcome-stat-value { color: #111827; font-size: 1rem; font-weight: 700; }
.panel-welcome-stat-label { color: #98a2b3; font-size: 0.65rem; }

.dashboard-actions { display: grid; grid-template-columns: repeat(2, 1fr); border: 1px solid #e4e8ed; border-radius: 0.75rem; overflow: hidden; }
.dashboard-actions a { min-height: 105px; padding: 1.25rem; color: #111827; background: #ffffff; text-decoration: none; }
.dashboard-actions a + a { border-left: 1px solid #e4e8ed; }
.dashboard-actions span { display: block; margin-bottom: 0.75rem; color: #4f46e5; font-size: 0.67rem; font-weight: 700; }
.dashboard-actions strong { display: block; font-size: 0.9rem; }
.dashboard-actions small { display: block; margin-top: 0.35rem; color: #98a2b3; font-size: 0.7rem; line-height: 1.5; }
.dashboard-actions a:hover { background: #fafbfc; }

.overview-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:2rem;margin-bottom:2rem}.overview-heading>div>span,.overview-section-head>div>span{display:block;margin-bottom:.45rem;color:#4f46e5;font-size:.62rem;font-weight:750;letter-spacing:.08em;text-transform:uppercase}.overview-heading h1{color:#111827;font-size:1.65rem;letter-spacing:-.04em}.overview-heading p{margin-top:.4rem;color:#667085;font-size:.78rem}.overview-heading>a{flex:0 0 auto}.overview-section+.overview-section{margin-top:2rem}.overview-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;margin-bottom:.85rem}.overview-section-head h2{font-size:1rem;letter-spacing:-.025em}.overview-section-head>a{color:#4f46e5;font-size:.65rem;font-weight:650;text-decoration:none}.overview-section-head>a i{margin-left:.3rem}.overview-service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.overview-service-card{--overview-accent:#4f46e5;--overview-soft:#eef2ff;display:grid;grid-template-columns:auto minmax(0,1fr);gap:.8rem;padding:1rem;background:#fff;border:1px solid #e3e7ec;border-radius:.75rem}.overview-service-card--teal{--overview-accent:#0f766e;--overview-soft:#ecfdf5}.overview-service-card--amber{--overview-accent:#b45309;--overview-soft:#fffbeb}.overview-service-card--rose{--overview-accent:#be185d;--overview-soft:#fdf2f8}.overview-service-icon{width:38px;height:38px;display:flex;align-items:center;justify-content:center;color:var(--overview-accent);background:var(--overview-soft);border-radius:.55rem;font-size:.72rem}.overview-service-copy small{color:#98a2b3;font-size:.54rem}.overview-service-copy h3{margin:.18rem 0 .3rem;font-size:.78rem}.overview-service-copy p{color:#667085;font-size:.6rem}.overview-service-copy p strong{color:#344054}.overview-service-actions{grid-column:1/-1;display:flex;gap:.45rem;padding-top:.7rem;border-top:1px solid #eef0f3}.overview-service-actions a{display:inline-flex;align-items:center;gap:.35rem;padding:.48rem .62rem;color:#fff;background:var(--overview-accent);border-radius:.45rem;font-size:.57rem;font-weight:650;text-decoration:none}.overview-service-actions a.is-musavir{background:#be185d}.overview-empty{display:flex;align-items:center;gap:.85rem;padding:1rem;background:#fff;border:1px solid #e3e7ec;border-radius:.75rem}.overview-empty>span{width:38px;height:38px;display:flex;align-items:center;justify-content:center;color:#4f46e5;background:#eef2ff;border-radius:.55rem}.overview-empty div{min-width:0}.overview-empty strong{font-size:.72rem}.overview-empty p{margin-top:.2rem;color:#667085;font-size:.62rem}.overview-empty>a{margin-left:auto;color:#4f46e5;font-size:.62rem;font-weight:650;text-decoration:none}.overview-operation-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(260px,.55fr);gap:.75rem}.overview-order-list,.overview-support-card{background:#fff;border:1px solid #e3e7ec;border-radius:.75rem}.overview-card-title{display:flex;align-items:center;justify-content:space-between;padding:.85rem 1rem;border-bottom:1px solid #eef0f3}.overview-card-title>div{display:flex;align-items:center;gap:.5rem}.overview-card-title i{color:#4f46e5;font-size:.65rem}.overview-card-title strong{font-size:.7rem}.overview-card-title>a{color:#667085;font-size:.56rem;text-decoration:none}.overview-order-row{display:grid;grid-template-columns:minmax(0,1fr) auto 90px;align-items:center;gap:.7rem;padding:.75rem 1rem;border-bottom:1px solid #eef0f3}.overview-order-row:last-child{border-bottom:0}.overview-order-row>div strong,.overview-order-row>div small{display:block}.overview-order-row>div strong{font-size:.66rem}.overview-order-row>div small{margin-top:.16rem;color:#98a2b3;font-size:.53rem}.overview-order-row>a{color:#4f46e5;font-size:.56rem;font-weight:650;text-align:right;text-decoration:none}.overview-support-card{display:flex;align-items:flex-start;flex-direction:column;padding:1rem}.overview-support-card>span{width:38px;height:38px;display:flex;align-items:center;justify-content:center;color:#0f766e;background:#ecfdf5;border-radius:.55rem}.overview-support-card>div{margin:1rem 0}.overview-support-card small{color:#0f766e;font-size:.56rem;font-weight:700}.overview-support-card h3{margin:.3rem 0;font-size:.78rem}.overview-support-card p{color:#667085;font-size:.61rem;line-height:1.5}.overview-support-card>a{margin-top:auto;color:#0f766e;font-size:.61rem;font-weight:650;text-decoration:none}.overview-card-empty{padding:1.5rem;color:#98a2b3;font-size:.62rem;text-align:center}

@media(max-width:820px){.overview-service-grid,.overview-operation-grid{grid-template-columns:1fr}.overview-heading{align-items:flex-start}.overview-support-card{min-height:190px}}@media(max-width:560px){.overview-heading{flex-direction:column;gap:1rem}.overview-heading>a{width:100%;justify-content:center}.overview-service-grid{grid-template-columns:1fr}.overview-empty{align-items:flex-start;flex-wrap:wrap}.overview-empty>a{width:100%;margin:0 0 0 3.3rem}.overview-order-row{grid-template-columns:minmax(0,1fr) auto}.overview-order-row>a{grid-column:1/-1;text-align:left}.overview-section-head{align-items:center}}

.overview-min-heading{max-width:680px;margin-bottom:1.5rem}.overview-min-heading>span{display:block;margin-bottom:.45rem;color:#4f46e5;font-size:.61rem;font-weight:750;letter-spacing:.08em;text-transform:uppercase}.overview-min-heading h1{color:#111827;font-size:1.55rem;letter-spacing:-.04em}.overview-min-heading p{margin-top:.4rem;color:#667085;font-size:.76rem}.overview-min-portals{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem;padding:.85rem 1rem;background:#111827;border-radius:.7rem}.overview-min-portals small,.overview-min-portals strong{display:block}.overview-min-portals small{color:#98a2b3;font-size:.52rem}.overview-min-portals strong{margin-top:.15rem;color:#fff;font-size:.68rem}.overview-min-portals nav{display:flex;gap:.45rem}.overview-min-portals a{display:inline-flex;align-items:center;gap:.4rem;padding:.55rem .7rem;color:#fff;background:#293548;border-radius:.45rem;font-size:.58rem;font-weight:650;text-decoration:none}.overview-min-portals a.is-musavir{background:#831843}.overview-min-portals a i:last-child{font-size:.48rem;opacity:.7}.overview-min-status{overflow:hidden;background:#fff;border:1px solid #e3e7ec;border-radius:.75rem}.overview-min-status-head{display:flex;align-items:center;justify-content:space-between;padding:.85rem 1rem;border-bottom:1px solid #eef0f3}.overview-min-status-head span{display:block;color:#98a2b3;font-size:.5rem;text-transform:uppercase}.overview-min-status-head h2{margin-top:.12rem;font-size:.76rem}.overview-min-status-head b{padding:.28rem .45rem;color:#4f46e5;background:#eef2ff;border-radius:99px;font-size:.52rem}.overview-min-clear{display:flex;align-items:center;gap:.75rem;padding:1rem}.overview-min-clear>span{width:34px;height:34px;display:flex;align-items:center;justify-content:center;color:#067647;background:#ecfdf3;border-radius:50%;font-size:.62rem}.overview-min-clear strong{font-size:.68rem}.overview-min-clear p{margin-top:.2rem;color:#98a2b3;font-size:.58rem}.overview-min-notices{display:grid}.overview-min-notice{--notice-color:#4f46e5;--notice-soft:#eef2ff;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.75rem;padding:.85rem 1rem;color:#111827;border-bottom:1px solid #eef0f3;text-decoration:none}.overview-min-notice:last-child{border-bottom:0}.overview-min-notice:hover{background:#fafbfc}.overview-min-notice--amber{--notice-color:#b54708;--notice-soft:#fffaeb}.overview-min-notice--blue{--notice-color:#175cd3;--notice-soft:#eff8ff}.overview-min-notice--rose{--notice-color:#b42318;--notice-soft:#fef3f2}.overview-min-notice>span{width:34px;height:34px;display:flex;align-items:center;justify-content:center;color:var(--notice-color);background:var(--notice-soft);border-radius:.5rem;font-size:.62rem}.overview-min-notice strong{font-size:.66rem}.overview-min-notice p{margin-top:.18rem;color:#667085;font-size:.57rem}.overview-min-notice em{color:var(--notice-color);font-size:.56rem;font-style:normal;font-weight:650}.overview-min-notice em i{margin-left:.25rem;font-size:.48rem}@media(max-width:620px){.overview-min-portals{align-items:flex-start;flex-direction:column}.overview-min-portals nav{width:100%;flex-direction:column}.overview-min-portals a{justify-content:space-between}.overview-min-notice{grid-template-columns:auto minmax(0,1fr)}.overview-min-notice em{grid-column:2}}

.overview-min-notice{grid-template-columns:auto minmax(0,1fr) auto auto}.overview-min-notice--green{--notice-color:#067647;--notice-soft:#ecfdf3}.overview-min-notice--neutral{--notice-color:#475467;--notice-soft:#f2f4f7}.overview-min-notice-copy{min-width:0;color:#111827;text-decoration:none}.overview-min-notice-copy strong,.overview-min-notice-copy p,.overview-min-notice-copy small{display:block}.overview-min-notice-copy small{margin-top:.25rem;color:#98a2b3;font-size:.5rem}.overview-min-notice-action{color:var(--notice-color);font-size:.56rem;font-weight:650;text-decoration:none;white-space:nowrap}.overview-min-notice-action i{margin-left:.25rem;font-size:.48rem}.overview-min-notice>form button{width:27px;height:27px;display:flex;align-items:center;justify-content:center;color:#98a2b3;background:transparent;border:0;border-radius:50%;cursor:pointer}.overview-min-notice>form button:hover{color:#344054;background:#eef0f3}@media(max-width:620px){.overview-min-notice{grid-template-columns:auto minmax(0,1fr) auto}.overview-min-notice-action{grid-column:2}.overview-min-notice>form{grid-column:3;grid-row:1;align-self:start}}

/* Services */
.service-page-header { max-width: 720px; margin-bottom: 1.6rem; }
.service-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.service-purchase-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); grid-auto-rows: 1fr; gap: 0.75rem; }
.service-card { --service-accent: #4f46e5; --service-soft: #eef2ff; position: relative; min-height: 268px; height: 100%; display: flex; flex-direction: column; overflow: hidden; padding: 1rem; color: #111827; background: #ffffff; border: 1px solid #e1e5ea; border-radius: 0.8rem; box-shadow: 0 4px 14px rgba(15,23,42,0.025); transition: transform 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease; }
.service-card::before { content: ''; position: absolute; top: 0; right: 0; left: 0; height: 4px; background: var(--service-accent); }
.service-card::after { content: ''; position: absolute; z-index: 0; top: -48px; right: -48px; width: 128px; height: 128px; background: var(--service-soft); border-radius: 50%; opacity: 0.72; pointer-events: none; }
.service-card:hover { border-color: color-mix(in srgb, var(--service-accent) 30%, #e1e5ea); box-shadow: 0 14px 34px rgba(15,23,42,0.07); transform: translateY(-2px); }
.service-card:focus-within { border-color: var(--service-accent); box-shadow: 0 0 0 3px color-mix(in srgb, var(--service-accent) 10%, transparent); }
.service-card--teal { --service-accent: #0f766e; --service-soft: #ecfdf5; }
.service-card--amber { --service-accent: #b45309; --service-soft: #fffbeb; }
.service-card--rose { --service-accent: #be185d; --service-soft: #fdf2f8; }
.service-card-top,.service-card-body,.service-card-availability,.service-card-actions { position: relative; z-index: 1; }
.service-card-top { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-bottom: 0.85rem; }
.service-badge { max-width: 72%; padding: 0.3rem 0.5rem; overflow: hidden; color: var(--service-accent); background: var(--service-soft); border-radius: 99px; font-size: 0.54rem; font-weight: 700; text-overflow: ellipsis; white-space: nowrap; }
.service-card .service-icon { width: 36px; height: 36px; display: inline-flex; flex: 0 0 auto; align-items: center; justify-content: center; color: #ffffff; background: var(--service-accent); border-radius: 0.58rem; box-shadow: 0 7px 16px color-mix(in srgb, var(--service-accent) 20%, transparent); font-size: 0.68rem; }
.service-card h2 { font-size: 0.95rem; letter-spacing: -0.025em; }
.service-price-block { margin-top: 0.7rem; }
.service-price-label { display: block; margin-bottom: 0.25rem; color: #98a2b3; font-size: 0.56rem; font-weight: 650; letter-spacing: 0.04em; text-transform: uppercase; }
.service-price { display: block; color: #111827; font-size: 1.15rem; font-weight: 760; letter-spacing: -0.035em; }
.service-price-suffix { display: block; margin-top: 0.2rem; color: #667085; font-size: 0.6rem; font-weight: 500; }
.service-alt-price { display: inline-flex; align-items: center; gap: 0.45rem; margin-top: 0.5rem; padding: 0.34rem 0.5rem; color: #667085; background: #f7f8fa; border-radius: 0.42rem; font-size: 0.58rem; }
.service-alt-price strong { color: #344054; }
.service-card-availability { display: flex; align-items: center; gap: 0.4rem; margin-top: auto; padding-top: 0.75rem; color: #667085; font-size: 0.58rem; font-weight: 550; }
.service-card-availability > span { width: 6px; height: 6px; background: #12b76a; border-radius: 50%; box-shadow: 0 0 0 3px #ecfdf3; }
.service-card-actions { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 0.5rem; margin-top: 0.75rem; padding-top: 0.75rem; border-top: 1px solid #eef0f3; }
.service-card-actions a { min-height: 38px; display: inline-flex; align-items: center; justify-content: center; border-radius: 0.55rem; font-size: 0.65rem; font-weight: 700; text-decoration: none; }
.service-apply { gap: 0.45rem; padding: 0.6rem 0.9rem; color: #ffffff; background: var(--service-accent); box-shadow: 0 6px 14px color-mix(in srgb, var(--service-accent) 18%, transparent); }
.service-apply:hover { filter: brightness(0.93); }
.service-apply i { font-size: 0.55rem; transition: transform 0.18s ease; }
.service-apply:hover i { transform: translateX(2px); }
.service-details { padding: 0.55rem 0.75rem; color: #475467; background: #ffffff; border: 1px solid #dfe3e8; }
.service-details:hover { color: var(--service-accent); border-color: color-mix(in srgb, var(--service-accent) 35%, #dfe3e8); }

.addon-services-section { margin-top: 2rem; padding-top: 1.6rem; border-top: 1px solid #e4e8ed; scroll-margin-top: 1.5rem; }
.addon-section-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 1rem; margin-bottom: 0.9rem; }
.addon-section-heading>div>span { display: block; margin-bottom: 0.35rem; color: #4f46e5; font-size: 0.56rem; font-weight: 700; letter-spacing: 0.07em; text-transform: uppercase; }
.addon-section-heading h2 { color: #111827; font-size: 1.05rem; letter-spacing: -0.025em; }
.addon-section-heading p { margin-top: 0.3rem; color: #667085; font-size: 0.66rem; }
.addon-section-heading>small { padding: 0.35rem 0.55rem; color: #667085; background: #ffffff; border: 1px solid #e1e5ea; border-radius: 99px; font-size: 0.54rem; white-space: nowrap; }
.addon-service-grid { display: grid; grid-template-columns: 1fr; gap: 0.75rem; }
.addon-service-card { --addon-accent: #4f46e5; --addon-soft: #eef2ff; display: grid; grid-template-columns: minmax(190px,.75fr) minmax(360px,1.25fr); align-items: center; gap: 1rem; padding: 1rem; background: #ffffff; border: 1px solid #e1e5ea; border-radius: 0.8rem; }
.addon-service-main { display: flex; align-items: center; gap: 0.8rem; min-width: 0; }
.addon-service-icon { width: 40px; height: 40px; display: inline-flex; flex: 0 0 auto; align-items: center; justify-content: center; color: #ffffff; background: var(--addon-accent); border-radius: 0.62rem; box-shadow: 0 7px 16px rgba(79,70,229,.18); font-size: 0.72rem; }
.addon-service-main>div { min-width: 0; }
.addon-service-main>div>span { display: block; overflow: hidden; color: var(--addon-accent); font-size: 0.52rem; font-weight: 700; text-overflow: ellipsis; white-space: nowrap; }
.addon-service-main h3 { margin-top: 0.25rem; font-size: 0.85rem; }
.addon-service-main p { margin-top: 0.2rem; color: #98a2b3; font-size: 0.55rem; }
.addon-package-list { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 0.5rem; }
.addon-package-list a,.addon-package-list>div { position: relative; min-height: 66px; display: flex; flex-direction: column; justify-content: center; padding: 0.7rem 1.7rem 0.7rem 0.75rem; color: #344054; background: #f8fafc; border: 1px solid #e7ebf0; border-radius: 0.58rem; text-decoration: none; transition: border-color .18s ease, background .18s ease, transform .18s ease; }
.addon-package-list span,.addon-package-list strong { display: block; }
.addon-package-list span { color: #667085; font-size: 0.55rem; }
.addon-package-list strong { margin-top: 0.2rem; color: #111827; font-size: 0.72rem; }
.addon-package-list a i { position: absolute; top: 50%; right: 0.7rem; color: #98a2b3; font-size: 0.5rem; transform: translateY(-50%); }
.addon-package-list a:hover { background: #f7f7ff; border-color: #a5b4fc; transform: translateY(-1px); }
.addon-package-list a:hover i { color: var(--addon-accent); }
.addon-service-card.is-locked .addon-package-list>div { color: #98a2b3; background: #fafbfc; }
.addon-requirement { grid-column: 1/-1; display: inline-flex; align-items: center; justify-content: center; gap: 0.4rem; margin-top: -0.25rem; padding: 0.65rem; color: #4f46e5; background: #f5f7ff; border-radius: 0.55rem; font-size: 0.6rem; font-weight: 700; text-decoration: none; }
.addon-requirement:hover { background: #eef2ff; }

/* Tables */
.table-card { overflow-x: auto; background: #ffffff; border: 1px solid #e4e8ed; border-radius: 0.75rem; }
.app-table { width: 100%; border-collapse: collapse; }
.app-table th,.app-table td { padding: 0.9rem 1rem; border-bottom: 1px solid #eef0f3; color: #344054; font-size: 0.78rem; text-align: left; }
.app-table th { color: #98a2b3; font-size: 0.65rem; font-weight: 700; letter-spacing: 0.05em; text-transform: uppercase; }
.app-table tr:last-child td { border-bottom: 0; }
.order-id { display: block; margin-top: 0.15rem; color: #98a2b3; font-size: 0.65rem; }
.order-expiry strong,.order-expiry small { display: block; white-space: nowrap; }
.order-expiry strong { color: #344054; font-size: 0.7rem; }
.order-expiry small { margin-top: 0.15rem; color: #667085; font-size: 0.6rem; }
.status-pill { display: inline-flex; padding: 0.28rem 0.55rem; border-radius: 99px; font-size: 0.65rem; font-weight: 650; white-space: nowrap; }
.status-odeme_bekliyor { color: #b54708; background: #fffaeb; }
.status-islemde { color: #175cd3; background: #eff8ff; }
.status-tamamlandi { color: #067647; background: #ecfdf3; }
.status-iptal { color: #b42318; background: #fef3f2; }
.table-action-link { color: #4f46e5; font-size: 0.72rem; font-weight: 650; text-decoration: none; white-space: nowrap; }
.table-action-muted { color: #c2c7d0; }
.portal-access-button { display: inline-flex; align-items: center; gap: 0.42rem; padding: 0.55rem 0.72rem; color: #ffffff; background: #4f46e5; border-radius: 0.5rem; box-shadow: 0 7px 18px rgba(79,70,229,0.2); font-size: 0.68rem; font-weight: 700; text-decoration: none; white-space: nowrap; transition: background 0.18s ease, transform 0.18s ease; }
.portal-access-button:hover { background: #3730a3; transform: translateY(-1px); }
.portal-access-list { display: flex; flex-wrap: wrap; gap: 0.45rem; }
.portal-access-button--musavir { background: #0f766e; box-shadow: 0 7px 18px rgba(15,118,110,0.2); }
.portal-access-button--musavir:hover { background: #115e59; }
.empty-state { padding: 4rem 1.5rem; color: #98a2b3; text-align: center; }
.empty-state-icon { display: block; margin-bottom: 1rem; font-size: 1.3rem; }
.empty-state p { margin-bottom: 1.25rem; font-size: 0.82rem; }

/* Application and profile forms */
.application-simple-page { width: 100%; max-width: 780px; margin: 0 auto; }
.application-simple-page > .back-link { margin-bottom: 1rem; }
.application-simple-header { display: grid; grid-template-columns: auto minmax(0,1fr) auto; align-items: center; gap: 0.9rem; margin-bottom: 0.8rem; padding: 1.15rem 1.25rem; background: #ffffff; border: 1px solid #e1e5ea; border-radius: 0.75rem; }
.application-simple-icon { --service-accent: #4f46e5; --service-soft: #eef2ff; width: 38px; height: 38px; display: inline-flex; align-items: center; justify-content: center; color: var(--service-accent); background: var(--service-soft); border-radius: 0.55rem; font-size: 0.75rem; }
.application-simple-icon.application-overview--teal { --service-accent: #0f766e; --service-soft: #ecfdf5; }
.application-simple-icon.application-overview--amber { --service-accent: #b45309; --service-soft: #fffbeb; }
.application-simple-icon.application-overview--rose { --service-accent: #be185d; --service-soft: #fdf2f8; }
.application-simple-header>div:nth-child(2)>span { display: block; margin-bottom: 0.2rem; color: #98a2b3; font-size: 0.56rem; font-weight: 650; }
.application-simple-header h1 { color: #111827; font-size: 1rem; letter-spacing: -0.025em; }
.application-simple-price { text-align: right; }
.application-simple-price strong,.application-simple-price small { display: block; }
.application-simple-price strong { color: #111827; font-size: 1rem; }
.application-simple-price small { max-width: 150px; margin-top: 0.15rem; color: #98a2b3; font-size: 0.54rem; line-height: 1.3; }
.application-heading { max-width: 760px; margin-bottom: 2rem; }
.application-heading .back-link { margin-bottom: 1.5rem; }
.application-heading h1 { margin-bottom: 0.55rem; color: #111827; font-size: 1.8rem; letter-spacing: -0.04em; }
.application-heading > p { color: #667085; font-size: 0.83rem; line-height: 1.65; }
.back-link { display: inline-flex; align-items: center; gap: 0.45rem; color: #667085; font-size: 0.68rem; font-weight: 650; text-decoration: none; }
.back-link:hover { color: #111827; }
.application-layout { display: grid; grid-template-columns: 300px minmax(0, 1fr); gap: 1.25rem; align-items: start; }
.application-overview { --service-accent: #4f46e5; --service-soft: #eef2ff; position: sticky; top: 2rem; overflow: hidden; padding: 1.5rem; background: #ffffff; border: 1px solid #e1e5ea; border-radius: 0.85rem; }
.application-overview::before { content: ''; position: absolute; top: 0; right: 0; left: 0; height: 3px; background: var(--service-accent); }
.application-overview--teal { --service-accent: #0f766e; --service-soft: #ecfdf5; }
.application-overview--amber { --service-accent: #b45309; --service-soft: #fffbeb; }
.application-overview--rose { --service-accent: #be185d; --service-soft: #fdf2f8; }
.application-overview .service-icon { width: 40px; height: 40px; display: inline-flex; align-items: center; justify-content: center; color: var(--service-accent); background: var(--service-soft); border-radius: 0.6rem; }
.application-badge { display: inline-flex; margin-left: 0.45rem; padding: 0.3rem 0.5rem; color: var(--service-accent); background: var(--service-soft); border-radius: 99px; font-size: 0.58rem; font-weight: 700; vertical-align: top; }
.application-overview h2 { margin: 1.15rem 0 0.45rem; font-size: 1.05rem; }
.application-overview > p { color: #667085; font-size: 0.73rem; line-height: 1.6; }
.application-overview > ul { display: grid; gap: 0.55rem; margin: 1.25rem 0; padding: 1.1rem 0; border-top: 1px solid #eef0f3; border-bottom: 1px solid #eef0f3; list-style: none; }
.application-overview li { display: flex; gap: 0.55rem; color: #475467; font-size: 0.68rem; line-height: 1.45; }
.application-overview li i { margin-top: 0.22rem; color: var(--service-accent); font-size: 0.55rem; }
.application-price small,.application-price strong,.application-price span { display: block; }
.application-price small { color: #98a2b3; font-size: 0.6rem; }
.application-price strong { margin-top: 0.3rem; color: #111827; font-size: 1.35rem; letter-spacing: -0.03em; }
.application-price span { margin-top: 0.15rem; color: #667085; font-size: 0.63rem; }
.application-trust { display: flex; gap: 0.55rem; margin-top: 1.2rem; padding: 0.75rem; color: #667085; background: #f8fafc; border-radius: 0.55rem; font-size: 0.6rem; line-height: 1.45; }
.application-trust i { margin-top: 0.15rem; color: #067647; }
.application-form,.profile-card { max-width: 760px; padding: 1.75rem; background: #ffffff; border: 1px solid #e4e8ed; border-radius: 0.85rem; }
.application-form--compact { max-width: none; padding: 1.3rem; border-radius: 0.75rem; }
.application-layout .application-form { max-width: none; }
.application-form-section + .application-form-section { margin-top: 2rem; padding-top: 1.75rem; border-top: 1px solid #eef0f3; }
.application-form--compact .application-form-section + .application-form-section { margin-top: 1.25rem; padding-top: 1.2rem; }
.application-form-section h2,.profile-card h2 { color: #111827; font-size: 0.95rem; }
.form-section-heading { display: flex; align-items: flex-start; gap: 0.75rem; margin-bottom: 1.25rem; }
.form-section-heading > span { width: 27px; height: 27px; display: inline-flex; flex: 0 0 27px; align-items: center; justify-content: center; color: #4f46e5; background: #eef2ff; border-radius: 50%; font-size: 0.58rem; font-weight: 700; }
.form-section-heading p { margin-top: 0.25rem; color: #98a2b3; font-size: 0.67rem; }
.form-section-heading--simple { margin-bottom: 0.9rem; }
.form-section-heading--simple h2 { font-size: 0.8rem; }
.form-section-heading--simple p { font-size: 0.6rem; }
.field-list { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 0.9rem; }
.field-list .form-group--wide { grid-column: 1 / -1; }
.field-list .form-group--wide textarea { width: 100%; min-height: 104px; resize: vertical; line-height: 1.55; }
.document-list { display: grid; gap: 0.75rem; }
.field-list .form-group,.document-list .form-group { margin: 0; }
.document-upload { padding: 0.9rem; background: #fafbfc; border: 1px solid #e7ebf0; border-radius: 0.6rem; }
.application-form--compact .document-upload { padding: 0.75rem; }
.document-help { display: block; margin: -0.15rem 0 0.55rem; color: #667085; font-size: 0.6rem; line-height: 1.5; }
.package-options { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 0.75rem; }
.package-options--three { grid-template-columns: repeat(3, minmax(0,1fr)); }
.package-option { position: relative; cursor: pointer; }
.package-option input { position: absolute; opacity: 0; pointer-events: none; }
.package-option > span { min-height: 72px; display: flex; flex-direction: column; justify-content: center; padding: 0.9rem 2.4rem 0.9rem 1rem; background: #ffffff; border: 1px solid #dfe3e8; border-radius: 0.65rem; transition: border-color 0.18s ease, box-shadow 0.18s ease; }
.package-option strong { color: #344054; font-size: 0.75rem; }
.package-option small { margin-top: 0.25rem; color: #111827; font-size: 0.9rem; font-weight: 700; }
.package-option > i { position: absolute; top: 50%; right: 1rem; display: none; color: #4f46e5; font-size: 0.7rem; transform: translateY(-50%); }
.package-option input:checked + span { border-color: #6f67df; box-shadow: 0 0 0 3px rgba(79,70,229,0.08); }
.package-option input:checked ~ i { display: block; }
.required-tag { color: #d92d20; }
.optional-tag { margin-left: 0.45rem; color: #98a2b3; font-size: 0.62rem; font-weight: 500; }
.application-submit .btn { min-height: 44px; }
.application-form--compact .application-submit { margin-top: 1.2rem; }
.application-submit > p { margin-top: 0.65rem; color: #98a2b3; font-size: 0.6rem; text-align: center; }
.application-confirm-dialog { position: fixed; inset: 0; width: min(440px, calc(100% - 2rem)); max-height: min(90vh, 560px); margin: auto; padding: 1.7rem; overflow-y: auto; color: #111827; background: #ffffff; border: 0; border-radius: 0.9rem; box-shadow: 0 24px 70px rgba(15,23,42,0.24); text-align: center; }
.application-confirm-dialog::backdrop { background: rgba(15,23,42,0.55); backdrop-filter: blur(2px); }
.application-confirm-icon { width: 46px; height: 46px; display: inline-flex; align-items: center; justify-content: center; margin-bottom: 1rem; color: #4f46e5; background: #eef2ff; border-radius: 50%; }
.application-confirm-dialog h2 { font-size: 1.05rem; letter-spacing: -0.025em; }
.application-confirm-dialog p { margin: 0.65rem auto 1.25rem; color: #667085; font-size: 0.76rem; line-height: 1.6; }
.application-confirm-actions { display: grid; grid-template-columns: 1fr 1.25fr; gap: 0.65rem; }
.application-confirm-actions .btn { justify-content: center; min-height: 43px; }

.payment-shell { max-width: 520px; margin: 0 auto; }
.payment-shell > .back-link { margin-bottom: 1rem; }
.payment-card,.success-card { max-width: 520px; margin: 0 auto; padding: 2.5rem; background: #ffffff; border: 1px solid #e4e8ed; border-radius: 0.85rem; text-align: center; box-shadow: 0 16px 45px rgba(15,23,42,0.06); }
.payment-card h1,.success-card h1 { color: #111827; font-size: 1.35rem; letter-spacing: -0.03em; }
.success-order-number { display: inline-flex; gap: 0.35rem; margin-top: 1rem; padding: 0.55rem 0.75rem; color: #667085; background: #f2f4f7; border-radius: 0.5rem; font-size: 0.7rem; }
.success-order-number strong { color: #4f46e5; }
.payment-lock { width: 42px; height: 42px; display: inline-flex; align-items: center; justify-content: center; margin-bottom: 1rem; color: #067647; background: #ecfdf3; border-radius: 50%; }
.payment-subtitle { margin-top: 0.45rem; color: #667085; font-size: 0.75rem; }
.payment-price-breakdown { display: grid; gap: 0.48rem; margin-top: 1.35rem; padding: 0 0.15rem; }
.payment-price-breakdown p { display: flex; align-items: center; justify-content: space-between; color: #667085; font-size: 0.7rem; }
.payment-price-breakdown strong { color: #344054; }
.payment-price-breakdown .payment-discount-row span,.payment-price-breakdown .payment-discount-row strong { color: #067647; }
.payment-total { display: flex; align-items: center; justify-content: space-between; margin: 1.5rem 0; padding: 1.15rem; background: #f8fafc; border: 1px solid #e7ebf0; border-radius: 0.65rem; text-align: left; }
.payment-total span { color: #667085; font-size: 0.7rem; }
.payment-total strong { color: #111827; font-size: 1.25rem; }
.payment-card form .btn { width: 100%; min-height: 48px; }
.payment-coupon { display: grid; gap: 0.75rem; margin: 0 0 1.2rem; padding: 0.85rem; background: #fafbfc; border: 1px solid #e7ebf0; border-radius: 0.65rem; text-align: left; }
.payment-coupon>div strong,.payment-coupon>div small { display: block; }
.payment-coupon>div strong { color: #344054; font-size: 0.68rem; }
.payment-coupon>div small { margin-top: 0.18rem; color: #98a2b3; font-size: 0.58rem; }
.payment-coupon form { display: flex; gap: 0.45rem; align-items: center; }
.payment-coupon input { min-width: 0; flex: 1; padding: 0.62rem 0.7rem; color: #344054; background: #fff; border: 1px solid #dfe3e8; border-radius: 0.48rem; font-size: 0.67rem; text-transform: uppercase; }
.payment-coupon input:focus { outline: 0; border-color: #8178ed; box-shadow: 0 0 0 3px rgba(79,70,229,.08); }
.payment-coupon button { flex: 0 0 auto; padding: 0.62rem 0.75rem; color: #fff; background: #344054; border: 0; border-radius: 0.48rem; font-size: 0.62rem; font-weight: 650; cursor: pointer; }
.payment-coupon-active { min-width: 0; flex: 1; display: inline-flex; align-items: center; gap: 0.4rem; padding: 0.58rem 0.65rem; color: #067647; background: #ecfdf3; border-radius: 0.48rem; font-size: 0.65rem; font-weight: 700; }
.order-price-discount { color: #067647 !important; }
.payment-assurances { display: flex; justify-content: center; gap: 1rem; margin-top: 1rem; color: #667085; font-size: 0.6rem; }
.payment-assurances i { margin-right: 0.25rem; color: #067647; }
.payment-note { margin-top: 1.5rem; color: #98a2b3; font-size: 0.7rem; line-height: 1.6; }
.success-icon { width: 52px; height: 52px; display: inline-flex; align-items: center; justify-content: center; margin-bottom: 1.25rem; color: #067647; background: #ecfdf3; border-radius: 50%; }
.success-card p { margin-top: 0.7rem; color: #667085; font-size: 0.8rem; line-height: 1.65; }

.support-grid { display: grid; grid-template-columns: repeat(2, 1fr); border-top: 1px solid #e4e8ed; border-left: 1px solid #e4e8ed; }
.support-grid a { min-height: 150px; padding: 1.5rem; color: #111827; background: #ffffff; border-right: 1px solid #e4e8ed; border-bottom: 1px solid #e4e8ed; text-decoration: none; }
.support-grid span { display: block; margin-bottom: 1rem; color: #4f46e5; font-size: 0.67rem; font-weight: 700; text-transform: uppercase; }
.support-grid strong { display: block; font-size: 0.95rem; }
.support-grid small { display: block; margin-top: 0.4rem; color: #98a2b3; font-size: 0.7rem; }

/* Support tickets */
.support-page-top { max-width: 900px; display: flex; align-items: flex-end; justify-content: space-between; gap: 2rem; margin-right: auto; margin-left: auto; }
.support-heading { max-width: 680px; }
.new-ticket-button { width: auto; min-height: 42px; margin-bottom: 2.25rem; padding: 0.7rem 1rem; }
.new-ticket-button i { margin-right: 0.4rem; }
.support-contact-strip { max-width: 900px; display: flex; align-items: center; justify-content: space-between; gap: 1.25rem; margin: -0.8rem auto 1.25rem; padding: 0.85rem 1rem; background: #ffffff; border: 1px solid #e1e5ea; border-radius: 0.75rem; }
.support-contact-copy { display: flex; align-items: center; gap: 0.7rem; min-width: 0; }
.support-contact-icon { width: 34px; height: 34px; display: inline-flex; flex: 0 0 auto; align-items: center; justify-content: center; color: #4f46e5; background: #eef2ff; border-radius: 0.55rem; font-size: 0.68rem; }
.support-contact-copy strong,.support-contact-copy small { display: block; }
.support-contact-copy strong { color: #111827; font-size: 0.7rem; }
.support-contact-copy small { margin-top: 0.15rem; color: #667085; font-size: 0.58rem; }
.support-phone-list { display: flex; align-items: center; gap: 0.45rem; }
.support-phone-list a { padding: 0.52rem 0.7rem; color: #344054; background: #f8fafc; border: 1px solid #e7ebf0; border-radius: 0.5rem; font-size: 0.62rem; font-weight: 650; text-decoration: none; white-space: nowrap; transition: border-color .18s ease, color .18s ease, background .18s ease; }
.support-phone-list a:hover { color: #4338ca; background: #f7f7ff; border-color: #c7d2fe; }
.ticket-create-card,.ticket-history-card,.ticket-conversation { background: #ffffff; border: 1px solid #e1e5ea; border-radius: 0.85rem; }
.ticket-create-card { position: relative; padding: 1.65rem; border: 0; }
.ticket-history-card { overflow: hidden; }
.ticket-dialog { width: min(92vw, 520px); max-height: 90vh; margin: auto; padding: 0; overflow-y: auto; background: #ffffff; border: 0; border-radius: 0.85rem; box-shadow: 0 24px 70px rgba(15,23,42,0.2); }
.ticket-dialog::backdrop { background: rgba(15,23,42,0.46); backdrop-filter: blur(2px); }
.ticket-dialog-close { position: absolute; z-index: 2; top: 1rem; right: 1rem; width: 32px; height: 32px; display: inline-flex; align-items: center; justify-content: center; color: #667085; background: #f2f4f7; border: 0; border-radius: 50%; cursor: pointer; }
.ticket-dialog-close:hover { color: #111827; }
.ticket-card-heading { margin-bottom: 1.4rem; }
.ticket-card-heading > span { display: block; margin-bottom: 0.45rem; color: #4f46e5; font-size: 0.61rem; font-weight: 700; letter-spacing: 0.07em; text-transform: uppercase; }
.ticket-card-heading h2 { color: #111827; font-size: 1rem; letter-spacing: -0.02em; }
.ticket-card-heading p { margin-top: 0.35rem; color: #667085; font-size: 0.7rem; line-height: 1.5; }
.ticket-history-card > .ticket-card-heading { margin: 0; padding: 1.35rem 1.4rem 1rem; border-bottom: 1px solid #edf0f3; }
.ticket-history-card--wide { width: 100%; max-width: 900px; margin: 0 auto; }
.ticket-history-heading { display: flex; align-items: center; justify-content: space-between; gap: 1rem; }
.ticket-history-heading>div>p { margin-top: 0.35rem; color: #667085; font-size: 0.65rem; }
.ticket-history-heading>b { padding: 0.35rem 0.55rem; color: #667085; background: #f2f4f7; border-radius: 99px; font-size: 0.58rem; font-weight: 650; white-space: nowrap; }
.ticket-create-card select,.ticket-create-card textarea,.ticket-reply textarea { width: 100%; padding: 0.72rem 0.85rem; color: #111827; background: #ffffff; border: 1px solid #dfe3e8; border-radius: 0.55rem; font: inherit; font-size: 0.78rem; }
.ticket-create-card select { min-height: 44px; }
.ticket-create-card textarea,.ticket-reply textarea { resize: vertical; line-height: 1.5; }
.ticket-create-card select:focus,.ticket-create-card textarea:focus,.ticket-reply textarea:focus { outline: none; border-color: #8178ed; box-shadow: 0 0 0 3px rgba(79,70,229,0.09); }
.ticket-submit { width: 100%; min-height: 46px; }
.ticket-user-list { max-height: 540px; overflow-y: auto; }
.ticket-user-list a { display: grid; grid-template-columns: minmax(0,1fr) auto auto; align-items: center; gap: 1rem; min-height: 68px; padding: 0.8rem 1.25rem; color: #111827; border-bottom: 1px solid #edf0f3; text-decoration: none; }
.ticket-user-list a:last-child { border-bottom: 0; }
.ticket-user-list a:hover,.ticket-user-list a.active { background: #f7f8ff; }
.ticket-user-list a div { min-width: 0; }
.ticket-user-list strong,.ticket-user-list small { display: block; }
.ticket-user-list strong { overflow: hidden; font-size: 0.72rem; text-overflow: ellipsis; white-space: nowrap; }
.ticket-user-list small { margin-top: 0.2rem; color: #98a2b3; font-size: 0.55rem; }
.ticket-open-icon { color: #b5bcc7; font-size: 0.6rem; }
.ticket-status { display: inline-flex; flex: 0 0 auto; padding: 0.27rem 0.48rem; border-radius: 99px; font-size: 0.54rem; font-weight: 650; }
.ticket-acik,.ticket-yanit_bekliyor { color: #b54708; background: #fffaeb; }
.ticket-cevaplandi { color: #175cd3; background: #eff8ff; }
.ticket-kapali { color: #667085; background: #f2f4f7; }
.ticket-empty { padding: 3.5rem 1rem; color: #98a2b3; text-align: center; }
.ticket-empty i { margin-bottom: 0.75rem; }
.ticket-empty p { font-size: 0.67rem; }
.ticket-empty button { margin-top: 0.85rem; padding: 0.55rem 0.75rem; color: #4f46e5; background: #eef2ff; border: 0; border-radius: 0.5rem; font-size: 0.62rem; font-weight: 650; cursor: pointer; }
.ticket-conversation { max-width: 900px; margin: 0 auto; overflow: hidden; }
.ticket-conversation-back { padding: 0.85rem 1.35rem; border-bottom: 1px solid #edf0f3; }
.ticket-conversation-back a { display: inline-flex; align-items: center; gap: 0.4rem; color: #667085; font-size: 0.61rem; font-weight: 650; text-decoration: none; }
.ticket-conversation-back a:hover { color: #111827; }
.ticket-conversation-head { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: 1.15rem 1.35rem; border-bottom: 1px solid #edf0f3; }
.ticket-conversation-head>div>span { color: #4f46e5; font-size: 0.56rem; font-weight: 650; }
.ticket-conversation-head h2 { margin-top: 0.25rem; font-size: 0.85rem; }
.ticket-messages { display: grid; gap: 0.75rem; max-height: 440px; overflow-y: auto; padding: 1.35rem; }
.ticket-messages article { max-width: 72%; padding: 0.75rem 0.85rem; border-radius: 0.65rem; }
.ticket-messages .from-me { justify-self: end; background: #eef2ff; }
.ticket-messages .from-support { background: #f2f4f7; }
.ticket-messages strong,.ticket-messages time { display: block; font-size: 0.53rem; }
.ticket-messages strong { color: #667085; }
.ticket-messages p { margin: 0.35rem 0; color: #344054; font-size: 0.66rem; line-height: 1.55; }
.ticket-messages time { color: #98a2b3; }
.ticket-reply { display: grid; grid-template-columns: 1fr auto; gap: 0.65rem; padding: 1rem 1.35rem; border-top: 1px solid #edf0f3; }
.ticket-reply button { padding: 0 1rem; color: #ffffff; background: #111827; border: 0; border-radius: 0.55rem; font-size: 0.65rem; font-weight: 650; cursor: pointer; }

/* Footer */
.app-footer { display: flex; flex-direction: column; gap: 0.7rem; padding: 1rem 2rem; color: #98a2b3; border-top: 1px solid #e7ebf0; font-size: 0.66rem; }
.app-footer-inner { display: flex; flex-direction: column; gap: 0.7rem; }
.app-footer--public { padding: 1rem 0; background: #ffffff; }
.app-footer-top { width: 100%; display: flex; align-items: center; justify-content: space-between; gap: 1rem; }
.app-footer-links { display: flex; flex-wrap: wrap; align-items: center; gap: 0.5rem 0.9rem; }
.app-footer-links > a { color: #667085; text-decoration: none; }
.app-footer-links > a:hover { color: #111827; }
.footer-payment-image { display: block; width: 190px; max-width: 42vw; height: auto; }

.admin-simple { max-width: 1100px; }

@media (max-width: 1280px) {
    .service-purchase-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 1024px) {
    .app-shell { flex-direction: column; }
    .app-sidebar { position: static; width: 100%; height: auto; flex: none; flex-direction: row; align-items: center; gap: 1rem; padding: 0.75rem 1.25rem; border-right: 0; border-bottom: 1px solid #e7ebf0; }
    .sidebar-brand { margin: 0; padding: 0; border: 0; }
    .sidebar-nav { flex-direction: row; padding: 0; overflow-x: auto; }
    .sidebar-link { flex-shrink: 0; }
    .sidebar-link--support { margin-top: 0; }
    .sidebar-footer { margin: 0; padding: 0; border: 0; }
    .sidebar-user-copy { display: none; }
    .app-body--dashboard .app-main { padding: 2.5rem 1.5rem; }
    .application-layout { grid-template-columns: 260px minmax(0,1fr); }
    .addon-service-card { grid-template-columns: 1fr; }
}

@media (max-width: 768px) {
    .app-sidebar { display: grid; grid-template-columns: minmax(0,1fr) auto auto; gap: 0.6rem; padding: 0.75rem 1rem; }
    .sidebar-menu-toggle { grid-column: 2; display: inline-flex; width: 36px; height: 36px; align-items: center; justify-content: center; color: #111827; background: #ffffff; border: 1px solid #dfe3e8; border-radius: 0.5rem; }
    .sidebar-footer { grid-column: 3; }
    .sidebar-nav { display: none; grid-column: 1/-1; grid-row: 2; flex-direction: column; padding: 0.5rem; background: #f7f8fa; border: 1px solid #e4e8ed; border-radius: 0.65rem; }
    .sidebar-nav.is-open { display: flex; }
    .panel-welcome-inner { align-items: stretch; flex-direction: column; }
    .panel-welcome-stats { width: 100%; }
    .panel-welcome-stat { flex: 1; }
    .dashboard-actions { grid-template-columns: 1fr; }
    .dashboard-actions a + a { border-top: 1px solid #e4e8ed; border-left: 0; }
    .service-grid,.support-grid { grid-template-columns: 1fr; }
    .service-card,.support-grid a { border-left: 1px solid #e1e5ea; }
    .addon-service-grid { grid-template-columns: 1fr; }
    .application-layout { grid-template-columns: 1fr; }
    .application-overview { position: static; }
    .app-footer { padding: 1rem 1.25rem; }
}

@media (max-width: 560px) {
    .app-header-inner { min-height: 64px; }
    .app-nav-link:first-child { display: none; }
    .app-body--public .app-main { padding: 3.5rem 1rem; }
    .auth-card { padding: 1.75rem 1.4rem; }
    .app-body--dashboard .app-main { padding: 2rem 1rem; }
    .panel-welcome { padding: 1.4rem; }
    .panel-welcome-stats { flex-direction: column; }
    .panel-welcome-stat { width: 100%; }
    .service-card { min-height: 260px; padding: 1rem; }
    .service-card-actions { grid-template-columns: minmax(0,1fr) auto; }
    .addon-section-heading { align-items: flex-start; }
    .addon-package-list { grid-template-columns: 1fr; }
    .addon-package-list a,.addon-package-list>div { min-height: 58px; }
    .field-list,.package-options,.package-options--three { grid-template-columns: 1fr; }
    .application-confirm-actions { grid-template-columns: 1fr; }
    .application-form { padding: 1.4rem; }
    .application-simple-header { grid-template-columns: auto minmax(0,1fr); padding: 1rem; }
    .application-simple-price { grid-column: 2; text-align: left; }
    .payment-card,.success-card { padding: 2rem 1.4rem; }
    .payment-assurances { align-items: flex-start; flex-direction: column; }
    .ticket-reply { grid-template-columns: 1fr; }
    .support-page-top { align-items: flex-start; flex-direction: column; gap: 0; }
    .new-ticket-button { margin: -1rem 0 1.5rem; }
    .support-contact-strip { align-items: stretch; flex-direction: column; margin-top: -0.5rem; }
    .support-phone-list { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); }
    .support-phone-list a { text-align: center; }
    .ticket-history-heading { align-items: flex-start; flex-direction: column; }
    .ticket-user-list a { grid-template-columns: minmax(0,1fr) auto; gap: 0.65rem; }
    .ticket-open-icon { display: none; }
    .ticket-reply button { min-height: 42px; }
    .ticket-messages article { max-width: 88%; }
    .footer-payment-image { width: 165px; max-width: 48vw; }
}
