.tc-admin-bar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin: 0 0 24px;
    padding: 17px 20px;
    border: 1px solid #ffc9aa;
    border-left: 5px solid var(--tc-orange);
    border-radius: 14px;
    background: #fff7f2;
}
.tc-admin-bar strong,
.tc-admin-bar span { display: block; }
.tc-admin-bar strong { font-size: 16px; }
.tc-admin-bar span {
    color: var(--tc-muted);
    font-size: 12px;
    margin-top: 2px;
}
.tc-card.is-hidden {
    border-style: dashed;
    background: #fafafa;
}
.tc-hidden-notice {
    padding: 8px 12px;
    background: #4c4c52;
    color: #fff;
    text-align: center;
    font-size: 11px;
    font-weight: 850;
    letter-spacing: .04em;
}
.tc-admin-controls {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 7px;
    margin-top: 14px;
    padding-top: 14px;
    border-top: 1px dashed #cfcfcb;
}
.tc-admin-controls a,
.tc-admin-controls button {
    min-height: 38px;
    border: 1px solid #d7d7d3;
    border-radius: 9px;
    background: #fff;
    color: var(--tc-ink);
    font: inherit;
    font-size: 11px;
    font-weight: 800;
    text-decoration: none;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 7px;
    cursor: pointer;
}
.tc-admin-controls a {
    grid-column: 1 / -1;
    background: var(--tc-black);
    border-color: var(--tc-black);
    color: #fff;
}
.tc-admin-controls .tc-editor-main {
    grid-column: 1 / -1;
    background: var(--tc-black);
    border-color: var(--tc-black);
    color: #fff;
}
.tc-order-controls {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: 1fr 42px 42px;
    gap: 6px;
}
.tc-order-drag {
    min-height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px dashed #aaa9a5;
    border-radius: 9px;
    background: #f6f6f4;
    color: #4b4b4f;
    font-size: 11px;
    font-weight: 850;
    cursor: grab;
    user-select: none;
}
.tc-order-drag:active { cursor: grabbing; }
.tc-admin-controls .tc-order-step {
    min-height: 36px;
    padding: 4px;
    font-size: 16px;
}
.tc-card.is-product-dragging { opacity: .48; }
.tc-card.is-product-drag-over {
    outline: 3px solid var(--tc-orange);
    outline-offset: 3px;
}
.tc-admin-controls button:hover {
    border-color: var(--tc-orange);
    color: var(--tc-orange);
}
.tc-admin-controls .tc-trash {
    grid-column: 1 / -1;
    color: #b42318;
    border-color: #f0b9b5;
}
.tc-admin-controls button:disabled {
    opacity: .5;
    cursor: wait;
}
.tc-editor-panel {
    width: min(920px, 100%);
    padding: 30px;
}
#tc-editor-modal.tc-media-paused { display: none; }
.media-modal-backdrop { z-index: 1000000 !important; }
.media-modal { z-index: 1000001 !important; }
.tc-editor-panel h3 { margin-bottom: 4px; }
.tc-editor-help {
    margin: 0 0 20px;
    color: var(--tc-muted);
    font-size: 13px;
}
.tc-editor-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px 16px;
}
.tc-editor-wide { grid-column: 1 / -1; }
.tc-editor-field span {
    display: block;
    margin-bottom: 6px;
    font-size: 11px;
    font-weight: 850;
}
.tc-editor-field input,
.tc-editor-field select,
.tc-editor-field textarea {
    display: block;
    width: 100%;
    min-height: 43px;
    padding: 10px 12px;
    border: 1px solid #d6d6d2;
    border-radius: 9px;
    background: #fff;
    color: var(--tc-ink);
    font: inherit;
    font-size: 13px;
    box-shadow: none;
}
.tc-editor-field textarea { resize: vertical; }
.tc-editor-field input:focus,
.tc-editor-field select:focus,
.tc-editor-field textarea:focus {
    outline: 2px solid rgba(255, 90, 10, .18);
    border-color: var(--tc-orange);
}
.tc-editor-specs,
.tc-editor-images {
    margin: 20px 0 0;
    padding: 17px;
    border: 1px solid var(--tc-line);
    border-radius: 13px;
}
.tc-editor-specs legend,
.tc-editor-images legend {
    padding: 0 7px;
    font-size: 12px;
    font-weight: 900;
}
#tc-editor-gallery {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
    margin-bottom: 12px;
}
.tc-editor-image {
    position: relative;
    min-height: 100px;
    border-radius: 10px;
    overflow: hidden;
    background: var(--tc-soft);
    border: 2px solid transparent;
    cursor: grab;
    transition: border-color .15s ease, opacity .15s ease, transform .15s ease;
}
.tc-editor-image:active { cursor: grabbing; }
.tc-editor-image.is-dragging { opacity: .45; transform: scale(.97); }
.tc-editor-image.is-drag-over { border-color: var(--tc-orange); }
.tc-editor-image img {
    width: 100%;
    height: 100px;
    display: block;
    object-fit: cover;
}
.tc-editor-image small {
    display: block;
    font-size: 9px;
    font-weight: 800;
}
.tc-editor-image-meta {
    min-height: 34px;
    padding: 5px 7px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 5px;
}
.tc-editor-reorder {
    display: flex;
    gap: 4px;
}
.tc-editor-move {
    width: 25px;
    height: 23px;
    padding: 0;
    border: 1px solid #d6d6d2;
    border-radius: 6px;
    background: #fff;
    color: #17171a;
    font-weight: 900;
    cursor: pointer;
}
.tc-editor-move:hover:not(:disabled) {
    border-color: var(--tc-orange);
    color: var(--tc-orange);
}
.tc-editor-move:disabled {
    opacity: .28;
    cursor: not-allowed;
}
.tc-editor-remove {
    position: absolute;
    right: 5px;
    top: 5px;
    width: 26px;
    height: 26px;
    border: 0;
    border-radius: 50%;
    background: #d92d20;
    color: #fff;
    cursor: pointer;
}
.tc-editor-no-image {
    grid-column: 1 / -1;
    margin: 0;
    padding: 25px;
    border: 1px dashed #c7c7c3;
    border-radius: 9px;
    color: var(--tc-muted);
    text-align: center;
    font-size: 12px;
}
.tc-editor-visible {
    display: block;
    margin-top: 17px;
    padding: 13px;
    border-radius: 10px;
    background: #f3f9f5;
    font-size: 12px;
    font-weight: 800;
}
.tc-editor-actions {
    display: flex;
    justify-content: flex-end;
    gap: 9px;
    margin-top: 20px;
    padding-top: 18px;
    border-top: 1px solid var(--tc-line);
}
@media (max-width: 620px) {
    .tc-admin-bar {
        align-items: stretch;
        flex-direction: column;
    }
    .tc-editor-panel { padding: 23px 16px; }
    .tc-editor-grid { grid-template-columns: 1fr; }
    .tc-editor-wide { grid-column: auto; }
    #tc-editor-gallery { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .tc-editor-actions .tc-btn { flex: 1; }
}
