:root {
    --uh-orange: #FF5A1F;
    --uh-orange-dark: #e84d13;
    --uh-dark: #171717;
    --uh-muted: #707070;
    --uh-border: #e8e8e8;
    --uh-bg: #f7f7f7;
}

.uh-wrap {
    max-width: 980px;
    margin: 30px auto;
    padding: 32px;
    background: #fff;
    border: 1px solid var(--uh-border);
    border-radius: 24px;
    box-shadow: 0 18px 60px rgba(0,0,0,.07);
    color: var(--uh-dark);
}

.uh-header { text-align: center; margin-bottom: 28px; }
.uh-kicker { color: var(--uh-orange); font-weight: 800; letter-spacing: .12em; font-size: 13px; }
.uh-header h2 { font-size: clamp(28px,4vw,44px); margin: 8px 0 10px; line-height: 1.1; }
.uh-header p { color: var(--uh-muted); max-width: 700px; margin: 0 auto; }

.uh-progress { margin: 28px 0 34px; }
.uh-progress-bar { height: 8px; background: #f0f0f0; border-radius: 999px; overflow: hidden; }
.uh-progress-bar span { display: block; height: 100%; background: var(--uh-orange); transition: width .25s ease; }
.uh-progress-text { margin-top: 8px; text-align: right; color: var(--uh-muted); font-size: 14px; }

.uh-step { display: none; }
.uh-step.is-active { display: block; animation: uhFade .25s ease; }
.uh-step h3 { font-size: 25px; margin: 0 0 22px; }

.uh-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px; }
.uh-full { display: block; }
.uh-top-space { margin-top: 22px; }

.uh-wrap label > span:first-child { display: block; font-weight: 700; margin-bottom: 8px; }
.uh-wrap input[type="text"],
.uh-wrap input[type="number"],
.uh-wrap select,
.uh-wrap textarea {
    width: 100%;
    border: 1px solid var(--uh-border);
    background: #fff;
    border-radius: 12px;
    min-height: 50px;
    padding: 12px 14px;
    font: inherit;
    box-sizing: border-box;
}
.uh-wrap textarea { min-height: 130px; resize: vertical; }

.uh-choice-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 14px; }
.uh-choice input { position: absolute; opacity: 0; pointer-events: none; }
.uh-choice span {
    display: flex !important;
    min-height: 72px;
    align-items: center;
    justify-content: center;
    border: 2px solid var(--uh-border);
    border-radius: 14px;
    cursor: pointer;
    transition: .2s ease;
}
.uh-choice input:checked + span { border-color: var(--uh-orange); background: #fff3ee; color: var(--uh-orange); }

.uh-upload {
    display: block;
    border: 2px dashed #d8d8d8;
    border-radius: 18px;
    padding: 34px;
    text-align: center;
    cursor: pointer;
    background: var(--uh-bg);
}
.uh-upload input { display: none; }
.uh-upload strong, .uh-upload span { display: block; }
.uh-upload strong { font-size: 18px; color: var(--uh-orange); }
.uh-upload span { color: var(--uh-muted); margin-top: 5px; }
#uh-file-list { margin-top: 12px; color: var(--uh-muted); }

.uh-package-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; }
.uh-package input { position: absolute; opacity: 0; pointer-events: none; }
.uh-package-card {
    display: block !important;
    height: 100%;
    border: 2px solid var(--uh-border);
    border-radius: 18px;
    padding: 24px;
    cursor: pointer;
    position: relative;
    transition: .2s ease;
    box-sizing: border-box;
}
.uh-package input:checked + .uh-package-card { border-color: var(--uh-orange); box-shadow: 0 12px 30px rgba(255,90,31,.14); }
.uh-package-card em {
    display: inline-block;
    background: var(--uh-orange);
    color: #fff;
    border-radius: 999px;
    padding: 5px 10px;
    font-size: 11px;
    font-style: normal;
    margin-bottom: 12px;
}
.uh-package-card strong { display: block; font-size: 21px; margin-bottom: 10px; }
.uh-package-card b { display: block; color: var(--uh-orange); font-size: 27px; margin-bottom: 18px; }
.uh-package-card ul { padding-left: 18px; color: var(--uh-muted); margin: 0; }
.uh-package-card li { margin: 8px 0; }
.uh-note { color: var(--uh-muted); font-size: 13px; }

.uh-summary { border: 1px solid var(--uh-border); border-radius: 16px; overflow: hidden; margin-bottom: 20px; }
.uh-summary div { display: flex; justify-content: space-between; gap: 20px; padding: 14px 16px; border-bottom: 1px solid var(--uh-border); }
.uh-summary div:last-child { border-bottom: 0; }
.uh-summary span { color: var(--uh-muted); }

.uh-consent { display: flex; gap: 10px; align-items: flex-start; }
.uh-consent input { margin-top: 5px; }
.uh-consent span { font-weight: 400 !important; margin: 0 !important; }

.uh-actions { display: flex; justify-content: space-between; gap: 12px; margin-top: 30px; }
.uh-btn {
    appearance: none;
    border: 0;
    border-radius: 12px;
    background: var(--uh-orange);
    color: #fff;
    padding: 14px 24px;
    font-weight: 800;
    cursor: pointer;
    min-width: 140px;
}
.uh-btn:hover { background: var(--uh-orange-dark); }
.uh-btn:disabled { opacity: .45; cursor: not-allowed; }
.uh-btn-secondary { background: #ededed; color: #222; }
.uh-btn-secondary:hover { background: #dedede; }
.uh-submit { display: none; margin-left: auto; }

#uh-message { margin-top: 14px; font-weight: 700; }
#uh-message.error { color: #b42318; }
#uh-message.success { color: #067647; }

@keyframes uhFade { from { opacity:0; transform:translateY(6px); } to { opacity:1; transform:none; } }

@media (max-width: 760px) {
    .uh-wrap { padding: 20px; border-radius: 18px; }
    .uh-grid, .uh-choice-grid, .uh-package-grid { grid-template-columns: 1fr; }
    .uh-actions { position: sticky; bottom: 0; background:#fff; padding: 12px 0; z-index: 3; }
    .uh-btn { min-width: 0; flex: 1; }
    .uh-summary div { flex-direction: column; gap: 4px; }
}


/* Fotoğraf üzerinde yerleşim çizim editörü */
.uh-editor {
    margin-top: 24px;
    padding: 20px;
    border: 1px solid var(--uh-border);
    border-radius: 18px;
    background: #fafafa;
}
.uh-editor[hidden] { display: none !important; }
.uh-editor-head {
    display: flex;
    justify-content: space-between;
    gap: 18px;
    align-items: flex-start;
    margin-bottom: 16px;
}
.uh-editor-head strong { display: block; font-size: 18px; }
.uh-editor-head span:not(.uh-editor-status) { display: block; color: var(--uh-muted); margin-top: 4px; }
.uh-editor-status {
    white-space: nowrap;
    border-radius: 999px;
    background: #fff1ec;
    color: var(--uh-orange);
    padding: 7px 11px;
    font-size: 12px;
    font-weight: 800;
}
.uh-editor-status.is-saved { background: #e9f8ef; color: #087443; }

.uh-editor-tools {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
    margin-bottom: 14px;
}
.uh-tool,
.uh-small-btn {
    appearance: none;
    border: 1px solid #d8d8d8;
    background: #fff;
    color: #222;
    border-radius: 10px;
    padding: 9px 12px;
    font-weight: 700;
    cursor: pointer;
}
.uh-tool.is-active {
    border-color: var(--uh-orange);
    background: #fff1ec;
    color: var(--uh-orange);
}
.uh-color-label,
.uh-size-label {
    display: flex;
    align-items: center;
    gap: 7px;
    margin: 0 0 0 4px;
    font-size: 13px;
    font-weight: 700;
}
.uh-color-label input { width: 38px; height: 32px; padding: 2px; border: 1px solid #ddd; border-radius: 8px; }
.uh-size-label input { width: 100px; }

.uh-canvas-shell {
    padding: 10px;
    border: 1px solid var(--uh-border);
    border-radius: 14px;
    background: #292929;
    overflow: hidden;
}
#uh-design-canvas {
    display: block;
    width: 100%;
    height: auto;
    max-height: 680px;
    object-fit: contain;
    background: #fff;
    border-radius: 8px;
    touch-action: none;
    cursor: crosshair;
}
.uh-canvas-help {
    margin: 8px 0 0;
    color: #ddd;
    text-align: center;
    font-size: 12px;
}
.uh-editor-actions {
    display: flex;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 12px;
}
.uh-small-primary {
    border-color: var(--uh-orange);
    background: var(--uh-orange);
    color: #fff;
}

@media (max-width: 760px) {
    .uh-editor { padding: 14px; }
    .uh-editor-head { flex-direction: column; gap: 10px; }
    .uh-editor-tools { align-items: stretch; }
    .uh-tool { flex: 1 1 29%; }
    .uh-color-label, .uh-size-label { flex: 1 1 45%; margin-left: 0; }
    .uh-editor-actions .uh-small-btn { flex: 1; }
}


.uh-service-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
}
.uh-service input { position: absolute; opacity: 0; pointer-events: none; }
.uh-service > span {
    display: flex !important;
    min-height: 130px;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 10px;
    border: 2px solid var(--uh-border);
    border-radius: 16px;
    cursor: pointer;
    text-align: center;
    transition: .2s ease;
}
.uh-service i { font-style: normal; font-size: 34px; }
.uh-service strong { font-size: 15px; }
.uh-service input:checked + span {
    border-color: var(--uh-orange);
    background: #fff3ee;
    color: var(--uh-orange);
}
.uh-service-fields {
    padding: 18px;
    border-radius: 16px;
    background: #fafafa;
    border: 1px solid var(--uh-border);
}
.uh-marker-tools {
    display: contents;
}

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


/* Galeri ve yönlendirmeli kamera çekimi */
.uh-hidden-file {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    opacity: 0 !important;
    pointer-events: none !important;
}
.uh-photo-source-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}
.uh-photo-source {
    appearance: none;
    border: 2px solid var(--uh-border);
    border-radius: 18px;
    background: #fff;
    min-height: 150px;
    padding: 22px;
    text-align: left;
    cursor: pointer;
    transition: .2s ease;
}
.uh-photo-source:hover {
    border-color: var(--uh-orange);
    background: #fff7f3;
}
.uh-photo-source-icon {
    display: grid;
    place-items: center;
    width: 42px;
    height: 42px;
    margin-bottom: 13px;
    border-radius: 12px;
    background: #fff0e9;
    color: var(--uh-orange);
    font-size: 24px;
}
.uh-photo-source strong,
.uh-photo-source small {
    display: block;
}
.uh-photo-source strong {
    margin-bottom: 5px;
    font-size: 17px;
}
.uh-photo-source small {
    color: var(--uh-muted);
    line-height: 1.45;
}
.uh-photo-list {
    display: grid;
    gap: 8px;
    margin-top: 14px;
}
.uh-photo-item {
    display: flex;
    gap: 10px;
    align-items: center;
    padding: 10px 12px;
    border-radius: 10px;
    background: #f7f7f7;
}
.uh-photo-item span {
    border-radius: 999px;
    padding: 4px 8px;
    background: #fff0e9;
    color: var(--uh-orange);
    font-size: 11px;
    font-weight: 800;
}
.uh-camera-panel {
    margin-top: 18px;
    padding: 16px;
    border: 1px solid var(--uh-border);
    border-radius: 18px;
    background: #171717;
    color: #fff;
}
.uh-camera-panel[hidden] { display: none !important; }
.uh-camera-head {
    display: flex;
    justify-content: space-between;
    gap: 15px;
    align-items: flex-start;
    margin-bottom: 12px;
}
.uh-camera-head strong,
.uh-camera-head span {
    display: block;
}
.uh-camera-head span {
    margin-top: 4px;
    color: #d5d5d5;
    font-size: 13px;
}
.uh-camera-close {
    border: 0;
    background: transparent;
    color: #fff;
    font-size: 30px;
    cursor: pointer;
}
.uh-camera-stage {
    position: relative;
    overflow: hidden;
    border-radius: 14px;
    background: #000;
    aspect-ratio: 16 / 10;
}
#uh-camera-video {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.uh-camera-guide {
    position: absolute;
    inset: 10%;
    border: 2px dashed rgba(255,255,255,.8);
    border-radius: 18px;
    pointer-events: none;
}
.uh-camera-guide span {
    position: absolute;
    top: -1px;
    left: 50%;
    transform: translate(-50%, -50%);
    padding: 5px 9px;
    border-radius: 999px;
    background: var(--uh-orange);
    color: #fff;
    font-size: 12px;
    font-weight: 800;
}
.uh-camera-actions {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    gap: 12px;
    margin-top: 14px;
}
.uh-camera-actions .uh-small-btn:last-child {
    justify-self: end;
}
.uh-camera-capture {
    width: 64px;
    height: 64px;
    border: 6px solid #fff;
    border-radius: 50%;
    background: var(--uh-orange);
    cursor: pointer;
}
.uh-camera-thumbs {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 8px;
    margin-top: 14px;
}
.uh-camera-thumb {
    position: relative;
    overflow: hidden;
    border-radius: 9px;
    aspect-ratio: 1;
    background: #333;
}
.uh-camera-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.uh-camera-thumb button {
    position: absolute;
    top: 3px;
    right: 3px;
    width: 24px;
    height: 24px;
    border: 0;
    border-radius: 50%;
    background: rgba(0,0,0,.72);
    color: #fff;
    cursor: pointer;
}
.uh-camera-note {
    margin: 12px 0 0;
    color: #bdbdbd;
    font-size: 12px;
    line-height: 1.45;
}

@media (max-width: 760px) {
    .uh-photo-source-grid { grid-template-columns: 1fr; }
    .uh-photo-source { min-height: 118px; }
    .uh-camera-stage { aspect-ratio: 3 / 4; }
    .uh-camera-actions {
        grid-template-columns: 1fr auto 1fr;
    }
    .uh-camera-actions .uh-small-btn {
        padding: 8px;
        font-size: 12px;
    }
    .uh-camera-thumbs { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}


/* Yapay zekâ dekorasyon önerisi */
.uh-detail-block {
    display: block;
}
.uh-detail-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    margin-bottom: 9px;
}
.uh-detail-head label {
    font-weight: 700;
}
.uh-ai-suggest {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    min-height: 40px;
    padding: 9px 15px;
    border: 1px solid rgba(255,90,31,.28);
    border-radius: 11px;
    background: #fff4ef;
    color: #d94712;
    font-weight: 800;
    cursor: pointer;
    transition: .2s ease;
}
.uh-ai-suggest:hover {
    border-color: var(--uh-orange);
    background: var(--uh-orange);
    color: #fff;
    transform: translateY(-1px);
}
.uh-ai-suggest:disabled {
    opacity: .72;
    cursor: wait;
    transform: none;
}
.uh-ai-spinner {
    width: 15px;
    height: 15px;
    border: 2px solid currentColor;
    border-right-color: transparent;
    border-radius: 50%;
    animation: uh-ai-spin .7s linear infinite;
}
@keyframes uh-ai-spin {
    to { transform: rotate(360deg); }
}
.uh-ai-result {
    margin-top: 13px;
    padding: 16px;
    border: 1px solid rgba(255,90,31,.25);
    border-radius: 15px;
    background: linear-gradient(145deg, #fff9f6, #fff);
    box-shadow: 0 10px 30px rgba(26,26,26,.06);
}
.uh-ai-result[hidden] {
    display: none !important;
}
.uh-ai-result-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding-bottom: 10px;
    border-bottom: 1px solid rgba(255,90,31,.12);
}
.uh-ai-result-head strong {
    color: #242424;
}
.uh-ai-result-head button {
    width: 30px;
    height: 30px;
    border: 0;
    border-radius: 50%;
    background: #f1f1f1;
    font-size: 20px;
    line-height: 1;
    cursor: pointer;
}
.uh-ai-result-text {
    padding: 13px 0;
    color: #3e3e3e;
    font-size: 14px;
    line-height: 1.7;
}
.uh-ai-result-actions {
    display: flex;
    justify-content: flex-end;
    gap: 9px;
}

@media (max-width: 600px) {
    .uh-detail-head {
        align-items: flex-start;
    }
    .uh-ai-suggest {
        min-height: 36px;
        padding: 8px 11px;
        white-space: nowrap;
        font-size: 12px;
    }
    .uh-ai-result-actions {
        display: grid;
        grid-template-columns: 1fr 1fr;
    }
}


/* Görsel renk paleti */
.uh-color-section { display: block; }
.uh-color-head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 14px;
    margin-bottom: 13px;
}
.uh-color-head strong,
.uh-color-head small { display: block; }
.uh-color-head strong { margin-bottom: 3px; font-size: 15px; }
.uh-color-head small { color: var(--uh-muted); font-size: 12px; }
.uh-color-clear {
    border: 0;
    background: transparent;
    color: var(--uh-orange);
    font-size: 12px;
    font-weight: 800;
    cursor: pointer;
}
.uh-color-palette {
    display: grid;
    grid-template-columns: repeat(8, minmax(0, 1fr));
    gap: 10px;
}
.uh-color-option {
    position: relative;
    display: grid;
    justify-items: center;
    gap: 7px;
    cursor: pointer;
}
.uh-color-option input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}
.uh-color-swatch {
    position: relative;
    width: 48px;
    height: 48px;
    border: 3px solid #fff;
    border-radius: 50%;
    background: var(--swatch);
    box-shadow: 0 0 0 1px rgba(0,0,0,.14), 0 5px 14px rgba(0,0,0,.08);
    transition: .18s ease;
}
.uh-color-option:hover .uh-color-swatch {
    transform: translateY(-2px);
    box-shadow: 0 0 0 2px rgba(255,90,31,.26), 0 8px 18px rgba(0,0,0,.11);
}
.uh-color-option input:checked + .uh-color-swatch {
    box-shadow: 0 0 0 3px var(--uh-orange), 0 8px 20px rgba(255,90,31,.2);
    transform: scale(1.04);
}
.uh-color-option input:checked + .uh-color-swatch::after {
    content: "✓";
    position: absolute;
    right: -5px;
    bottom: -4px;
    display: grid;
    place-items: center;
    width: 21px;
    height: 21px;
    border: 2px solid #fff;
    border-radius: 50%;
    background: var(--uh-orange);
    color: #fff;
    font-size: 12px;
    font-weight: 900;
}
.uh-color-name {
    color: #484848;
    font-size: 11px;
    line-height: 1.2;
    text-align: center;
}
.uh-selected-colors {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    min-height: 30px;
    margin-top: 13px;
}
.uh-selected-color {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 6px 10px;
    border: 1px solid var(--uh-border);
    border-radius: 999px;
    background: #fff;
    color: #3e3e3e;
    font-size: 12px;
    font-weight: 700;
}
.uh-selected-color i {
    width: 15px;
    height: 15px;
    border: 1px solid rgba(0,0,0,.12);
    border-radius: 50%;
    background: var(--selected-color);
}
.uh-color-empty { color: var(--uh-muted); font-size: 12px; }

@media (max-width: 900px) {
    .uh-color-palette { grid-template-columns: repeat(6, minmax(0, 1fr)); }
}
@media (max-width: 600px) {
    .uh-color-palette { grid-template-columns: repeat(4, minmax(0, 1fr)); }
    .uh-color-swatch { width: 44px; height: 44px; }
}


/* 2. adım: daha sıcak, kısa ve mobil uyumlu */
.uh-step-description {
    margin: -8px 0 22px;
    color: var(--uh-muted);
    font-size: 14px;
    line-height: 1.55;
}
.uh-measurements {
    padding: 16px;
    border: 1px solid var(--uh-border);
    border-radius: 16px;
    background: #fafafa;
}
.uh-measurement-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 15px;
}
.uh-measurement-head strong,
.uh-measurement-head small {
    display: block;
}
.uh-measurement-head strong {
    margin-bottom: 4px;
    font-size: 16px;
}
.uh-measurement-head small {
    color: var(--uh-muted);
    font-size: 12px;
}
.uh-measurement-unknown {
    display: inline-flex !important;
    flex-direction: row !important;
    align-items: center;
    gap: 9px;
    cursor: pointer;
}
.uh-measurement-unknown input {
    width: 18px !important;
    height: 18px !important;
    min-height: 18px !important;
    margin: 0;
    accent-color: var(--uh-orange);
}
.uh-measurement-unknown span {
    margin: 0 !important;
    white-space: nowrap;
    font-size: 13px;
    font-weight: 700;
}
.uh-measurement-field input:disabled {
    background: #eeeeee !important;
    color: #999;
    cursor: not-allowed;
}

/* Form alanlarını gereksiz yere uzatma */
#uh-odani-form input[type="text"],
#uh-odani-form input[type="number"],
#uh-odani-form input[type="email"],
#uh-odani-form select {
    height: 54px;
    min-height: 54px;
}

/* Canlı destek balonunu form butonlarından uzaklaştır */
body:has(#uh-odani-form) #uh-live-support,
body:has(#uh-odani-form) #ustaya-hazir-live-support,
body:has(#uh-odani-form) .uh-live-support,
body:has(#uh-odani-form) .chat-widget,
body:has(#uh-odani-form) [class*="live-support"],
body:has(#uh-odani-form) [class*="chat-bubble"] {
    bottom: 96px !important;
    transform: scale(.88);
    transform-origin: bottom right;
}

@media (max-width: 760px) {
    .uh-step-description {
        margin-bottom: 17px;
        font-size: 13px;
    }
    .uh-measurement-head {
        align-items: flex-start;
        flex-direction: column;
    }
    .uh-measurement-grid {
        grid-template-columns: 1fr !important;
    }
    #uh-odani-form input[type="text"],
    #uh-odani-form input[type="number"],
    #uh-odani-form input[type="email"],
    #uh-odani-form select {
        height: 52px;
        min-height: 52px;
    }
    body:has(#uh-odani-form) #uh-live-support,
    body:has(#uh-odani-form) #ustaya-hazir-live-support,
    body:has(#uh-odani-form) .uh-live-support,
    body:has(#uh-odani-form) .chat-widget,
    body:has(#uh-odani-form) [class*="live-support"],
    body:has(#uh-odani-form) [class*="chat-bubble"] {
        bottom: 108px !important;
        transform: scale(.78);
    }
}


/* 3. adım */
.uh-section-heading {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 14px;
    margin-bottom: 14px;
}
.uh-section-heading strong,
.uh-section-heading small {
    display: block;
}
.uh-section-heading strong {
    font-size: 16px;
}
.uh-section-heading small {
    max-width: 520px;
    color: var(--uh-muted);
    font-size: 12px;
    line-height: 1.45;
}
.uh-style-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}
.uh-style-card {
    position: relative;
    cursor: pointer;
}
.uh-style-card input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}
.uh-style-card-inner {
    display: flex;
    min-height: 156px;
    height: 100%;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-end;
    padding: 16px;
    border: 2px solid var(--uh-border);
    border-radius: 16px;
    background: linear-gradient(145deg, #fff, #f7f7f7);
    transition: .2s ease;
}
.uh-style-visual {
    display: grid;
    place-items: center;
    width: 48px;
    height: 48px;
    margin-bottom: auto;
    border-radius: 14px;
    background: #fff0e9;
    color: var(--uh-orange);
    font-size: 18px;
    font-weight: 900;
}
.uh-style-card-inner strong {
    margin-top: 18px;
    font-size: 16px;
}
.uh-style-card-inner small {
    margin-top: 4px;
    color: var(--uh-muted);
    line-height: 1.4;
}
.uh-style-card:hover .uh-style-card-inner {
    border-color: rgba(255,90,31,.45);
    transform: translateY(-2px);
}
.uh-style-card input:checked + .uh-style-card-inner {
    border-color: var(--uh-orange);
    background: #fff7f3;
    box-shadow: 0 8px 24px rgba(255,90,31,.12);
}
.uh-style-card input:checked + .uh-style-card-inner::after {
    content: "✓";
    position: absolute;
    top: 10px;
    right: 10px;
    display: grid;
    place-items: center;
    width: 26px;
    height: 26px;
    border-radius: 50%;
    background: var(--uh-orange);
    color: #fff;
    font-size: 13px;
    font-weight: 900;
}
.uh-style-card-wide {
    grid-column: 1 / -1;
}
.uh-style-card-wide .uh-style-card-inner {
    min-height: 105px;
}
.uh-choice-list {
    display: grid;
    gap: 10px;
}
.uh-choice-option {
    position: relative;
    display: flex !important;
    flex-direction: row !important;
    align-items: center;
    gap: 11px;
    min-height: 52px;
    padding: 13px 15px;
    border: 1px solid var(--uh-border);
    border-radius: 13px;
    background: #fff;
    cursor: pointer;
    transition: .18s ease;
}
.uh-choice-option:hover {
    border-color: rgba(255,90,31,.4);
    background: #fff9f6;
}
.uh-choice-option input {
    width: 18px !important;
    height: 18px !important;
    min-height: 18px !important;
    margin: 0;
    accent-color: var(--uh-orange);
}
.uh-choice-option span {
    margin: 0 !important;
    font-size: 14px;
    font-weight: 650;
}
.uh-choice-option:has(input:checked) {
    border-color: var(--uh-orange);
    background: #fff7f3;
}
.uh-specific-color-wrap {
    margin-top: 13px;
}
.uh-specific-color-wrap[hidden] {
    display: none !important;
}
.uh-budget-section,
.uh-renovation-section,
.uh-color-preference-section,
.uh-style-section {
    padding: 18px;
    border: 1px solid var(--uh-border);
    border-radius: 17px;
    background: #fff;
}

@media (max-width: 760px) {
    .uh-style-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
    }
    .uh-style-card-inner {
        min-height: 138px;
        padding: 13px;
    }
    .uh-style-card-inner strong {
        font-size: 15px;
    }
    .uh-style-card-inner small {
        font-size: 12px;
    }
    .uh-style-card-wide {
        grid-column: 1 / -1;
    }
    .uh-section-heading {
        flex-direction: column;
    }
}


/* 4. adım */
.uh-photo-source-grid-v2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.uh-photo-source { position: relative; }
.uh-source-check {
    position: absolute; top: 11px; right: 11px; display: none; place-items: center;
    width: 25px; height: 25px; border-radius: 50%; background: var(--uh-orange);
    color: #fff; font-weight: 900;
}
.uh-photo-source.is-selected {
    border-color: var(--uh-orange); background: #fff7f3;
    box-shadow: 0 8px 24px rgba(255,90,31,.12);
}
.uh-photo-source.is-selected .uh-source-check { display: grid; }
.uh-photo-advice {
    display: flex; gap: 8px; margin-top: 14px; padding: 12px 14px;
    border-radius: 12px; background: #fff7f3; font-size: 13px; line-height: 1.5;
}
.uh-photo-advice strong { color: var(--uh-orange); white-space: nowrap; }
.uh-upload-progress {
    margin-top: 14px; padding: 12px 14px; border: 1px solid var(--uh-border);
    border-radius: 12px; background: #fff;
}
.uh-upload-progress[hidden], .uh-photo-manager[hidden], .uh-drawing-editor-wrap[hidden] { display:none!important; }
.uh-upload-progress-head { display:flex; justify-content:space-between; margin-bottom:8px; font-size:12px; }
.uh-upload-progress-track { overflow:hidden; height:8px; border-radius:999px; background:#eee; }
.uh-upload-progress-track span { display:block; width:0; height:100%; background:var(--uh-orange); transition:.2s; }
.uh-photo-manager { margin-top:16px; }
.uh-photo-viewer { position:relative; overflow:hidden; border-radius:18px; background:#161616; }
.uh-photo-viewer>img { display:block; width:100%; height:500px; object-fit:contain; }
.uh-photo-nav {
    position:absolute; top:50%; z-index:2; width:44px; height:44px; transform:translateY(-50%);
    border:0; border-radius:50%; background:rgba(0,0,0,.58); color:#fff; font-size:30px; cursor:pointer;
}
.uh-photo-prev { left:12px; } .uh-photo-next { right:12px; }
.uh-photo-counter {
    position:absolute; top:12px; left:50%; z-index:2; transform:translateX(-50%);
    padding:6px 10px; border-radius:999px; background:rgba(0,0,0,.62); color:#fff; font-size:12px; font-weight:800;
}
.uh-photo-viewer-actions { position:absolute; right:12px; bottom:12px; z-index:2; display:flex; gap:8px; }
.uh-photo-viewer-actions .uh-small-btn { background:rgba(255,255,255,.94); }
.uh-danger-btn { color:#d92d20!important; }
.uh-photo-thumbs { display:flex; gap:9px; overflow-x:auto; padding:10px 2px 4px; }
.uh-photo-thumb {
    flex:0 0 82px; overflow:hidden; height:66px; padding:0; border:2px solid transparent;
    border-radius:10px; background:#eee; cursor:pointer;
}
.uh-photo-thumb.is-active { border-color:var(--uh-orange); }
.uh-photo-thumb img { width:100%; height:100%; object-fit:cover; }
.uh-open-editor {
    width:100%; margin-top:12px; min-height:52px; border:1px solid var(--uh-orange);
    border-radius:13px; background:#fff7f3; color:var(--uh-orange); font-weight:850; cursor:pointer;
}
.uh-drawing-editor-wrap {
    margin-top:16px; padding:16px; border:1px solid var(--uh-border);
    border-radius:18px; background:#fff;
}
.uh-drawing-editor-head { display:flex; justify-content:space-between; align-items:center; margin-bottom:12px; }
.uh-drawing-editor-head .uh-camera-close { color:#222; }
.uh-editor-tools { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; margin-bottom:12px; }
.uh-editor-tools button {
    min-height:44px; border:1px solid var(--uh-border); border-radius:11px; background:#fff; cursor:pointer;
}
.uh-editor-tools button:hover { border-color:var(--uh-orange); color:var(--uh-orange); background:#fff7f3; }
.uh-editor-actions { display:flex; justify-content:flex-end; flex-wrap:wrap; gap:9px; margin-top:12px; }

@media (max-width:760px) {
    .uh-photo-source-grid-v2 { grid-template-columns:1fr 1fr; gap:10px; }
    .uh-photo-source { min-height:108px; padding:14px; }
    .uh-photo-source-icon { width:36px; height:36px; margin-bottom:8px; font-size:18px; }
    .uh-photo-source strong { font-size:14px; }
    .uh-photo-source small { font-size:11px; }
    .uh-photo-advice { flex-direction:column; }
    .uh-photo-viewer>img { height:350px; }
    .uh-photo-nav { width:38px; height:38px; }
    .uh-photo-viewer-actions { left:12px; right:12px; justify-content:space-between; }
    .uh-editor-tools { grid-template-columns:repeat(2,minmax(0,1fr)); }
}


/* Fotoğraf gezinme okları */
.uh-photo-nav {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 64px;
    border-radius: 15px;
    background: rgba(20,20,20,.72);
    backdrop-filter: blur(8px);
    box-shadow: 0 8px 22px rgba(0,0,0,.24);
    transition: transform .18s ease, background .18s ease;
}
.uh-photo-nav:hover {
    background: var(--uh-orange);
    transform: translateY(-50%) scale(1.06);
}
.uh-photo-nav span {
    display: block;
    transform: translateY(-2px);
    font-size: 42px;
    font-weight: 400;
    line-height: 1;
}
.uh-photo-prev { left: 14px; }
.uh-photo-next { right: 14px; }

/* İşaretleme alanı */
#uh-drawing-canvas {
    display: block;
    max-width: 100%;
    width: 100%;
    height: auto;
    touch-action: none;
    cursor: crosshair;
}
.uh-canvas-wrap {
    overflow: hidden;
    border-radius: 14px;
    background: #151515;
}
.uh-editor-tools button.is-active {
    border-color: var(--uh-orange);
    background: var(--uh-orange);
    color: #fff;
}
.uh-open-editor {
    position: relative;
}
.uh-open-editor::before {
    content: "✎";
    display: inline-block;
    margin-right: 8px;
    font-size: 17px;
}
.uh-drawing-editor-wrap {
    scroll-margin-top: 90px;
}

@media (max-width: 760px) {
    .uh-photo-nav {
        width: 44px;
        height: 58px;
        border-radius: 14px;
    }
    .uh-photo-nav span {
        font-size: 38px;
    }
    .uh-photo-prev { left: 8px; }
    .uh-photo-next { right: 8px; }
}


/* v2.9 Yerleşimi Göster tasarımı */
.uh-drawing-editor-wrap {
    padding: 0;
    border: 0;
    background: transparent;
}
.uh-placement-guide {
    display: grid;
    grid-template-columns: 1fr auto 1fr auto 1fr;
    align-items: center;
    gap: 10px;
    margin-bottom: 18px;
    padding: 16px 18px;
    border: 1px solid #e8e8e8;
    border-radius: 18px;
    background: #fff;
}
.uh-placement-guide-item {
    display: grid;
    grid-template-columns: auto auto 1fr;
    align-items: start;
    gap: 9px;
}
.uh-guide-number {
    display: grid;
    place-items: center;
    width: 31px;
    height: 31px;
    border-radius: 50%;
    background: #fff0e9;
    color: var(--uh-orange);
    font-weight: 900;
}
.uh-guide-icon {
    font-size: 24px;
    line-height: 1.1;
}
.uh-placement-guide-item strong,
.uh-placement-guide-item small {
    display: block;
}
.uh-placement-guide-item strong {
    font-size: 15px;
}
.uh-placement-guide-item small {
    margin-top: 4px;
    color: var(--uh-muted);
    font-size: 12px;
    line-height: 1.35;
}
.uh-guide-arrow {
    color: #c8c8c8;
    font-size: 24px;
}
.uh-placement-canvas-wrap {
    position: relative;
    overflow: hidden;
    border-radius: 18px;
    background: #171717;
}
#uh-design-canvas {
    display: block;
    width: 100%;
    height: auto;
    max-height: 620px;
    object-fit: contain;
    touch-action: none;
    cursor: crosshair;
}
.uh-touch-hint {
    position: absolute;
    left: 14px;
    bottom: 14px;
    padding: 10px 14px;
    border-radius: 999px;
    background: rgba(20,20,20,.76);
    color: #fff;
    font-size: 13px;
    font-weight: 750;
    transition: opacity .2s ease;
    pointer-events: none;
}
.uh-touch-hint.is-hidden {
    opacity: 0;
}
.uh-placement-actions {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 11px;
    margin-top: 14px;
}
.uh-placement-tool {
    display: grid;
    place-items: center;
    gap: 7px;
    min-height: 116px;
    padding: 13px 9px;
    border: 1px solid #e2e2e2;
    border-radius: 17px;
    background: #fff;
    color: #222;
    cursor: pointer;
    transition: .18s ease;
}
.uh-placement-tool-icon {
    display: grid;
    place-items: center;
    width: 42px;
    height: 42px;
    border: 2px solid currentColor;
    border-radius: 50%;
    color: var(--uh-orange);
    font-size: 25px;
    line-height: 1;
}
.uh-placement-tool strong {
    font-size: 15px;
}
.uh-placement-tool:nth-child(2) .uh-placement-tool-icon {
    color: #e53935;
}
.uh-placement-tool:nth-child(3) .uh-placement-tool-icon {
    color: #159957;
}
.uh-placement-tool:nth-child(4) .uh-placement-tool-icon {
    color: #efaf00;
}
.uh-placement-tool:hover,
.uh-placement-tool.is-active {
    border-color: var(--uh-orange);
    background: #fff7f3;
    color: var(--uh-orange);
    box-shadow: 0 7px 20px rgba(255,90,31,.1);
}
.uh-placement-secondary {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    margin-top: 11px;
}
.uh-secondary-tool {
    min-height: 48px;
    border: 1px solid #e4e4e4;
    border-radius: 13px;
    background: #fff;
    font-weight: 750;
    cursor: pointer;
}
.uh-secondary-tool.is-active {
    border-color: var(--uh-orange);
    color: var(--uh-orange);
    background: #fff7f3;
}
.uh-placement-history {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 11px;
    margin-top: 11px;
}
.uh-placement-history button {
    min-height: 54px;
    border: 1px solid #e2e2e2;
    border-radius: 14px;
    background: #fff;
    font-size: 15px;
    font-weight: 750;
    cursor: pointer;
}
.uh-placement-history button span {
    margin-right: 8px;
    font-size: 20px;
}
.uh-placement-status {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 42px;
    margin-top: 13px;
    color: #159957;
    font-size: 14px;
    font-weight: 750;
}
.uh-status-check {
    display: grid;
    place-items: center;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    background: #159957;
    color: #fff;
    font-size: 13px;
}
.uh-open-editor {
    display: none !important;
}

/* Fotoğraf yüklendiğinde yükleme kartlarını geri plana al */
#uh-odani-form.uh-has-photo .uh-photo-source-grid-v2,
#uh-odani-form.uh-has-photo .uh-photo-advice {
    display: none;
}
#uh-odani-form.uh-has-photo .uh-photo-manager {
    margin-top: 0;
}
#uh-odani-form.uh-has-photo .uh-photo-viewer {
    display: none;
}
#uh-odani-form.uh-has-photo .uh-photo-thumbs {
    margin-bottom: 13px;
}

@media (max-width: 760px) {
    .uh-placement-guide {
        gap: 6px;
        padding: 12px 10px;
    }
    .uh-placement-guide-item {
        grid-template-columns: auto 1fr;
        gap: 6px;
    }
    .uh-guide-icon {
        display: none;
    }
    .uh-placement-guide-item small {
        font-size: 10px;
    }
    .uh-guide-arrow {
        font-size: 17px;
    }
    .uh-placement-actions {
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 7px;
    }
    .uh-placement-tool {
        min-height: 101px;
        padding: 10px 5px;
    }
    .uh-placement-tool-icon {
        width: 36px;
        height: 36px;
        font-size: 21px;
    }
    .uh-placement-tool strong {
        font-size: 12px;
    }
    #uh-design-canvas {
        max-height: 460px;
    }
}


/* Yönlendirme alanı fotoğraf eklenmeden önce de görünür */
.uh-step[data-step="4"] > .uh-placement-guide {
    margin-top: 0;
    margin-bottom: 18px;
}
.uh-marker-options {
    margin-top: 12px;
    padding: 14px;
    border: 1px solid rgba(255,90,31,.28);
    border-radius: 15px;
    background: #fff9f6;
}
.uh-marker-options[hidden] {
    display: none !important;
}
.uh-marker-options-head {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
    margin-bottom: 11px;
}
.uh-marker-options-head button {
    width: 30px;
    height: 30px;
    border: 0;
    border-radius: 50%;
    background: #f0f0f0;
    font-size: 20px;
    cursor: pointer;
}
.uh-marker-option-list {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 9px;
}
.uh-marker-option {
    display: flex;
    align-items: center;
    gap: 9px;
    min-height: 48px;
    padding: 9px 11px;
    border: 1px solid #e6e6e6;
    border-radius: 11px;
    background: #fff;
    cursor: pointer;
    text-align: left;
}
.uh-marker-option:hover {
    border-color: var(--uh-orange);
    background: #fff7f3;
}
.uh-marker-option > span {
    flex: 0 0 17px;
    width: 17px;
    height: 17px;
    border-radius: 50%;
    background: var(--marker-option-color);
}
.uh-marker-option strong {
    font-size: 12px;
}
.uh-photo-counter::after {
    content: " · En fazla 3";
    opacity: .75;
}
@media (max-width:760px) {
    .uh-marker-option-list {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .uh-marker-option {
        min-height: 45px;
        padding: 8px;
    }
}


/* v2.9.2 - Fotoğraf eklendikten sonra üst önizleme alanını gizle */
#uh-odani-form.uh-has-photo .uh-photo-manager {
    display: none !important;
}

/* İşlem kartlarını eşit ve taşmasız hizala */
.uh-placement-actions {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    align-items: stretch;
}
.uh-placement-tool {
    min-width: 0;
    width: 100%;
    box-sizing: border-box;
    overflow: hidden;
    text-align: center;
}
.uh-placement-tool-icon {
    flex: 0 0 auto;
    width: 40px;
    height: 40px;
    margin: 0 auto;
    line-height: 1;
}
.uh-placement-tool strong {
    display: block;
    width: 100%;
    min-width: 0;
    white-space: normal;
    overflow-wrap: anywhere;
    word-break: normal;
    line-height: 1.2;
    text-align: center;
}
.uh-placement-tool:nth-child(3) strong {
    max-width: 58px;
    margin: 0 auto;
}

/* İç ikon karakterlerini tam ortala */
.uh-placement-tool-icon {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
}
.uh-placement-tool-icon::before,
.uh-placement-tool-icon::after {
    line-height: 1 !important;
}

/* Mobilde taşmayı kesin engelle */
@media (max-width: 760px) {
    .uh-placement-actions {
        gap: 6px !important;
    }
    .uh-placement-tool {
        min-height: 96px !important;
        padding: 9px 4px !important;
        border-radius: 14px !important;
    }
    .uh-placement-tool-icon {
        width: 34px !important;
        height: 34px !important;
        font-size: 20px !important;
    }
    .uh-placement-tool strong {
        font-size: 11px !important;
        line-height: 1.15 !important;
    }
    .uh-placement-tool:nth-child(3) strong {
        max-width: 48px;
    }
}

/* Çok dar ekranlarda dahi 4 kart sığsın */
@media (max-width: 390px) {
    .uh-placement-actions {
        gap: 4px !important;
    }
    .uh-placement-tool {
        padding: 8px 2px !important;
    }
    .uh-placement-tool-icon {
        width: 32px !important;
        height: 32px !important;
        font-size: 18px !important;
    }
    .uh-placement-tool strong {
        font-size: 10px !important;
    }
}


/* 5. adım - referans paket seçimi */
.uh-package-tabs {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    margin: 34px 0 18px;
}
.uh-package-tab {
    position: relative;
    display: flex;
    align-items: center;
    gap: 11px;
    min-width: 0;
    min-height: 94px;
    padding: 15px;
    border: 1px solid var(--uh-border);
    border-radius: 17px;
    background: #fff;
    cursor: pointer;
    transition: .2s ease;
}
.uh-package-tab:hover,
.uh-package-tab.is-active {
    border-color: var(--uh-orange);
    background: #fff7f3;
    box-shadow: 0 7px 20px rgba(255,90,31,.12);
}
.uh-package-badge {
    position: absolute;
    top: -31px;
    left: 50%;
    transform: translateX(-50%);
    padding: 7px 14px;
    border-radius: 11px 11px 0 0;
    background: var(--uh-orange);
    color: #fff;
    font-size: 11px;
    font-weight: 800;
    white-space: nowrap;
}
.uh-package-tab-icon {
    display: grid;
    place-items: center;
    flex: 0 0 44px;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background: #fff0e9;
    color: var(--uh-orange);
    font-size: 22px;
}
.uh-package-tab-text {
    display: grid;
    gap: 4px;
    min-width: 0;
    text-align: left;
}
.uh-package-tab-text strong {
    overflow: hidden;
    font-size: 15px;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.uh-package-tab-text small {
    color: #222;
    font-size: 14px;
    font-weight: 700;
}
.uh-package-detail {
    display: none;
    padding: 28px;
    border: 2px solid var(--uh-orange);
    border-radius: 20px;
    background: #fff;
    box-shadow: 0 14px 34px rgba(255,90,31,.08);
}
.uh-package-detail.is-active {
    display: block;
}
.uh-package-radio {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}
.uh-package-detail-head {
    display: grid;
    grid-template-columns: 150px minmax(0, 1fr) auto;
    gap: 24px;
    align-items: start;
    padding-bottom: 24px;
    border-bottom: 1px solid #e8e8e8;
}
.uh-package-product-image {
    display: grid;
    place-items: center;
    overflow: hidden;
    min-height: 140px;
    border-radius: 16px;
    background: #f7f7f7;
}
.uh-package-product-image img {
    width: 100%;
    height: 140px;
    object-fit: contain;
}
.uh-package-fallback-icon {
    font-size: 58px;
}
.uh-package-detail-name {
    display: block;
    margin-bottom: 8px;
    font-size: 26px;
}
.uh-package-detail-price {
    margin-bottom: 10px;
    color: var(--uh-orange);
    font-size: 34px;
    font-weight: 900;
}
.uh-package-main-info p {
    margin: 0;
    color: var(--uh-muted);
    line-height: 1.55;
}
.uh-package-selected-state {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #3baa59;
    font-size: 14px;
    font-weight: 800;
}
.uh-package-selected-state span {
    font-size: 22px;
}
.uh-package-feature-list {
    display: grid;
    gap: 12px;
    padding: 24px 4px;
}
.uh-package-feature {
    display: flex;
    align-items: center;
    gap: 12px;
}
.uh-package-feature > span {
    display: grid;
    place-items: center;
    flex: 0 0 24px;
    width: 24px;
    height: 24px;
    border: 2px solid var(--uh-orange);
    border-radius: 50%;
    color: var(--uh-orange);
    font-size: 12px;
    font-weight: 900;
}
.uh-package-feature strong {
    font-size: 14px;
    font-weight: 650;
}
.uh-choose-package {
    width: 100%;
    min-height: 58px;
    border: 0;
    border-radius: 14px;
    background: var(--uh-orange);
    color: #fff;
    font-size: 17px;
    font-weight: 850;
    cursor: pointer;
}
.uh-package-detail-link {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    margin-top: 16px;
    color: var(--uh-orange);
    font-size: 14px;
    font-weight: 800;
    text-decoration: underline;
}
.uh-package-detail-link span {
    font-size: 24px;
}
.uh-package-mini-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    margin-top: 18px;
}
.uh-package-mini-card {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    gap: 12px;
    align-items: start;
    min-height: 130px;
    padding: 18px;
    border: 1px solid var(--uh-border);
    border-radius: 17px;
    background: #fff;
    text-align: left;
    cursor: pointer;
}
.uh-package-mini-card:hover,
.uh-package-mini-card.is-active {
    border-color: var(--uh-orange);
    background: #fff9f6;
}
.uh-package-mini-icon {
    display: grid;
    place-items: center;
    width: 42px;
    height: 42px;
    border-radius: 50%;
    background: #fff0e9;
    color: var(--uh-orange);
    font-size: 20px;
}
.uh-package-mini-main {
    display: grid;
    gap: 4px;
    min-width: 0;
}
.uh-package-mini-main strong,
.uh-package-mini-main b {
    font-size: 15px;
}
.uh-package-mini-main small {
    margin-top: 6px;
    color: var(--uh-muted);
    font-size: 11px;
    line-height: 1.45;
}
.uh-package-mini-arrow {
    align-self: center;
    font-size: 30px;
}

@media (max-width: 760px) {
    .uh-package-tabs {
        gap: 7px;
        margin-top: 32px;
    }
    .uh-package-tab {
        min-height: 80px;
        padding: 9px 7px;
    }
    .uh-package-tab-icon {
        flex-basis: 32px;
        width: 32px;
        height: 32px;
        font-size: 16px;
    }
    .uh-package-tab-text strong {
        font-size: 11px;
    }
    .uh-package-tab-text small {
        font-size: 10px;
    }
    .uh-package-badge {
        top: -25px;
        padding: 6px 8px;
        font-size: 8px;
    }
    .uh-package-detail {
        padding: 17px;
    }
    .uh-package-detail-head {
        grid-template-columns: 82px minmax(0, 1fr);
        gap: 13px;
    }
    .uh-package-product-image {
        min-height: 82px;
    }
    .uh-package-product-image img {
        height: 82px;
    }
    .uh-package-selected-state {
        grid-column: 1 / -1;
        justify-self: end;
        margin-top: -7px;
    }
    .uh-package-detail-name {
        font-size: 19px;
    }
    .uh-package-detail-price {
        font-size: 27px;
    }
    .uh-package-main-info p,
    .uh-package-feature strong {
        font-size: 12px;
    }
    .uh-package-mini-grid {
        grid-template-columns: 1fr 1fr;
        gap: 8px;
    }
    .uh-package-mini-card {
        min-height: 116px;
        padding: 11px;
        grid-template-columns: auto 1fr;
    }
    .uh-package-mini-arrow {
        display: none;
    }
    .uh-package-mini-main small {
        font-size: 9px;
    }
}


/* v3.0.1 paket seçim düzeltmeleri */
.uh-package-selected-state {
    display: none !important;
}
.uh-package-detail.is-selected .uh-package-selected-state {
    display: inline-flex !important;
}
.uh-package-detail:not(.is-selected) .uh-choose-package {
    opacity: 1;
}
.uh-package-detail.is-selected .uh-choose-package {
    background: #159957;
}
.uh-package-detail.is-selected .uh-choose-package::after {
    content: " ✓";
}

/* Önizleme ile gerçek seçimi ayır */
.uh-package-tab.is-preview,
.uh-package-mini-card.is-preview {
    border-color: rgba(255,90,31,.55);
    background: #fffaf7;
}
.uh-package-tab.is-selected,
.uh-package-mini-card.is-selected {
    border-color: var(--uh-orange);
    background: #fff3ec;
    box-shadow: 0 7px 20px rgba(255,90,31,.14);
}

/* Üst paket başlıklarını daha belirgin yap */
.uh-package-tab-text strong {
    color: #111 !important;
    font-weight: 900 !important;
    letter-spacing: -.01em;
}
.uh-package-tab-text small {
    color: #111 !important;
    font-weight: 800 !important;
}
.uh-package-tab.is-selected .uh-package-tab-text strong,
.uh-package-tab.is-selected .uh-package-tab-text small {
    color: var(--uh-orange) !important;
}

/* Alt kart metinlerini siyah yap */
.uh-package-mini-main strong,
.uh-package-mini-main b,
.uh-package-mini-main small {
    color: #111 !important;
}
.uh-package-mini-main strong {
    font-weight: 900 !important;
}
.uh-package-mini-main b {
    font-weight: 800 !important;
}
.uh-package-mini-main small {
    opacity: .86;
}

/* Büyük kart açıklama ve özellikler siyah */
.uh-package-main-info p,
.uh-package-feature strong {
    color: #111 !important;
}


/* 6. adım sipariş kontrolü */
.uh-review-grid {
    display: grid;
    gap: 14px;
}
.uh-review-card {
    display: grid;
    grid-template-columns: 88px minmax(0, 1fr);
    gap: 16px;
    padding: 20px;
    border: 1px solid #ececec;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 8px 24px rgba(0,0,0,.05);
}
.uh-review-icon {
    display: grid;
    place-items: center;
    width: 66px;
    height: 66px;
    border-radius: 50%;
    background: #fff3ec;
    color: var(--uh-orange);
    font-size: 30px;
}
.uh-review-content {
    min-width: 0;
}
.uh-review-head {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
    margin-bottom: 10px;
}
.uh-review-head > strong {
    font-size: 18px;
}
.uh-review-edit {
    border: 0;
    background: transparent;
    color: var(--uh-orange);
    font-size: 14px;
    font-weight: 800;
    cursor: pointer;
}
.uh-review-edit span {
    margin-left: 5px;
    font-size: 22px;
}
.uh-review-lines {
    display: grid;
    gap: 4px;
    color: #222;
    font-size: 14px;
    line-height: 1.45;
}
.uh-review-photo-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.3fr) minmax(180px, .7fr);
    gap: 18px;
    align-items: start;
}
.uh-review-photo-wrap {
    overflow: hidden;
    border-radius: 14px;
    background: #f5f5f5;
}
.uh-review-photo-wrap img {
    display: block;
    width: 100%;
    height: 240px;
    object-fit: cover;
}
.uh-review-notes {
    margin: 0;
    padding: 0;
    list-style: none;
}
.uh-review-notes li {
    position: relative;
    margin-bottom: 10px;
    padding-left: 17px;
    color: #222;
    font-size: 13px;
    line-height: 1.45;
}
.uh-review-notes li::before {
    content: "•";
    position: absolute;
    left: 0;
    color: var(--uh-orange);
    font-size: 20px;
    line-height: 1;
}
.uh-review-package-card {
    border-color: var(--uh-orange);
    background: #fffaf7;
}
.uh-review-package-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 20px;
    align-items: center;
}
.uh-review-package-name {
    display: block;
    margin-bottom: 10px;
    font-size: 19px;
}
.uh-review-package-features {
    display: grid;
    gap: 6px;
}
.uh-review-package-features > div {
    display: flex;
    gap: 8px;
    align-items: center;
}
.uh-review-package-features span {
    color: var(--uh-orange);
    font-weight: 900;
}
.uh-review-package-features strong {
    font-size: 13px;
    font-weight: 650;
}
.uh-review-package-price {
    color: #111;
    font-size: 36px;
    font-weight: 900;
    white-space: nowrap;
}
.uh-payment-summary {
    display: grid;
    gap: 10px;
}
.uh-payment-summary > div {
    display: flex;
    justify-content: space-between;
    gap: 20px;
    color: #333;
    font-size: 14px;
}
.uh-payment-summary > div:not(.uh-payment-total) {
    border-bottom: 1px dotted #ccc;
    padding-bottom: 6px;
}
.uh-payment-total {
    margin-top: 4px;
    padding-top: 10px;
    border-top: 1px solid #ddd;
}
.uh-payment-total span,
.uh-payment-total strong {
    color: #111;
    font-size: 20px;
    font-weight: 900;
}
.uh-review-consents {
    display: grid;
    gap: 12px;
    padding: 4px 2px;
}
.uh-review-consents label {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    cursor: pointer;
}
.uh-review-consents input {
    width: 20px !important;
    height: 20px !important;
    min-height: 20px !important;
    margin-top: 1px;
    accent-color: var(--uh-orange);
}
.uh-review-consents span {
    color: #222;
    font-size: 13px;
    line-height: 1.45;
}
.uh-review-bottom-total {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 4px 0 0;
}
.uh-review-bottom-total span {
    font-size: 16px;
    font-weight: 800;
}
.uh-review-bottom-total strong {
    color: var(--uh-orange);
    font-size: 24px;
    font-weight: 900;
}

@media (max-width: 760px) {
    .uh-review-card {
        grid-template-columns: 60px minmax(0, 1fr);
        gap: 12px;
        padding: 15px;
    }
    .uh-review-icon {
        width: 50px;
        height: 50px;
        font-size: 23px;
    }
    .uh-review-head > strong {
        font-size: 16px;
    }
    .uh-review-edit {
        font-size: 12px;
    }
    .uh-review-photo-layout {
        grid-template-columns: 1fr;
    }
    .uh-review-photo-wrap img {
        height: 210px;
    }
    .uh-review-package-layout {
        grid-template-columns: 1fr;
    }
    .uh-review-package-price {
        font-size: 30px;
        text-align: right;
    }
}


/* v3.1.1 görünüm ve seçim düzeltmeleri */
#uh-camera-button strong,
#uh-gallery-button strong,
#uh-camera-button small,
#uh-gallery-button small {
    color: #111 !important;
}
#uh-camera-button:hover strong,
#uh-gallery-button:hover strong,
#uh-camera-button.is-selected strong,
#uh-gallery-button.is-selected strong {
    color: #111 !important;
}

/* Seçilen paket butonu */
.uh-package-detail.is-selected .uh-choose-package {
    background: #159957 !important;
}
.uh-package-detail.is-selected .uh-choose-package::after {
    content: " ✓";
}

/* Son sayfadaki paket ikonu paket ekranındaki ikonla aynı ölçüde */
#uh-review-package-icon {
    font-family: inherit;
    font-size: 28px;
    line-height: 1;
}

/* Başlığa kaydırırken sabit menü altında kalmasın */
#uh-main-title,
.uh-header {
    scroll-margin-top: 100px;
}


/* v3.1.2 - Alt gezinme ve sohbet balonu düzeni */
#uh-odani-form .uh-actions {
    position: sticky;
    bottom: 0;
    z-index: 40;
    display: grid;
    grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr);
    gap: 14px;
    margin-top: 22px;
    padding: 16px;
    border-top: 1px solid rgba(0,0,0,.06);
    border-radius: 18px 18px 0 0;
    background: rgba(255,255,255,.96);
    box-shadow: 0 -10px 28px rgba(0,0,0,.08);
    backdrop-filter: blur(10px);
}

#uh-odani-form .uh-actions #uh-prev,
#uh-odani-form .uh-actions #uh-next,
#uh-odani-form .uh-actions #uh-submit {
    width: 100%;
    min-height: 58px;
    margin: 0;
}

#uh-odani-form .uh-actions #uh-prev {
    order: 1;
}

#uh-odani-form .uh-actions #uh-next,
#uh-odani-form .uh-actions #uh-submit {
    order: 2;
}

/* Sohbet balonunu alt butonların üzerine gelmeyecek şekilde yukarı taşı */
body:has(#uh-odani-form) #uh-live-support,
body:has(#uh-odani-form) #ustaya-hazir-live-support,
body:has(#uh-odani-form) .uh-live-support,
body:has(#uh-odani-form) .chat-widget,
body:has(#uh-odani-form) .chat-bubble,
body:has(#uh-odani-form) [class*="live-support"],
body:has(#uh-odani-form) [class*="chat-bubble"] {
    bottom: 118px !important;
    right: 18px !important;
    z-index: 35 !important;
    transform: scale(.86);
    transform-origin: bottom right;
}

/* Formun altı sabit gezinme alanı için nefes payı */
#uh-odani-form {
    padding-bottom: 92px;
}

@media (max-width: 760px) {
    #uh-odani-form .uh-actions {
        grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
        gap: 10px;
        margin-left: -10px;
        margin-right: -10px;
        padding: 12px 10px calc(12px + env(safe-area-inset-bottom));
        border-radius: 16px 16px 0 0;
    }

    #uh-odani-form .uh-actions #uh-prev,
    #uh-odani-form .uh-actions #uh-next,
    #uh-odani-form .uh-actions #uh-submit {
        min-height: 56px;
        padding-left: 10px;
        padding-right: 10px;
        font-size: 14px;
        line-height: 1.2;
    }

    body:has(#uh-odani-form) #uh-live-support,
    body:has(#uh-odani-form) #ustaya-hazir-live-support,
    body:has(#uh-odani-form) .uh-live-support,
    body:has(#uh-odani-form) .chat-widget,
    body:has(#uh-odani-form) .chat-bubble,
    body:has(#uh-odani-form) [class*="live-support"],
    body:has(#uh-odani-form) [class*="chat-bubble"] {
        bottom: 128px !important;
        right: 10px !important;
        transform: scale(.72);
    }

    #uh-odani-form {
        padding-bottom: 110px;
    }
}

@media (max-width: 390px) {
    #uh-odani-form .uh-actions {
        grid-template-columns: .85fr 1.15fr;
        gap: 8px;
    }

    #uh-odani-form .uh-actions #uh-prev,
    #uh-odani-form .uh-actions #uh-next,
    #uh-odani-form .uh-actions #uh-submit {
        font-size: 13px;
    }

    body:has(#uh-odani-form) #uh-live-support,
    body:has(#uh-odani-form) #ustaya-hazir-live-support,
    body:has(#uh-odani-form) .uh-live-support,
    body:has(#uh-odani-form) .chat-widget,
    body:has(#uh-odani-form) .chat-bubble,
    body:has(#uh-odani-form) [class*="live-support"],
    body:has(#uh-odani-form) [class*="chat-bubble"] {
        bottom: 132px !important;
        transform: scale(.68);
    }
}


/* v3.1.3 - Alt butonları eski konumuna döndür */
#uh-odani-form {
    display: flex;
    flex-direction: column;
    min-height: 100%;
    padding-bottom: 0 !important;
}

#uh-odani-form .uh-actions {
    position: static !important;
    inset: auto !important;
    z-index: auto !important;
    display: grid;
    grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr);
    gap: 14px;
    width: 100%;
    margin-top: auto !important;
    padding: 18px 0 0 !important;
    border-top: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
}

#uh-odani-form .uh-actions #uh-prev,
#uh-odani-form .uh-actions #uh-next,
#uh-odani-form .uh-actions #uh-submit {
    min-height: 56px;
    margin: 0 !important;
}

/* Sohbet balonu butonların üstüne gelmesin */
body:has(#uh-odani-form) #uh-live-support,
body:has(#uh-odani-form) #ustaya-hazir-live-support,
body:has(#uh-odani-form) .uh-live-support,
body:has(#uh-odani-form) .chat-widget,
body:has(#uh-odani-form) .chat-bubble,
body:has(#uh-odani-form) [class*="live-support"],
body:has(#uh-odani-form) [class*="chat-bubble"] {
    bottom: 92px !important;
}

@media (max-width: 760px) {
    #uh-odani-form .uh-actions {
        grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
        gap: 10px;
        width: 100%;
        margin-left: 0 !important;
        margin-right: 0 !important;
        padding: 18px 0 0 !important;
    }

    #uh-odani-form .uh-actions #uh-prev,
    #uh-odani-form .uh-actions #uh-next,
    #uh-odani-form .uh-actions #uh-submit {
        min-height: 56px;
        font-size: 14px;
    }

    body:has(#uh-odani-form) #uh-live-support,
    body:has(#uh-odani-form) #ustaya-hazir-live-support,
    body:has(#uh-odani-form) .uh-live-support,
    body:has(#uh-odani-form) .chat-widget,
    body:has(#uh-odani-form) .chat-bubble,
    body:has(#uh-odani-form) [class*="live-support"],
    body:has(#uh-odani-form) [class*="chat-bubble"] {
        bottom: 102px !important;
        right: 10px !important;
        transform: scale(.72);
    }
}


/* v3.2.0 Silgi ve paket ekranı */
.uh-package-mini-grid {
    display: none !important;
}
.uh-placement-tool[data-tool="eraser"] .uh-placement-tool-icon {
    color: #e53935 !important;
}
.uh-placement-tool[data-tool="eraser"].is-active {
    border-color: #e53935 !important;
    color: #e53935 !important;
    background: #fff4f3 !important;
}
