/* ===== Kidootd Order Tracking — brand palette =====
   brand palette 1.0: action orange #EA5B2B / cream #FFF9F0 / ink #241A12
   ================================================== */

.main-order-tracking {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.main-order-tracking__wrapper {
    width: 100%;
    max-width: 480px;
}

.main-order-tracking__panes {
    width: 100%;
}

/* --- inputs --- */
.main-order-tracking .field__input {
    border: 1.5px solid #f0dcc8;
    border-radius: 12px;
    background-color: #ffffff;
    color: #241A12;
    padding: 14px 16px;
}

.main-order-tracking .field__input::placeholder {
    color: #b9a292;
}

.main-order-tracking .field__input:focus {
    border-color: #EA5B2B;
    box-shadow: 0 0 0 3px rgba(248, 169, 120, 0.25);
    outline: none;
}

.main-order-tracking .field__label {
    color: #8a7364;
}

.main-order-tracking .field--error .field__input {
    border-color: #e05d5d;
}

/* --- submit button --- */
.main-order-tracking__submit {
    width: 100%;
    background-color: #EA5B2B;
    color: #ffffff;
    border: none;
    border-radius: 12px;
    padding: 15px 24px;
    font-weight: 600;
    margin-block-start: 8px;
    transition: background-color 0.2s ease;
}

.main-order-tracking__submit:hover,
.main-order-tracking__submit:focus-visible {
    background-color: #f69a5e;
    color: #ffffff;
}

/* --- error text --- */
.main-order-tracking .error-message {
    color: #e05d5d;
}

.main-order-tracking .error-message:not(:empty) {
    margin-block: -10px 14px;
}

/* --- hint text --- */
.main-order-tracking__hint {
    margin-block-start: 16px;
    color: #8a7364;
    font-size: 13px;
    line-height: 1.5;
    text-align: center;
}

/* --- inline result panel --- */
.main-order-tracking__result {
    width: 100%;
    margin-block-start: 36px;
    background-color: #ffffff;
    border: 1.5px solid #f0dcc8;
    border-radius: 16px;
    padding: 24px;
    text-align: left;
    box-shadow: 0 6px 24px rgba(61, 43, 31, 0.06);
}

.main-order-tracking__result-heading {
    display: inline-block;
    font-weight: 700;
    font-size: 18px;
    color: #241A12;
    margin-block-end: 14px;
    padding-block-end: 6px;
    border-block-end: 2px solid #EA5B2B;
}

/* --- inline iframe (track progress on the same page) --- */
.main-order-tracking__result-summary {
    margin: 0 0 6px;
    color: #241A12;
    font-size: 15px;
    font-weight: 600;
}

.main-order-tracking__result-notice {
    margin: 0 0 14px;
    color: #8a7364;
    font-size: 12.5px;
    line-height: 1.5;
}

.main-order-tracking__frame-wrap {
    width: 100%;
    margin-block: 8px 14px;
    border: 1.5px solid #f0dcc8;
    border-radius: 14px;
    overflow: hidden;
    background-color: #ffffff;
    box-shadow: 0 4px 16px rgba(61, 43, 31, 0.05);
}

.main-order-tracking__frame {
    display: block;
    width: 100%;
    height: 420px;
    border: 0;
    background-color: #ffffff;
}

.main-order-tracking__result-actions {
    display: flex;
    flex-direction: column;
    gap: 10px;
    align-items: stretch;
    margin-block-start: 8px;
}

.main-order-tracking__details-link {
    display: inline-block;
    text-align: center;
    background-color: #EA5B2B;
    color: #ffffff !important;
    text-decoration: none;
    border-radius: 12px;
    padding: 12px 18px;
    font-weight: 600;
    font-size: 14px;
    transition: background-color 0.2s ease;
}

.main-order-tracking__details-link:hover,
.main-order-tracking__details-link:focus-visible {
    background-color: #f69a5e;
    color: #ffffff !important;
}

.main-order-tracking__reset-button {
    background-color: transparent;
    color: #8a7364;
    border: 1.5px solid #f0dcc8;
    border-radius: 12px;
    padding: 11px 18px;
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    transition: color 0.2s ease, border-color 0.2s ease;
}

.main-order-tracking__reset-button:hover,
.main-order-tracking__reset-button:focus-visible {
    color: #241A12;
    border-color: #EA5B2B;
    outline: none;
}

.main-order-tracking__result a {
    color: #e5873a;
    text-decoration: underline;
}

.main-order-tracking__result table {
    width: 100%;
}

@media (max-width: 767px) {
    .main-order-tracking__result {
        padding: 16px;
    }

    .main-order-tracking__frame {
        height: 320px;
    }
}
/* Inline tracking timeline (17TRACK official widget) */
.main-order-tracking__timeline {
    margin-top: 16px;
    border-top: 1px dashed #e8ddd3;
    padding-top: 14px;
}

.main-order-tracking__timeline-heading {
    margin: 0 0 8px;
    font-weight: 700;
    color: #241A12;
    font-size: 15px;
}

.main-order-tracking__timeline-status {
    margin: 0 0 10px;
    font-size: 13px;
    color: #6b5d4f;
}

.main-order-tracking__timeline-widget iframe {
    border-radius: 8px;
}

/* 时间线骨架屏与淡入动画 */
.main-order-tracking__timeline-skeleton {
    padding: 14px;
    border: 1.5px solid #f0dcc8;
    border-radius: 12px;
    background: #fffdf9;
}

.ot-sk {
    border-radius: 6px;
    background: linear-gradient(90deg, #f3e7da 25%, #faf0e4 50%, #f3e7da 75%);
    background-size: 200% 100%;
    animation: ot-shimmer 1.2s ease-in-out infinite;
}

.ot-sk-badge {
    width: 90px;
    height: 26px;
    margin-bottom: 12px;
}

.ot-sk-line {
    height: 13px;
    margin-bottom: 9px;
}

.ot-sk-w60 { width: 60%; }
.ot-sk-w40 { width: 40%; }
.ot-sk-w80 { width: 80%; }

@keyframes ot-shimmer {
    0% { background-position: 100% 0; }
    100% { background-position: -100% 0; }
}

.main-order-tracking__timeline-widget {
    opacity: 0;
    transition: opacity 0.5s ease;
}

.main-order-tracking__timeline-widget.is-live {
    opacity: 1;
}

/* 兜底链接：嵌入件失效时的逃生门 */
.main-order-tracking__timeline-fallback {
    display: inline-block;
    margin-top: 8px;
    font-size: 13px;
    color: #e5873a;
    text-decoration: underline;
}
