/* assets/css/creator-order-list.css */
/* クリエイター注文一覧のスタイル */

/* 発送完了メッセージ */
.shipping-completed-message {
    background: #d4edda;
    border: 1px solid #c3e6cb;
    color: #155724;
    padding: 0.75rem;
    border-radius: 0.25rem;
    margin-bottom: 1rem;
}

.back-to-page-button {
    display: inline-block;
    margin-top: 1em;
    background: #e5e7eb;
    padding: 0.5em 1em;
    border-radius: 6px;
    text-decoration: none;
    color: #111;
}

/* 戻るボタン */
.back-button {
    display: inline-block;
    margin-bottom: 1em;
    background: #e5e7eb;
    padding: 0.5em 1em;
    border-radius: 6px;
    text-decoration: none;
    color: #111;
    font-size: 0.95em;
}

.back-button:hover {
    background: #d1d5db;
}

/* アコーディオン行 */
.accordion-row {
    cursor: pointer;
    transition: background 0.2s;
}

.accordion-row:hover {
    background-color: #f0f0f0;
}

/* 展開アイコンは行につき1つだけ表示する */
.accordion-row td:last-child::after {
    content: "▼";
    color: #888;
}

.accordion-row.open td:last-child::after {
    content: "▲";
}

/* 発送欄は ステータス → 確認 → 操作 を縦に並べ、展開アイコンだけ右端に置く */
.order-table .accordion-row td:last-child {
    display: grid;
    grid-template-columns: minmax(9.5em, 1fr) auto;
    align-items: center;
    gap: 0.45em 0.7em;
}

.order-table .accordion-row td:last-child > .status-completed,
.order-table .accordion-row td:last-child > .status-processing,
.order-table .accordion-row td:last-child > .status-on-hold,
.order-table .accordion-row td:last-child > .shipping-form,
.order-table .accordion-row td:last-child > .shipping-action-wrapper {
    grid-column: 1;
}

.order-table .accordion-row td:last-child::after {
    grid-column: 2;
    grid-row: 1 / -1;
    align-self: center;
    justify-self: end;
}

/*
 * ステータスは操作ボタンと区別できる淡い面表示。
 * 文字色は従来のステータス色、背景は同系色の薄色とする。
 */
.order-table .order-status-badge,
.order-table .status-completed,
.order-table .status-processing,
.order-table .status-on-hold {
    box-sizing: border-box !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 8.5em !important;
    min-height: 2.1em !important;
    padding: 0.3em 0.65em !important;
    border: 0 !important;
    border-radius: 2px !important;
    font-size: 0.9em !important;
    font-weight: 400 !important;
    line-height: 1.2 !important;
    white-space: nowrap !important;
    box-shadow: none !important;
}

.order-table .order-status-badge.status-paid,
.order-table .status-completed {
    color: #28a745 !important;
    background: #e8f6ec !important;
}

.order-table .order-status-badge.status-processing,
.order-table .status-processing {
    color: #b77900 !important;
    background: #fff4d6 !important;
}

.order-table .order-status-badge.status-payment-waiting,
.order-table .status-on-hold {
    color: #dc3545 !important;
    background: #fdebed !important;
}

/* アコーディオンコンテンツ */
.accordion-content {
    display: none;
    padding: 0.8em 1em;
    background: #f9f9f9;
    border-top: 1px solid #ccc;
    font-size: 0.95em;
}

/* 注文テーブル */
.order-table {
    width: 100%;
    border-collapse: collapse;
    margin-top: 1em;
}

.order-table th,
.order-table td {
    padding: 0.6em;
    border-bottom: 1px solid #ddd;
    text-align: left;
}

/* 発送操作。支払い済み／未払いとも同じ構造・寸法に揃える */
.order-table .shipping-form,
.order-table .shipping-action-wrapper {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 0.3em;
    width: 9.5em;
    margin: 0;
}

.order-table .shipping-enable-control {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.35em;
    min-height: 1.6em;
    margin: 0;
    font-size: 0.78em;
    line-height: 1.2;
    white-space: nowrap;
    cursor: pointer;
}

.order-table .shipping-enable-control.is-disabled {
    color: #9ca3af;
    cursor: not-allowed;
}

.order-table .shipping-enable-checkbox {
    margin: 0;
}

/* input[type=submit] と button のブラウザ/Astra差を潰して同じ形にする */
.order-table .shipping-complete-button,
.order-table input.shipping-complete-button,
.order-table button.shipping-complete-button {
    box-sizing: border-box !important;
    -webkit-appearance: none !important;
    appearance: none !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 9.5em !important;
    height: 2.4em !important;
    min-height: 2.4em !important;
    margin: 0 !important;
    padding: 0 0.7em !important;
    border: 1px solid #28a745 !important;
    border-radius: 4px !important;
    background: #28a745 !important;
    color: #fff !important;
    font-family: inherit !important;
    font-size: 1em !important;
    font-weight: 400 !important;
    line-height: 1 !important;
    letter-spacing: normal !important;
    text-transform: none !important;
    white-space: nowrap !important;
    cursor: pointer !important;
    box-shadow: none !important;
}

.order-table .shipping-complete-button:hover {
    background: #218838 !important;
    border-color: #218838 !important;
}

.order-table .shipping-complete-button:disabled,
.order-table .shipping-complete-button[aria-disabled="true"],
.order-table input.shipping-complete-button:disabled,
.order-table button.shipping-complete-button:disabled {
    border-color: #d1d5db !important;
    background: #e5e7eb !important;
    color: #6b7280 !important;
    cursor: not-allowed !important;
    opacity: 1 !important;
    box-shadow: none !important;
}

.order-table .shipping-complete-button:disabled:hover,
.order-table .shipping-complete-button[aria-disabled="true"]:hover,
.order-table input.shipping-complete-button:disabled:hover,
.order-table button.shipping-complete-button:disabled:hover {
    border-color: #d1d5db !important;
    background: #e5e7eb !important;
    color: #6b7280 !important;
}

@media (max-width: 900px) {
    .order-table .accordion-row td:last-child {
        grid-template-columns: minmax(0, 1fr) auto;
        align-items: start;
    }
}

/* ページネーション */
.pagination-wrapper {
    margin-top: 1.5em;
    text-align: center;
}

.page-link {
    margin: 0 0.4em;
    text-decoration: none;
    color: #333;
}

.page-link.current-page {
    font-weight: bold;
}

.page-link:hover {
    text-decoration: underline;
}

/* Order details share one disclosure state in the table and mobile card layout. */
.fanika-creator-orders { max-width: 100%; min-width: 0; }
.order-table .accordion-content.is-open { display: table-row; }
.order-row-id { display: block; color: #667085; font-size: .82em; }
.order-table .order-detail-toggle {
    min-height: 44px;
    padding: 8px 12px;
    border: 1px solid #f6b8d5;
    border-radius: 999px;
    color: #b52c70;
    background: #fff4f9;
    font: inherit;
    cursor: pointer;
}
.order-table .order-detail-toggle:focus-visible { outline: 3px solid #e78bb8; outline-offset: 2px; }

@media (max-width: 700px) {
    .fanika-creator-orders .order-table,
    .fanika-creator-orders .order-table tbody { display: block; width: 100%; min-width: 0; }
    .fanika-creator-orders .order-table thead {
        position: absolute;
        width: 1px; height: 1px;
        overflow: hidden;
        clip: rect(0, 0, 0, 0);
        white-space: nowrap;
    }
    .fanika-creator-orders .accordion-row {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 8px 12px;
        margin: 0 0 12px;
        padding: 14px;
        border: 1px solid #e9e8f0;
        border-radius: 16px;
        background: #fff;
        box-shadow: 0 4px 18px rgba(15,23,42,.05);
    }
    .fanika-creator-orders .accordion-row td {
        display: block;
        min-width: 0;
        padding: 0;
        border: 0;
        overflow-wrap: anywhere;
    }
    .fanika-creator-orders .accordion-row td:first-child,
    .fanika-creator-orders .accordion-row td:nth-child(2),
    .fanika-creator-orders .accordion-row td:last-child { grid-column: 1 / -1; }
    .fanika-creator-orders .accordion-row td::before {
        content: attr(data-label);
        display: block;
        margin-bottom: 3px;
        color: #667085;
        font-size: .75rem;
        font-weight: 700;
    }
    .fanika-creator-orders .accordion-row td:last-child {
        display: grid;
        grid-template-columns: minmax(0, 1fr);
        gap: 8px;
    }
    .fanika-creator-orders .accordion-row td:last-child::before,
    .fanika-creator-orders .accordion-row td:last-child > *,
    .fanika-creator-orders .accordion-row td:last-child::after { grid-column: 1; grid-row: auto; }
    .fanika-creator-orders .accordion-row td:last-child::after { display: none; }
    .fanika-creator-orders .order-table .shipping-form,
    .fanika-creator-orders .order-table .shipping-action-wrapper { width: min(100%, 13em); }
    .fanika-creator-orders .accordion-content.is-open {
        display: block;
        margin: -12px 0 12px;
        padding: 14px;
        border: 1px solid #e9e8f0;
        border-top: 0;
        border-radius: 0 0 16px 16px;
    }
    .fanika-creator-orders .accordion-content.is-open td {
        display: block;
        padding: 0;
        overflow-wrap: anywhere;
    }
}

/* UI renewal: Shop > 注文 */
.fanika-order-list-page{width:min(calc(100% - 16px),1080px);margin:0 auto;padding:12px 0 96px}
.fanika-order-list-hero{margin-bottom:14px;padding:18px;border:1px solid #e5ebf2;border-radius:18px;background:#fff}
.fanika-order-list-hero h1{margin:2px 0 5px;color:#263449;font-size:1.35rem}
.fanika-order-list-hero p{margin:0;color:#667085;font-size:.8rem}
.fanika-order-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-bottom:12px}
.fanika-order-summary article{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px 14px;border:1px solid #e5ebf2;border-radius:14px;background:#fff}
.fanika-order-summary span{color:#667085;font-size:.72rem;font-weight:700}
.fanika-order-summary strong{color:#263449;font-size:1rem}
.fanika-order-filters{display:flex;align-items:end;gap:8px;flex-wrap:wrap;margin-bottom:12px;padding:12px 14px;border:1px solid #e5ebf2;border-radius:14px;background:#fff}
.fanika-order-filters label{display:grid;gap:4px;color:#526173;font-size:.72rem;font-weight:700}
.fanika-order-filters select{min-height:38px;padding:7px 30px 7px 9px;border:1px solid #d8e1ea;border-radius:9px;background:#fff}
.fanika-order-filters button,.fanika-order-filters a{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:7px 13px;border:1px solid #e6b4ce;border-radius:999px;background:#fff;color:#b52c70;font-weight:800;text-decoration:none}
.fanika-order-list-page .fanika-creator-orders{padding:0;border:1px solid #e5ebf2;border-radius:16px;background:#fff;overflow:hidden}
.fanika-order-list-page .order-table{margin-top:0}
.fanika-order-list-page .order-table th{background:#fafbfd;color:#526173;font-size:.72rem;white-space:nowrap}
.fanika-order-list-page .order-table td{font-size:.78rem;vertical-align:top}
@media(max-width:900px){.fanika-order-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){
 .fanika-order-list-page{width:min(calc(100% - 12px),1080px)}
 .fanika-order-list-page .fanika-creator-orders{border:0;background:transparent;overflow:visible}
 .fanika-order-list-page .accordion-row{grid-template-columns:repeat(2,minmax(0,1fr))}
 .fanika-order-list-page .accordion-row td:first-child,
 .fanika-order-list-page .accordion-row td:nth-child(3),
 .fanika-order-list-page .accordion-row td:last-child{grid-column:1/-1}
 .fanika-order-filters{display:grid;grid-template-columns:1fr 1fr}
 .fanika-order-filters button,.fanika-order-filters a{width:100%}
}
@media(max-width:460px){.fanika-order-summary{grid-template-columns:1fr 1fr}.fanika-order-filters{grid-template-columns:1fr}}


.fanika-order-list-hero__top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.fanika-order-list-back{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:7px 13px;border:1px solid #efbfd5;border-radius:10px;background:#fff;color:#c23675;text-decoration:none;font-size:.74rem;font-weight:800}
@media(max-width:700px){
 .fanika-order-list-hero__top{display:grid;grid-template-columns:1fr}
 .fanika-order-list-back{justify-self:start}
}


.order-message-button{
  display:inline-flex;
  min-height:32px;
  align-items:center;
  justify-content:center;
  margin:4px 5px 4px 0;
  padding:5px 10px;
  border:1px solid #efbfd5;
  border-radius:999px;
  color:#b52c70;
  text-decoration:none!important;
  font-size:.74rem;
  font-weight:800;
  white-space:nowrap;
}
.order-message-unavailable{
  display:inline-flex;
  min-height:30px;
  align-items:center;
  margin:4px 5px 4px 0;
  padding:4px 9px;
  border:1px dashed #d7dee7;
  border-radius:999px;
  color:#98a2b3;
  font-size:.72rem;
  font-weight:700;
  white-space:nowrap;
}

/* QA-092: only explicit controls expand details or shipping actions. */
.fanika-order-list-page .accordion-row { cursor: default; }
.fanika-order-list-page .accordion-row:hover { background-color: inherit; }
.fanika-order-list-page .accordion-row td:last-child::after { content: none; display: none; }
.fanika-order-list-page .shipping-action-disclosure {
    grid-column: 1;
    min-width: 0;
    width: 100%;
}
.fanika-order-list-page .shipping-action-disclosure > summary {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 40px;
    padding: 7px 12px;
    border: 1px solid #efbfd5;
    border-radius: 9px;
    color: #b52c70;
    background: #fff4f9;
    font-size: .8rem;
    font-weight: 700;
    cursor: pointer;
}
.fanika-order-list-page .shipping-action-disclosure > summary:focus-visible {
    outline: 3px solid #e78bb8;
    outline-offset: 2px;
}
.fanika-order-list-page .shipping-action-disclosure[open] > summary { margin-bottom: 8px; }
.fanika-order-list-page .shipping-action-disclosure .shipping-form { width: min(100%, 13em); }

/* QA-092: explain product-type / Woo shipping-setting mismatch without showing a submit control. */
.fanika-order-list-page .shipping-config-warning {
    display: inline-flex;
    padding: .3em .65em;
    border-radius: 4px;
    background: #fff4d6;
    color: #805b00;
    font-size: .8rem;
    line-height: 1.4;
}
.fanika-order-list-page .shipping-completion-unavailable {
    display: block;
    max-width: 15em;
    color: #805b00;
    font-size: .75rem;
    line-height: 1.5;
}

/* Shipment grouping — read-only staging preview; dialog never submits. */
.fanika-shipment-dialog {
    width:min(96vw,580px); max-height:88vh; padding:0;
    border:1px solid #e3e5ed; border-radius:16px; color:#263449; background:#fff;
    box-shadow:0 15px 60px #0003;
}
.fanika-shipment-dialog::backdrop { background:rgba(16,24,40,.58); }
.fanika-shipment-dialog-content {padding:22px;display:grid;gap:16px;overflow:auto;max-height:88vh;}
.fanika-shipment-dialog header,.fanika-shipment-dialog footer {display:flex;justify-content:space-between;align-items:center;gap:12px;}
.fanika-shipment-dialog h2 {font-size:1.2rem;margin:0;}
.fanika-shipment-dialog fieldset {border:1px solid #e5ebf2;border-radius:10px;padding:12px;display:grid;gap:9px;min-width:0;}
.fanika-shipment-dialog legend {padding:0 6px;font-weight:700;}
.fanika-shipment-dialog label {display:grid;gap:6px;font-size:.9rem;}
.fanika-shipment-dialog fieldset label {display:flex;align-items:center;}
.fanika-shipment-dialog input[type="text"],.fanika-shipment-dialog select {width:100%;min-height:42px;border:1px solid #c9d2de;border-radius:8px;padding:8px;}
.fanika-shipment-dialog .fanika-shipment-notice {padding:10px;border-radius:8px;background:#fff4d6;color:#765300;}
.fanika-shipment-dialog .fanika-shipment-warning {font-size:.85rem;color:#667085;}
.fanika-shipment-dialog [hidden] {display:none!important;}
.fanika-shipment-dialog button {min-height:40px;padding:8px 12px;border:1px solid #d0d5dd;border-radius:8px;background:white;color:#344054;cursor:pointer;}
.fanika-shipment-dialog .fanika-shipment-save {background:#e5e7eb;color:#667085;cursor:not-allowed;}
.fanika-shipment-dialog button:focus-visible,.fanika-order-list-page .shipping-action-disclosure > summary:focus-visible {outline:3px solid #b52c70;outline-offset:2px;}
@media(max-width:600px){.fanika-shipment-dialog-content{padding:14px;}}

/* Hidden legacy submit remains available only as the modal's secured POST target. */
.fanika-order-list-page .shipping-form[hidden] {display:none!important;}
.fanika-shipment-dialog .fanika-shipment-save:not(:disabled){background:#b52c70;color:#fff;border-color:#b52c70;cursor:pointer;}

/* Modal opens directly from 発送操作; the old disclosure stays closed. */
.fanika-order-list-page .shipping-action-disclosure > summary { list-style: none; }
.fanika-order-list-page .shipping-action-disclosure > summary::-webkit-details-marker { display: none; }

/* Post-shipment metadata correction entry in the order actions column. */
.fanika-order-list-page .fanika-shipping-edit-open {
    min-height: 36px;
    margin: 4px 5px 4px 0;
    padding: 5px 10px;
    border: 1px solid #d7b6e3;
    border-radius: 999px;
    background: #fbf6fd;
    color: #7b398b;
    font-size: .74rem;
    font-weight: 800;
    cursor: pointer;
}
.fanika-order-list-page .fanika-shipping-edit-open:focus-visible {
    outline: 3px solid #b52c70;
    outline-offset: 2px;
}
.fanika-order-list-page .fanika-shipping-edit form {
    display: grid;
    grid-template-columns: 140px 165px 165px minmax(140px, 1fr);
    align-items: end;
    gap: 10px 12px;
    max-width: none;
    padding: 12px 0;
}
.fanika-order-list-page .fanika-shipping-edit form label { display: grid; gap: 4px; min-width: 0; font-size: .78rem; }
.fanika-order-list-page .fanika-shipping-edit form input,
.fanika-order-list-page .fanika-shipping-edit form select {
    min-height: 40px;
    width: 100%;
    padding: 6px 9px;
    border: 1px solid #d8e1ea;
    border-radius: 8px;
}

/* Compact shipment editor: fields occupy only the widths they need. */
.fanika-order-list-page .fanika-shipping-edit form p {grid-column: 1 / -1; margin: 0; font-size: .74rem;}
.fanika-order-list-page .fanika-shipping-edit form > button {grid-column: 1 / -1; justify-self: end; min-width: 126px; width: auto; padding: 8px 16px;}
.fanika-order-list-page .fanika-shipping-edit form [data-shipping-other][hidden] {display: none!important;}
@media (max-width: 850px) {
  .fanika-order-list-page .fanika-shipping-edit form {grid-template-columns: repeat(2, minmax(0, 1fr));}
}
@media (max-width: 520px) {
  .fanika-order-list-page .fanika-shipping-edit form {grid-template-columns: minmax(0, 1fr);}
}

/* Creator order detail: wide, compact delivery information on desktop. */
.fanika-order-list-page .fanika-order-delivery-details {margin-top:12px;padding-top:10px;border-top:1px solid #e5ebf2;}
.fanika-order-list-page .fanika-order-delivery-details h3 {margin:0 0 10px;font-size:.86rem;color:#344054;}
.fanika-order-list-page .fanika-order-delivery-grid {
    display:grid;
    grid-template-columns:repeat(6,minmax(0,1fr));
    gap:8px 14px;
    margin:0;
}
.fanika-order-list-page .fanika-order-delivery-field {grid-column:span 2;min-width:0;}
.fanika-order-list-page .fanika-order-delivery-field--last_name,
.fanika-order-list-page .fanika-order-delivery-field--first_name,
.fanika-order-list-page .fanika-order-delivery-field--country,
.fanika-order-list-page .fanika-order-delivery-field--postcode,
.fanika-order-list-page .fanika-order-delivery-field--state,
.fanika-order-list-page .fanika-order-delivery-field--city {grid-column:span 1;}
.fanika-order-list-page .fanika-order-delivery-field--address_1,
.fanika-order-list-page .fanika-order-delivery-field--address_2,
.fanika-order-list-page .fanika-order-delivery-field--email,
.fanika-order-list-page .fanika-order-delivery-field--notes {grid-column:span 3;}
.fanika-order-list-page .fanika-order-delivery-field dt {font-size:.68rem;font-weight:700;color:#667085;margin:0 0 2px;}
.fanika-order-list-page .fanika-order-delivery-field dd {margin:0;font-size:.79rem;line-height:1.45;overflow-wrap:anywhere;}
@media(max-width:900px) {
    .fanika-order-list-page .fanika-order-delivery-grid {grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px;}
    .fanika-order-list-page .fanika-order-delivery-field,
    .fanika-order-list-page .fanika-order-delivery-field--last_name,
    .fanika-order-list-page .fanika-order-delivery-field--first_name,
    .fanika-order-list-page .fanika-order-delivery-field--country,
    .fanika-order-list-page .fanika-order-delivery-field--postcode,
    .fanika-order-list-page .fanika-order-delivery-field--state,
    .fanika-order-list-page .fanika-order-delivery-field--city {grid-column:span 1;}
    .fanika-order-list-page .fanika-order-delivery-field--address_1,
    .fanika-order-list-page .fanika-order-delivery-field--address_2,
    .fanika-order-list-page .fanika-order-delivery-field--email,
    .fanika-order-list-page .fanika-order-delivery-field--notes {grid-column:1/-1;}
}
@media(max-width:520px) {
    .fanika-order-list-page .fanika-order-delivery-grid {grid-template-columns:minmax(0,1fr);gap:9px;}
    .fanika-order-list-page .fanika-order-delivery-field {grid-column:1/-1!important;}
}

/* Owner choice: two compact information cards, mobile stack. */
.fanika-order-list-page .fanika-order-detail-cards {
    display:grid;
    grid-template-columns:minmax(0, .88fr) minmax(0, 1.12fr);
    gap:12px;
    align-items:start;
    width:100%;
}
.fanika-order-list-page .fanika-order-shipment-card,
.fanika-order-list-page .fanika-order-delivery-details {
    margin:0;
    padding:14px;
    min-width:0;
    border:1px solid #e4e9f1;
    border-radius:12px;
    background:#fff;
}
.fanika-order-list-page .fanika-order-shipment-card {background:#faf8fd;}
.fanika-order-list-page .fanika-order-shipment-card h3,
.fanika-order-list-page .fanika-order-delivery-details h3 {margin:0 0 12px;font-size:.86rem;color:#344054;}
.fanika-order-list-page .fanika-shipment-order-detail {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px 12px;
}
.fanika-order-list-page .fanika-shipment-order-detail > div {min-width:0;}
.fanika-order-list-page .fanika-shipment-order-detail span {
    display:block;
    margin-bottom:3px;
    color:#667085;
    font-size:.69rem;
    font-weight:700;
}
.fanika-order-list-page .fanika-shipment-order-detail strong {display:block;font-size:.84rem;overflow-wrap:anywhere;}
.fanika-order-list-page .fanika-shipment-tracking {grid-column:1/-1;}
.fanika-order-list-page .fanika-shipment-tracking strong {font-size:1.05rem;letter-spacing:.02em;font-variant-numeric:tabular-nums;}
.fanika-order-list-page .fanika-order-delivery-grid {grid-template-columns:repeat(4,minmax(0,1fr));}
.fanika-order-list-page .fanika-order-delivery-field,
.fanika-order-list-page .fanika-order-delivery-field--last_name,
.fanika-order-list-page .fanika-order-delivery-field--first_name,
.fanika-order-list-page .fanika-order-delivery-field--country,
.fanika-order-list-page .fanika-order-delivery-field--postcode,
.fanika-order-list-page .fanika-order-delivery-field--state,
.fanika-order-list-page .fanika-order-delivery-field--city {grid-column:span 2;}
.fanika-order-list-page .fanika-order-delivery-field--address_1,
.fanika-order-list-page .fanika-order-delivery-field--address_2,
.fanika-order-list-page .fanika-order-delivery-field--email,
.fanika-order-list-page .fanika-order-delivery-field--notes {grid-column:1/-1;}
.fanika-order-list-page .fanika-shipping-edit {margin-top:12px;border-top:1px solid #e1dfea;padding-top:10px;}
.fanika-order-list-page .fanika-shipping-edit form {grid-template-columns:repeat(2,minmax(0,1fr));}
@media(max-width:850px) {
    .fanika-order-list-page .fanika-order-detail-cards {grid-template-columns:minmax(0,1fr);}
}
@media(max-width:520px) {
    .fanika-order-list-page .fanika-order-shipment-card,
    .fanika-order-list-page .fanika-order-delivery-details {padding:12px;}
    .fanika-order-list-page .fanika-shipment-order-detail {grid-template-columns:minmax(0,1fr);}
    .fanika-order-list-page .fanika-order-delivery-grid {grid-template-columns:repeat(2,minmax(0,1fr));}
    .fanika-order-list-page .fanika-shipping-edit form {grid-template-columns:minmax(0,1fr);}
}

/* Orders without shipment metadata show a full-width purchaser card. */
.fanika-order-list-page .fanika-order-detail-cards > .fanika-order-delivery-details:only-child {grid-column:1/-1;}

/* 2026-10-15: dense two-card order details matching the approved reference.
   Read-only information only; the shipping correction form stays unchanged. */
.fanika-order-list-page .fanika-order-detail-cards {
    grid-template-columns:minmax(0, .88fr) minmax(0, 1.12fr);
    gap:10px;
    align-items:stretch;
}
.fanika-order-list-page .fanika-order-shipment-card,
.fanika-order-list-page .fanika-order-delivery-details {
    padding:8px 10px;
    border-radius:9px;
}
.fanika-order-list-page .fanika-order-shipment-card h3,
.fanika-order-list-page .fanika-order-delivery-details h3 {
    margin:0 0 5px;
    font-size:.76rem;
    line-height:1.25;
}
.fanika-order-list-page .fanika-shipment-order-detail,
.fanika-order-list-page .fanika-order-delivery-grid {
    display:flex;
    flex-wrap:wrap;
    align-items:baseline;
    justify-content:flex-start;
    gap:3px 9px;
    min-width:0;
    margin:0;
}
.fanika-order-list-page .fanika-shipment-order-detail > div,
.fanika-order-list-page .fanika-order-delivery-field,
.fanika-order-list-page .fanika-order-delivery-field--last_name,
.fanika-order-list-page .fanika-order-delivery-field--first_name,
.fanika-order-list-page .fanika-order-delivery-field--country,
.fanika-order-list-page .fanika-order-delivery-field--postcode,
.fanika-order-list-page .fanika-order-delivery-field--state,
.fanika-order-list-page .fanika-order-delivery-field--city,
.fanika-order-list-page .fanika-order-delivery-field--address_1,
.fanika-order-list-page .fanika-order-delivery-field--address_2,
.fanika-order-list-page .fanika-order-delivery-field--email,
.fanika-order-list-page .fanika-order-delivery-field--notes {
    display:inline-flex;
    flex:0 1 auto;
    align-items:baseline;
    gap:3px;
    min-width:0;
    width:auto;
    margin:0;
}
.fanika-order-list-page .fanika-shipment-order-detail span,
.fanika-order-list-page .fanika-order-delivery-field dt {
    display:inline;
    margin:0;
    font-size:.65rem;
    line-height:1.4;
    font-weight:400;
    color:#667085;
    white-space:nowrap;
}
.fanika-order-list-page .fanika-shipment-order-detail strong,
.fanika-order-list-page .fanika-shipment-tracking strong,
.fanika-order-list-page .fanika-order-delivery-field dd {
    display:inline;
    margin:0;
    font-size:.69rem;
    line-height:1.4;
    font-weight:500;
    letter-spacing:normal;
    overflow-wrap:anywhere;
}
.fanika-order-list-page .fanika-shipment-tracking {grid-column:auto;}
.fanika-order-list-page .fanika-shipping-edit {
    margin-top:4px;
    padding-top:0;
    border-top:0;
}
.fanika-order-list-page .fanika-shipping-edit > summary {
    text-align:right;
    font-size:.68rem;
    padding:0;
}
.fanika-order-list-page .fanika-shipping-edit[open] {
    margin-top:8px;
    padding-top:8px;
    border-top:1px solid #e1dfea;
}
@media(max-width:850px) {
    .fanika-order-list-page .fanika-order-detail-cards {grid-template-columns:minmax(0,1fr);}
}
@media(max-width:520px) {
    .fanika-order-list-page .fanika-shipment-order-detail,
    .fanika-order-list-page .fanika-order-delivery-grid {gap:5px 10px;}
}

/* Explicit purchaser-detail rows: keep the owner's requested grouping intact. */
.fanika-order-list-page .fanika-order-delivery-grid {
    display:flex;
    flex-direction:column;
    align-items:stretch;
    gap:3px;
}
.fanika-order-list-page .fanika-order-delivery-row {
    display:flex;
    flex-wrap:wrap;
    align-items:baseline;
    justify-content:flex-start;
    gap:2px 9px;
    min-width:0;
    margin:0;
    padding:0;
}
.fanika-order-list-page .fanika-order-delivery-row .fanika-order-delivery-field {
    display:inline-flex;
    flex:0 1 auto;
    width:auto;
    min-width:0;
    margin:0;
    padding:0;
}
.fanika-order-list-page .fanika-order-delivery-row .fanika-order-delivery-field dd {
    overflow-wrap:anywhere;
}

/* Keep each specified purchaser row separate; address 2 and phone share row 3. */
.fanika-order-list-page .fanika-order-delivery-grid {
    display:flex;
    flex-direction:column;
    flex-wrap:nowrap;
    align-items:stretch;
    gap:3px;
}
.fanika-order-list-page .fanika-order-delivery-row {
    display:flex;
    flex-direction:row;
    flex-wrap:wrap;
    align-items:baseline;
    width:100%;
    gap:2px 9px;
}
.fanika-order-list-page .fanika-order-delivery-row .fanika-order-delivery-field--address_2 {
    flex:0 1 auto;
    max-width:100%;
}
.fanika-order-list-page .fanika-order-delivery-row .fanika-order-delivery-field--phone {
    flex:0 0 auto;
}


/* QA097: Creator order management shares the accepted management UI.
 * Limit all overrides to the /order-list/ page; leave shipping dialogs and
 * payment/order behavior untouched. */
html:has(body.page .fanika-order-list-page),
body:has(.fanika-order-list-page),
body:has(.fanika-order-list-page) .site,
body:has(.fanika-order-list-page) .site-content,
body:has(.fanika-order-list-page) .site-main,
body:has(.fanika-order-list-page) .entry-content {
  background-image: none !important;
  background-color: #edf7fe !important;
  background-attachment: scroll !important;
}
.fanika-order-list-page {
  width: min(calc(100% - 16px), 960px);
  background: transparent;
  font-family: "Noto Sans JP", system-ui, -apple-system, sans-serif;
}
.fanika-order-list-page > .fanika-creator-page-header.fanika-order-list-hero {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 14px;
  padding: 20px;
  border: 1px solid #e5ebf2;
  border-radius: 16px;
  background: linear-gradient(90deg, #fff9e9 0%, #fff 100%);
}
.fanika-order-list-page .fanika-order-list-hero .fanika-creator-page-header__title {
  margin: 2px 0 4px;
  font-size: 1.35rem;
  line-height: 1.4;
  color: #263449;
}
.fanika-order-list-page .fanika-order-list-hero .fanika-creator-page-header__description {
  margin: 0;
  color: #667085;
  font-size: .8rem;
}
.fanika-order-list-page .fanika-order-list-hero .fanika-creator-page-header__icon {
  display: inline-flex;
  flex: 0 0 48px;
  width: 48px;
  height: 48px;
  align-items: center;
  justify-content: center;
  border-radius: 14px;
  background: #fff;
  color: #ec4899;
}
.fanika-order-list-page .fanika-order-management-back {
  display: flex;
  justify-content: center;
  width: 100%;
  margin: 12px auto 28px;
}
.fanika-order-list-page .fanika-order-management-back .fanika-shared-back-navigation {
  display: flex;
  justify-content: center;
  width: 100%;
  margin: 0 !important;
}
@media (max-width: 640px) {
  .fanika-order-list-page > .fanika-creator-page-header.fanika-order-list-hero {
    padding: 16px;
  }
}
