.tdam-app{background:#f5f7fa;min-height:70vh}.tdam-card,.tdam-panel{background:#fff;border-radius:18px;padding:24px;box-shadow:0 2px 12px rgba(0,0,0,.08)}.tdam-number{font-size:34px;font-weight:700;color:#0054a6}.tdam-nav .btn{border-radius:12px}.sticker{width:420px;border:2px solid #111;padding:16px;background:#fff;font-family:Arial}.sticker h1{font-size:28px;margin:0 0 12px}.tdam-panel table{margin-bottom:0}@media print{body *{visibility:hidden}.sticker,.sticker *{visibility:visible}.sticker{position:absolute;left:0;top:0}}.tdam-panel img.img-fluid{max-height:180px;object-fit:cover;width:100%;}


/* TDAM v1.5 map tools */
.tdam-map-wrap,
.tdam-map-stage {
    position: relative;
    max-width: 100%;
    border: 1px solid #d7dee8;
    border-radius: 14px;
    overflow: hidden;
    background: #f8fafc;
}
.tdam-map-wrap img,
.tdam-map-stage img {
    display: block;
    width: 100%;
    height: auto;
}
.tdam-map-pin {
    position: absolute;
    transform: translate(-50%, -100%);
    font-size: 34px;
    filter: drop-shadow(0 2px 4px rgba(0,0,0,.35));
    z-index: 5;
}
.tdam-map-stage {
    min-height: 320px;
    cursor: crosshair;
}
.tdam-map-stage svg {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    z-index: 4;
    pointer-events: none;
}
.tdam-map-stage polygon {
    fill: rgba(13,110,253,.22);
    stroke: rgba(13,110,253,.9);
    stroke-width: 2;
}
.tdam-map-stage circle {
    fill: #dc3545;
    stroke: #fff;
    stroke-width: 2;
}

.tdam-storage-image-preview img {
    max-width: 100%;
    max-height: 220px;
    border: 1px solid #d7dee8;
    border-radius: 12px;
    display: block;
}

.tdam-subpanel {
    border: 1px solid #e1e7ef;
    background: #f8fafc;
    border-radius: 12px;
    padding: 14px;
}


/* TDAM v1.5.4 mobile-friendly improvements */
:root {
    --tdam-blue: #0054a6;
    --tdam-border: #d7dee8;
    --tdam-bg: #f5f7fa;
}

.tdam-wrapper,
.tdam-app,
.tdam-page {
    max-width: 100%;
    overflow-x: hidden;
}

.tdam-panel {
    border-radius: 16px;
}

.tdam-nav {
    position: sticky;
    top: 0;
    z-index: 100;
    background: rgba(245, 247, 250, .96);
    backdrop-filter: blur(8px);
    padding: 10px 0;
    border-bottom: 1px solid rgba(215, 222, 232, .7);
}

.tdam-nav .btn {
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.tdam-card,
.tdam-panel,
.card {
    max-width: 100%;
}

.form-control,
.form-select,
.select2-container .select2-selection--single {
    min-height: 44px;
}

.btn {
    min-height: 42px;
}

.table {
    vertical-align: middle;
}

.table-responsive,
.tdam-table-wrap {
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

.tdam-map-wrap,
.tdam-map-stage {
    max-height: 70vh;
}

.tdam-map-stage {
    touch-action: manipulation;
}

#reader {
    width: 100% !important;
    max-width: 100% !important;
}

#reader video,
#reader canvas {
    max-width: 100% !important;
    height: auto !important;
    border-radius: 14px;
}

.tdam-storage-image-preview img {
    width: 100%;
    height: auto;
}

@media (max-width: 782px) {
    body {
        -webkit-text-size-adjust: 100%;
    }

    .container,
    .container-fluid {
        padding-left: 12px !important;
        padding-right: 12px !important;
    }

    h1 {
        font-size: 1.55rem;
        line-height: 1.2;
    }

    h2 {
        font-size: 1.35rem;
    }

    h3 {
        font-size: 1.15rem;
    }

    .tdam-nav {
        gap: 8px !important;
        overflow-x: auto;
        flex-wrap: nowrap !important;
        white-space: nowrap;
        padding: 8px 4px;
        margin-left: -4px;
        margin-right: -4px;
    }

    .tdam-nav .btn {
        flex: 0 0 auto;
        padding: 9px 12px;
        font-size: .92rem;
    }

    .tdam-panel {
        padding: 14px !important;
        margin-bottom: 14px;
    }

    .row.g-3 > [class*="col-"],
    .row.g-4 > [class*="col-"] {
        margin-bottom: 6px;
    }

    .d-flex.justify-content-between,
    .d-flex.align-items-start {
        flex-direction: column;
        gap: 12px;
    }

    .d-flex.gap-2,
    .d-flex.flex-wrap.gap-2 {
        width: 100%;
    }

    .d-flex.gap-2 .btn,
    .d-flex.flex-wrap.gap-2 .btn {
        flex: 1 1 auto;
    }

    form .btn,
    .tdam-panel .btn {
        margin-bottom: 6px;
    }

    table.table {
        border-collapse: separate;
        border-spacing: 0 10px;
    }

    table.table thead {
        display: none;
    }

    table.table tbody,
    table.table tr,
    table.table td {
        display: block;
        width: 100%;
    }

    table.table tr {
        background: #fff;
        border: 1px solid var(--tdam-border);
        border-radius: 14px;
        padding: 10px;
        box-shadow: 0 2px 8px rgba(0,0,0,.04);
    }

    table.table td {
        border: 0 !important;
        padding: 7px 4px;
        word-break: break-word;
    }

    table.table td:empty {
        display: none;
    }

    table.table td .btn {
        width: 100%;
        margin-top: 4px;
    }

    .badge {
        white-space: normal;
        line-height: 1.25;
    }

    .select2-container {
        width: 100% !important;
    }

    .select2-container--bootstrap-5 .select2-selection {
        min-height: 44px;
    }

    .tdam-map-pin {
        font-size: 28px;
    }

    .tdam-map-stage {
        min-height: 240px;
    }

    .tdam-map-toolbar .btn {
        width: 100%;
        margin-bottom: 6px;
    }

    #tdam_storage_table input {
        width: 100%;
    }

    .tdam-subpanel {
        padding: 10px;
    }

    input[type="file"] {
        font-size: .95rem;
    }
}

@media (max-width: 480px) {
    .container,
    .container-fluid {
        padding-left: 10px !important;
        padding-right: 10px !important;
    }

    h1 {
        font-size: 1.35rem;
    }

    .tdam-nav .btn {
        font-size: .86rem;
        padding: 8px 10px;
    }

    .tdam-panel {
        border-radius: 12px;
        padding: 12px !important;
    }

    .form-label {
        font-size: .92rem;
        font-weight: 600;
    }

    .form-text,
    .text-muted.small {
        font-size: .82rem;
    }

    .tdam-map-wrap,
    .tdam-map-stage {
        border-radius: 10px;
    }
}

@media print {
    .tdam-nav,
    .btn,
    form,
    .no-print {
        display: none !important;
    }

    .tdam-panel,
    .card {
        box-shadow: none !important;
        border: 1px solid #ddd !important;
    }
}


/* TDAM v1.5.5 mobile table/card fix */
@media (max-width: 782px) {
    .tdam-panel .table-responsive,
    .tdam-panel .tdam-table-wrap {
        overflow-x: visible !important;
        max-width: 100% !important;
    }

    .tdam-panel table.table {
        display: block !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        table-layout: fixed !important;
        border-spacing: 0 12px !important;
    }

    .tdam-panel table.table thead {
        display: none !important;
    }

    .tdam-panel table.table tbody {
        display: block !important;
        width: 100% !important;
    }

    .tdam-panel table.table tr {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
        margin: 0 0 12px 0 !important;
        overflow: hidden !important;
    }

    .tdam-panel table.table td {
        display: flex !important;
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
        align-items: flex-start;
        justify-content: space-between;
        gap: 12px;
        white-space: normal !important;
        overflow-wrap: anywhere !important;
        word-break: break-word !important;
        text-align: right;
    }

    .tdam-panel table.table td::before {
        content: attr(data-label);
        flex: 0 0 38%;
        max-width: 38%;
        text-align: left;
        font-weight: 700;
        color: #475569;
    }

    .tdam-panel table.table td:not([data-label])::before {
        content: "";
        display: none;
    }

    .tdam-panel table.table td a,
    .tdam-panel table.table td span,
    .tdam-panel table.table td div {
        max-width: 100%;
    }

    .tdam-panel table.table td .btn {
        width: auto;
        min-width: 110px;
    }
}


/* TDAM v1.6.2 upload feedback */
.tdam-upload-form.is-uploading {
    opacity: .85;
}
.tdam-upload-form.is-uploading .tdam-upload-button {
    pointer-events: none;
}
.tdam-upload-spinner {
    display: none;
    width: 1rem;
    height: 1rem;
    margin-left: .5rem;
    border: 2px solid currentColor;
    border-right-color: transparent;
    border-radius: 50%;
    vertical-align: -0.15em;
    animation: tdam-upload-spin .75s linear infinite;
}
.tdam-upload-form.is-uploading .tdam-upload-spinner {
    display: inline-block;
}
@keyframes tdam-upload-spin {
    to { transform: rotate(360deg); }
}

/* TDAM v1.6.10 required field labels and validation highlights */
.tdam-required-badge {
    display: inline-block;
    margin-left: .35rem;
    padding: .1rem .35rem;
    border-radius: 999px;
    font-size: .72rem;
    font-weight: 700;
    line-height: 1.2;
    background: #fee2e2;
    color: #991b1b;
    vertical-align: middle;
}
.tdam-required-form.tdam-was-validated .form-control:invalid,
.tdam-required-form.tdam-was-validated .form-select:invalid {
    border-color: #dc3545;
    box-shadow: 0 0 0 .2rem rgba(220, 53, 69, .15);
}
.tdam-required-form.tdam-was-validated .form-control:invalid:focus,
.tdam-required-form.tdam-was-validated .form-select:invalid:focus {
    border-color: #dc3545;
    box-shadow: 0 0 0 .25rem rgba(220, 53, 69, .25);
}
.tdam-required-message {
    display: none;
    margin-top: .25rem;
    color: #dc3545;
    font-size: .875rem;
}
.tdam-required-form.tdam-was-validated .form-control:invalid + .tdam-required-message,
.tdam-required-form.tdam-was-validated .form-select:invalid + .tdam-required-message {
    display: block;
}

.tdam-signature-pad-wrap {
  width: 100%;
  max-width: 540px;
  border: 1px solid #ced4da;
  border-radius: .5rem;
  background: #fff;
  padding: .5rem;
}
.tdam-signature-pad {
  width: 100%;
  height: 180px;
  display: block;
  background: #fff;
  touch-action: none;
  border: 1px dashed #adb5bd;
  border-radius: .375rem;
}
.tdam-signature-pad-error {
  border-color: #dc3545 !important;
  box-shadow: 0 0 0 .2rem rgba(220,53,69,.15);
}
.tdam-signature-image {
  max-width: 220px;
  max-height: 90px;
  border: 1px solid #dee2e6;
  border-radius: .375rem;
  background: #fff;
  padding: .25rem;
}

/* v1.6.23: dashboard table cutoff and shelf audit labels */
.tdam-table-scroll{ overflow-x:auto; -webkit-overflow-scrolling:touch; }
.tdam-packages-table{ min-width:1050px; }
.tdam-packages-table td:last-child,.tdam-packages-table th:last-child{ white-space:nowrap; }
.tdam-label-grid{ display:grid; grid-template-columns:repeat(auto-fill,minmax(260px,1fr)); gap:16px; }
.tdam-shelf-label{ border:1px solid #d7dee8; border-radius:12px; padding:16px; text-align:center; background:#fff; break-inside:avoid; page-break-inside:avoid; }
.tdam-shelf-label h2{ font-size:22px; margin:0 0 6px; }
.tdam-shelf-label img{ width:180px; height:180px; max-width:100%; }
@media print{
  .no-print,.tdam-nav,header,footer{ display:none!important; }
  .tdam-label-grid{ display:grid; grid-template-columns:repeat(2,1fr); gap:10px; }
  .tdam-shelf-label{ border:1px solid #000; box-shadow:none; }
}

/* v1.6.24: cleaner shelf QR labels */
.tdam-shelf-label img{ width:220px; height:220px; }
.tdam-shelf-qr-caption{ margin-top:.5rem; font-weight:700; color:#1f2937; letter-spacing:.02em; }
.tdam-subpanel{ border:1px solid #d7dee8; border-radius:10px; padding:14px; background:#f8fafc; }
@media print{
  .tdam-shelf-label img{ width:230px; height:230px; }
  .tdam-shelf-qr-caption{ color:#000; }
}


/* v1.6.37: receive form processing overlay */
.tdam-processing-overlay{
  position:fixed;
  inset:0;
  z-index:99999;
  background:rgba(15,23,42,.55);
  display:flex;
  align-items:center;
  justify-content:center;
  padding:24px;
}
.tdam-processing-card{
  width:min(520px,100%);
  background:#fff;
  border-radius:16px;
  box-shadow:0 24px 70px rgba(15,23,42,.35);
  padding:28px;
  text-align:center;
  color:#1f2937;
}
.tdam-processing-card h3{
  margin:0 0 10px;
  color:#005eb8;
  font-size:1.35rem;
  font-weight:700;
}
.tdam-processing-card p{
  margin:0;
  color:#475569;
}

/* TDAM v1.6.47: allow large storage-map images to be drawn without clipping. */
.tdam-map-editor .tdam-map-stage {
    max-height: none;
    overflow: visible;
}
.tdam-map-editor .tdam-map-stage img {
    max-width: 100%;
    height: auto;
}
.tdam-map-editor .tdam-map-stage svg {
    height: 100%;
}

/* TDAM v1.6.48 bulk storage grid editor */
.tdam-bulk-grid-panel textarea{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace;font-size:.9rem;}
#tdam_map_svg .tdam-bulk-preview{fill:rgba(25,135,84,.12);stroke:#198754;stroke-width:3;stroke-dasharray:10 8;}

/* TDAM v1.6.59 drag-and-drop file upload zones */
.tdam-dropzone {
    margin-top: 8px;
}

.tdam-dropzone-box {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 4px;
    width: 100%;
    min-height: 145px;
    padding: 22px;
    border: 2px dashed #b8c2cc;
    border-radius: 14px;
    background: #f8fafc;
    text-align: center;
    cursor: pointer;
    transition: border-color .15s ease, background-color .15s ease, box-shadow .15s ease;
}

.tdam-dropzone.is-dragover .tdam-dropzone-box,
.tdam-dropzone.has-files .tdam-dropzone-box {
    border-color: #0d6efd;
    background: #eef5ff;
    box-shadow: 0 0 0 3px rgba(13, 110, 253, .08);
}

.tdam-dropzone-title {
    font-weight: 700;
    font-size: 1.05rem;
}

.tdam-dropzone-subtitle,
.tdam-dropzone-help {
    color: #64748b;
}

.tdam-dropzone-input {
    width: auto;
    max-width: 100%;
    margin-top: 10px;
}

.tdam-dropzone-list {
    word-break: break-word;
}
/* v1.6.64: Keep the bulk child QR print button visually consistent with the per-child Print QR buttons. */
.tdam-child-item-actions .tdam-child-print-qr-btn{
    flex:0 0 auto;
    width:auto;
}
@media (max-width: 782px){
    .tdam-panel .tdam-child-item-actions .tdam-child-print-qr-btn{
        flex:0 0 auto !important;
        width:auto !important;
        min-width:110px;
    }
}


/* TDAM v1.6.82: settings section update buttons and storage zone table fit */
.tdam-settings-section-save{ margin-bottom: 1rem; }
.tdam-settings-section-save .btn{ min-width: 190px; }
.tdam-storage-zones-table{
    border: 1px solid var(--tdam-border, #d7dee8);
    border-radius: 14px;
    background: #f8fafc;
    padding: 10px;
    max-width: 100%;
}
.tdam-storage-zones-table table{
    width: 100%;
    table-layout: fixed;
}
.tdam-storage-zones-table th,
.tdam-storage-zones-table td{
    vertical-align: middle;
}
.tdam-storage-name-col{ width: 24%; }
.tdam-storage-coords-col{ width: 48%; }
.tdam-storage-levels-col{ width: 14%; }
.tdam-storage-actions-col{ width: 14%; }
#tdam_storage_table .form-control{ min-width: 0; }
#tdam_storage_table .tdam-coords{
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
    font-size: .82rem;
}
@media (max-width: 782px){
    .tdam-settings-section-save{ justify-content: stretch !important; }
    .tdam-settings-section-save .btn{ width: 100%; }
    .tdam-storage-zones-table{ padding: 8px; overflow-x: visible !important; }
    #tdam_storage_table td{ text-align: left !important; }
    #tdam_storage_table td::before{ flex-basis: 34% !important; max-width: 34% !important; }
}

/* TDAM v1.6.99: Ask TDAM */
.tdam-ai-panel textarea{font-size:1rem;}
.tdam-ai-answer{background:#f8fafc;border:1px solid #d9e2ef;border-radius:12px;padding:16px;min-height:78px;}
.tdam-ai-answer table{background:#fff;}

/* TDAM v1.6.101: database-only Assistant result cards */
.tdam-assistant-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:.75rem;margin:.75rem 0 1rem}
.tdam-assistant-stat{border:1px solid #dbe3ef;border-radius:14px;background:#fff;padding:.85rem;text-align:center;box-shadow:0 6px 18px rgba(18,38,63,.06)}
.tdam-assistant-stat strong{display:block;font-size:1.35rem;color:#0b4f8a;line-height:1}
.tdam-assistant-stat span{display:block;font-size:.78rem;color:#667085;margin-top:.35rem}
.tdam-assistant-card-list{display:grid;gap:.85rem;margin-top:.75rem}
.tdam-assistant-card{border:1px solid #dbe3ef;border-radius:16px;background:#fff;box-shadow:0 8px 24px rgba(18,38,63,.07);padding:1rem}
.tdam-assistant-card-head{display:flex;justify-content:space-between;gap:.75rem;align-items:flex-start;border-bottom:1px solid #edf2f7;padding-bottom:.65rem;margin-bottom:.75rem}
.tdam-assistant-card-head strong{display:block;color:#102a43;font-size:1rem}.tdam-assistant-card-head span{display:block;color:#667085;font-size:.82rem}.tdam-assistant-card-head em{font-style:normal;background:#eaf4ff;color:#0b4f8a;border-radius:999px;padding:.25rem .55rem;font-size:.75rem;font-weight:700;white-space:nowrap}
.tdam-assistant-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:.65rem;margin-bottom:.8rem}.tdam-assistant-card-grid small{display:block;color:#667085;text-transform:uppercase;letter-spacing:.035em;font-size:.67rem}.tdam-assistant-card-grid b{display:block;color:#1f2937;font-size:.88rem;word-break:break-word}.tdam-assistant-actions{display:flex;flex-wrap:wrap;gap:.45rem}
@media(max-width:640px){.tdam-assistant-card-head{display:block}.tdam-assistant-card-head em{display:inline-block;margin-top:.45rem}.tdam-assistant-card-grid{grid-template-columns:1fr}.tdam-assistant-actions .btn{width:100%}}

/* v1.9.0: TDAM Assistant workspace cards */
.tdam-assistant-welcome{background:#f8fbff;border:1px solid #dbe7f5;border-radius:16px;padding:1rem;margin-bottom:.75rem}
.tdam-assistant-welcome>strong{display:block;font-size:1.05rem;color:#0b4f8a;margin-bottom:.25rem}
.tdam-assistant-action-card{background:#fff;border:1px solid #bfd7f0;border-left:5px solid #0b4f8a;border-radius:14px;padding:.85rem;margin:.75rem 0;box-shadow:0 8px 22px rgba(18,38,63,.08)}
.tdam-assistant-action-card>strong{display:block;color:#0b4f8a;margin-bottom:.3rem}
.tdam-assistant-mini-form{display:grid;grid-template-columns:120px 1fr;gap:.45rem .65rem;align-items:center;margin:.55rem 0}
.tdam-assistant-mini-form label{font-size:.75rem;color:#667085;text-transform:uppercase;letter-spacing:.035em;margin:0}
.tdam-assistant-mini-form input{border:1px solid #d0d7de;border-radius:8px;padding:.35rem .5rem;background:#f8fafc}
.tdam-assistant-activity{background:#fff;border:1px solid #dbe7f5;border-radius:14px;padding:.85rem;margin:.75rem 0}
.tdam-assistant-activity>strong{display:block;color:#0b4f8a;margin-bottom:.35rem}
.tdam-assistant-activity ul{list-style:none;margin:0;padding:0;display:grid;gap:.5rem}
.tdam-assistant-activity li{border-left:3px solid #dbe7f5;padding-left:.65rem}
.tdam-assistant-activity span{display:block;font-size:.72rem;color:#667085}.tdam-assistant-activity b{display:block;color:#1f2937}.tdam-assistant-activity em{display:block;font-style:normal;color:#334155;font-size:.9rem}
.tdam-assistant-empty{background:#f8fafc;border:1px dashed #cbd5e1;border-radius:12px;padding:.75rem;color:#667085;margin:.75rem 0}

/* TDAM v1.9.5: full-page loading feedback for slow navigations and form submissions. */
.tdam-page-loader{
    position:fixed;
    inset:0;
    z-index:2147483000;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:24px;
    background:rgba(8,25,43,.68);
    backdrop-filter:blur(3px);
    -webkit-backdrop-filter:blur(3px);
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transition:opacity .16s ease, visibility .16s ease;
}
.tdam-page-loader.is-visible{
    opacity:1;
    visibility:visible;
    pointer-events:all;
}
.tdam-page-loader-card{
    width:min(430px,100%);
    border-radius:18px;
    background:#fff;
    border:1px solid rgba(255,255,255,.75);
    box-shadow:0 24px 70px rgba(0,0,0,.28);
    padding:24px;
    text-align:center;
}
.tdam-page-loader-spinner{
    width:54px;
    height:54px;
    margin:0 auto 16px;
    border:5px solid #dbe8f4;
    border-top-color:#0b5f9e;
    border-radius:50%;
    animation:tdam-page-loader-spin .85s linear infinite;
}
.tdam-page-loader-title{font-size:1.15rem;font-weight:800;color:#12324a;margin:0 0 5px;}
.tdam-page-loader-message{color:#607284;font-size:.94rem;margin:0 0 16px;}
.tdam-page-loader-track{height:8px;overflow:hidden;border-radius:999px;background:#e6edf4;}
.tdam-page-loader-bar{width:42%;height:100%;border-radius:999px;background:#0b5f9e;animation:tdam-page-loader-progress 1.25s ease-in-out infinite;}
body.tdam-page-is-loading{cursor:progress;}
@keyframes tdam-page-loader-spin{to{transform:rotate(360deg)}}
@keyframes tdam-page-loader-progress{0%{transform:translateX(-115%)}100%{transform:translateX(340%)}}
@media (prefers-reduced-motion:reduce){
    .tdam-page-loader,.tdam-page-loader-spinner,.tdam-page-loader-bar{transition:none;animation-duration:2.2s;}
}

/* TDAM v1.9.28 package-detail inline editing */
.tdam-package-details-inline .tdam-inline-field{margin:0 0 1.15rem;transition:background-color .2s ease,box-shadow .2s ease;border-radius:10px;padding:2px 4px}
.tdam-package-details-inline .tdam-inline-label-row{display:flex;align-items:center;gap:.35rem;min-height:1.5rem}
.tdam-package-details-inline .tdam-inline-edit-button{border:0;background:transparent;padding:0 .25rem;line-height:1;font-size:1.05rem;color:#0b5ed7;opacity:.72;border-radius:6px}
.tdam-package-details-inline .tdam-inline-edit-button:hover,.tdam-package-details-inline .tdam-inline-edit-button:focus{opacity:1;background:rgba(13,110,253,.08);outline:none}
.tdam-package-details-inline .tdam-inline-value-text{white-space:pre-line;min-height:1.45rem}
.tdam-package-details-inline .tdam-inline-location-meta{margin-top:.25rem}
.tdam-package-details-inline .tdam-inline-editor{margin-top:.4rem;padding:.7rem;border:1px solid #d9e2ec;border-radius:10px;background:#f8fafc}
.tdam-package-details-inline .tdam-inline-editor-actions{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin-top:.6rem}
.tdam-package-details-inline .tdam-inline-save-status{min-width:4rem}
.tdam-package-details-inline .tdam-inline-field-saved{background:rgba(25,135,84,.08);box-shadow:0 0 0 2px rgba(25,135,84,.10)}
.tdam-package-details-inline .select2-container{width:100%!important}
@media (max-width:767.98px){.tdam-package-details-inline .tdam-inline-field{margin-bottom:1rem}.tdam-package-details-inline .tdam-inline-editor{padding:.6rem}}


/* TDAM v1.9.29: shelf QR browser print isolation */
@media print {
  body.tdam-shelf-qr-print-page .tdam-label-grid,
  body.tdam-shelf-qr-print-page .tdam-label-grid * {
    visibility: visible !important;
  }

  body.tdam-shelf-qr-print-page .tdam-app {
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #fff !important;
  }

  body.tdam-shelf-qr-print-page .tdam-label-grid {
    position: relative !important;
    left: auto !important;
    top: auto !important;
    width: 100% !important;
    margin: 0 !important;
  }

  body.tdam-shelf-qr-print-page .tdam-shelf-label {
    visibility: visible !important;
    box-shadow: none !important;
    background: #fff !important;
  }
}


/* TDAM v1.9.33: shelf QR labels move the location name above the QR and simplify the right-side content while sharing the warehouse package/item label preset.
   Exact physical dimensions are emitted by tdam_shelf_qr_label_style(). */
@media print {
  body.tdam-shelf-qr-print-page .tdam-label-grid { grid-template-columns:none!important; }
  body.tdam-shelf-qr-print-page .tdam-shelf-label h2,
  body.tdam-shelf-qr-print-page .tdam-shelf-label > p,
  body.tdam-shelf-qr-print-page .tdam-shelf-qr-caption { display:none!important; }
}


/* TDAM v1.9.35: shelf QR uses a larger QR and a balanced two-column layout while
   remaining physically constrained by the configured warehouse label preset. */
@media print {
  body.tdam-shelf-qr-print-page {
    margin:0!important;
    padding:0!important;
  }
}


/* TDAM v1.9.36: shelf QR browser preview mirrors the physical landscape label.
   Print dimensions and print layout are unchanged from v1.9.35. */


/* TDAM v1.9.37: allow Print All Shelf QRs to paginate.
   @page controls each physical label; the document itself must not be clipped
   to one label height or later shelf labels are discarded by Chrome. */
@media print {
  body.tdam-shelf-qr-print-page,
  body.tdam-shelf-qr-print-page .tdam-label-grid {
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    overflow:visible!important;
  }
}

/* TDAM v1.9.38: increase shelf location emphasis in both screen preview and printed labels. */

/* TDAM v1.9.39: split location display into Area and Shelf sections when a shelf/level is present. */

/* TDAM v1.9.40: if an area name already contains the word Area, omit the separate Area kicker to avoid duplicate wording. */

/* TDAM v1.9.41: emphasize Area value and omit duplicate Shelf kicker when the shelf value already contains the word Shelf. */

/* TDAM v1.9.42: further increase Area-name prominence in preview and print while keeping Shelf secondary. */

/* TDAM v1.9.43: Area values use a dedicated class so their size is no longer tied to generic location text. */

/* TDAM v1.9.54+: marketplace-style warehouse request catalog */
.tdam-store-hero{
  display:flex;justify-content:space-between;gap:24px;align-items:center;
  padding:30px 32px;margin:0 0 24px;border-radius:22px;
  background:linear-gradient(135deg,#14213d 0%,#1f355d 55%,#315b8a 100%);color:#fff;
  box-shadow:0 16px 45px rgba(18,38,70,.16)
}
.tdam-store-hero h1,.tdam-store-page-heading h1{margin:.2rem 0 .45rem;font-weight:850;letter-spacing:-.025em}
.tdam-store-hero p{max-width:760px;margin:0;color:rgba(255,255,255,.82);font-size:1.02rem}
.tdam-store-eyebrow{display:inline-block;font-size:.76rem;font-weight:850;text-transform:uppercase;letter-spacing:.12em;color:#ffcc4d}
.tdam-store-cart-button{display:flex;align-items:center;gap:12px;flex:0 0 auto;text-decoration:none;background:#ffcc4d;color:#172033;padding:12px 16px;border-radius:14px;font-weight:800;box-shadow:0 8px 22px rgba(0,0,0,.18)}
.tdam-store-cart-button:hover{color:#172033;transform:translateY(-1px)}
.tdam-store-cart-button strong{display:grid;place-items:center;min-width:30px;height:30px;padding:0 8px;border-radius:999px;background:#172033;color:#fff}
.tdam-store-toolbar{display:grid;grid-template-columns:minmax(190px,.9fr) minmax(280px,1.7fr) minmax(160px,.7fr) minmax(230px,1fr);gap:14px;align-items:end;background:#fff;border:1px solid #e1e7ef;border-radius:18px;padding:16px;margin-bottom:16px;box-shadow:0 6px 22px rgba(32,50,74,.06)}
.tdam-store-toolbar label,.tdam-request-review-form label{display:block;margin-bottom:6px;font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.045em;color:#64748b}
.tdam-store-summary{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:10px 4px 18px}
.tdam-store-summary div{display:flex;flex-direction:column}.tdam-store-summary span{color:#64748b;font-size:.9rem}.tdam-store-summary a{font-weight:750;text-decoration:none}
.tdam-store-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(275px,1fr));gap:18px;align-items:stretch}
.tdam-store-card{display:flex;flex-direction:column;min-width:0;background:#fff;border:1px solid #dfe6ee;border-radius:18px;overflow:hidden;box-shadow:0 8px 26px rgba(32,50,74,.07);transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}
.tdam-store-card:hover{transform:translateY(-2px);border-color:#c8d6e6;box-shadow:0 14px 34px rgba(32,50,74,.12)}
.tdam-store-card-visual{height:126px;padding:18px;display:flex;flex-direction:column;justify-content:space-between;background:linear-gradient(135deg,#eef4fb,#dce9f8);color:#183153}
.tdam-store-card-package{background:linear-gradient(135deg,#fff4d1,#ffe388);color:#4a3510}
.tdam-store-card-visual span{font-size:.72rem;font-weight:900;letter-spacing:.14em}.tdam-store-card-visual strong{font-size:2.15rem;line-height:1;font-weight:900;letter-spacing:-.035em}
.tdam-store-card-body{display:flex;flex-direction:column;flex:1;padding:18px}.tdam-store-card-body h3{font-size:1.08rem;line-height:1.28;margin:.35rem 0;font-weight:800;color:#1f2937}.tdam-store-card-body p{color:#667085;font-size:.91rem;line-height:1.45;margin:.6rem 0 1rem}
.tdam-store-card-meta{display:flex;justify-content:space-between;align-items:center;gap:8px;color:#667085;font-size:.78rem;font-weight:750;text-transform:uppercase;letter-spacing:.035em}.tdam-store-stock-low{color:#b42318}.tdam-store-sku{font-size:.84rem;color:#64748b}
.tdam-store-card-project{margin:.55rem 0 .3rem;padding:9px 10px;border-radius:10px;background:#f8fafc;border:1px solid #e8edf3;display:flex;flex-direction:column;gap:2px}.tdam-store-card-project span{font-size:.68rem;font-weight:850;text-transform:uppercase;letter-spacing:.07em;color:#7a8798}.tdam-store-card-project strong{font-size:.9rem;line-height:1.25;color:#26364a}
.tdam-store-availability{margin-top:auto;padding-top:10px;border-top:1px solid #eef1f5;display:flex;align-items:baseline;gap:7px}.tdam-store-availability strong{font-size:1.2rem;color:#162033}.tdam-store-availability span{font-size:.82rem;color:#667085}
.tdam-store-add{display:flex;align-items:end;gap:10px;margin-top:14px}.tdam-store-add>div{flex:1}.tdam-store-add label{display:block;font-size:.75rem;font-weight:800;color:#667085;margin-bottom:4px}.tdam-store-add .btn{white-space:nowrap;font-weight:750}
.tdam-store-empty{text-align:center;padding:54px 24px;background:#fff;border:1px dashed #cbd5e1;border-radius:20px;color:#64748b}.tdam-store-empty h3{color:#233044;font-weight:800}.tdam-store-empty-icon{font-size:2.4rem;margin-bottom:8px;color:#94a3b8}
.tdam-store-page-heading{display:flex;justify-content:space-between;gap:18px;align-items:center;margin:0 0 20px}.tdam-store-page-heading p{margin:0;color:#667085}
.tdam-store-cart-list{display:flex;flex-direction:column}.tdam-store-cart-line{display:flex;align-items:center;gap:14px;padding:14px 0;border-bottom:1px solid #edf1f5}.tdam-store-cart-line:last-child{border-bottom:0}.tdam-store-cart-line.is-invalid{opacity:.7}.tdam-store-cart-icon{display:grid;place-items:center;flex:0 0 52px;height:52px;border-radius:12px;background:#eef4fb;color:#244a76;font-weight:900;font-size:.78rem}.tdam-store-cart-copy{display:flex;flex-direction:column;min-width:0;flex:1}.tdam-store-cart-copy strong{color:#1f2937}.tdam-store-cart-copy span{font-size:.86rem;color:#667085}.tdam-store-cart-copy em{font-size:.82rem;color:#b42318;font-style:normal;font-weight:700}.tdam-store-checkout{position:sticky;top:18px}
.tdam-request-card{background:#fff;border:1px solid #dfe6ee;border-radius:18px;margin-bottom:16px;overflow:hidden;box-shadow:0 6px 22px rgba(32,50,74,.055)}.tdam-request-card.is-selected{border-color:#6ba0d8;box-shadow:0 0 0 3px rgba(64,126,191,.1)}.tdam-request-card-head{display:flex;justify-content:space-between;gap:18px;align-items:center;padding:15px 18px;background:#f8fafc;border-bottom:1px solid #e8edf3}.tdam-request-card-head>div{display:flex;flex-direction:column}.tdam-request-card-head strong{font-size:1rem}.tdam-request-card-head span:not(.badge){font-size:.82rem;color:#667085}.tdam-request-card-body{padding:18px}.tdam-request-facts{display:flex;flex-wrap:wrap;gap:9px 22px;margin-bottom:14px;color:#475467;font-size:.9rem}.tdam-request-items{border:1px solid #e6ebf1;border-radius:12px;overflow:hidden}.tdam-request-items>div{display:flex;justify-content:space-between;gap:18px;padding:10px 12px;border-bottom:1px solid #edf1f5}.tdam-request-items>div:last-child{border-bottom:0}.tdam-request-items span{white-space:nowrap;color:#667085;font-size:.88rem}.tdam-request-review-form{display:grid;grid-template-columns:minmax(210px,.8fr) minmax(280px,2fr) auto;gap:12px;align-items:end;margin-top:16px;padding-top:16px;border-top:1px solid #edf1f5}
@media (max-width: 900px){
  .tdam-store-hero,.tdam-store-page-heading{align-items:flex-start;flex-direction:column}.tdam-store-toolbar{grid-template-columns:1fr}.tdam-store-checkout{position:static}.tdam-request-review-form{grid-template-columns:1fr}.tdam-store-cart-button{align-self:stretch;justify-content:space-between}
}
@media (max-width: 560px){
  .tdam-store-hero{padding:22px 20px;border-radius:16px}.tdam-store-grid{grid-template-columns:1fr}.tdam-store-add{flex-wrap:wrap}.tdam-store-add .btn{flex:1}.tdam-request-card-head{align-items:flex-start;flex-direction:column}.tdam-request-items>div{flex-direction:column;gap:3px}.tdam-request-items span{white-space:normal}
}

/* TDAM v1.9.56 unified warehouse request queue */
.tdam-store-toolbar.tdam-requests-toolbar{grid-template-columns:minmax(220px,1fr) minmax(240px,1fr) minmax(150px,.55fr)}
.tdam-request-filter-summary>div{min-height:38px;display:flex;align-items:center;gap:6px;padding:.375rem .75rem;border:1px solid #dee2e6;border-radius:.375rem;background:#f8fafc;color:#475467}
.tdam-request-filter-summary strong{font-size:1.05rem;color:#1f2937}
@media (max-width:991.98px){.tdam-store-toolbar.tdam-requests-toolbar{grid-template-columns:1fr}}

/* TDAM v1.9.58: Upcoming Delivery cards and consumable full-issue units */
.tdam-store-card-upcoming{background:linear-gradient(135deg,#e6f7ff,#b9e6ff);color:#123b55}
.tdam-store-upcoming-date,.tdam-store-issue-unit{margin:.65rem 0;padding:10px 11px;border-radius:11px;background:#f8fafc;border:1px solid #e2e8f0;display:flex;flex-direction:column;gap:2px}
.tdam-store-upcoming-date span,.tdam-store-issue-unit span{font-size:.69rem;font-weight:850;text-transform:uppercase;letter-spacing:.065em;color:#64748b}
.tdam-store-upcoming-date strong,.tdam-store-issue-unit strong{font-size:.98rem;color:#1e3a5f}
.tdam-store-issue-unit small{font-size:.78rem;color:#667085}

/* TDAM v1.9.62: organized warehouse settings workspace */
html{scroll-behavior:smooth;}
.tdam-settings-page-head{
    display:flex;
    justify-content:space-between;
    gap:1rem;
    align-items:flex-end;
    margin-bottom:1rem;
}
.tdam-settings-page-head h1{margin:.1rem 0 .25rem;color:#102a43;}
.tdam-settings-page-head p{margin:0;color:#667085;max-width:760px;}
.tdam-settings-kicker{
    color:#0b4f8a;
    font-size:.72rem;
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase;
}
.tdam-settings-warehouse-picker{
    background:#fff;
    border:1px solid #dbe3ef;
    border-radius:16px;
    box-shadow:0 6px 20px rgba(18,38,63,.06);
    padding:14px 16px;
    display:grid;
    grid-template-columns:minmax(220px,1fr) minmax(260px,420px);
    gap:1rem;
    align-items:center;
}
.tdam-settings-summary{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:.75rem;
    margin:0 0 1rem;
}
.tdam-settings-summary-card{
    background:#fff;
    border:1px solid #dbe3ef;
    border-radius:14px;
    padding:.85rem 1rem;
    box-shadow:0 5px 16px rgba(18,38,63,.05);
}
.tdam-settings-summary-card span{display:block;color:#667085;font-size:.75rem;text-transform:uppercase;letter-spacing:.04em;}
.tdam-settings-summary-card strong{display:block;color:#102a43;margin-top:.2rem;font-size:.98rem;}
.tdam-settings-jumpnav{
    position:sticky;
    top:8px;
    z-index:40;
    margin:0 0 1rem;
    padding:7px;
    border:1px solid #dbe3ef;
    border-radius:16px;
    background:rgba(255,255,255,.96);
    box-shadow:0 8px 24px rgba(18,38,63,.09);
    backdrop-filter:blur(8px);
}
.tdam-settings-jumpnav-inner{display:flex;gap:6px;overflow-x:auto;scrollbar-width:thin;padding:1px;}
.tdam-settings-jump-link{
    flex:0 0 auto;
    text-decoration:none;
    color:#334155;
    font-size:.88rem;
    font-weight:700;
    padding:.55rem .78rem;
    border-radius:10px;
    white-space:nowrap;
    transition:background .15s ease,color .15s ease,box-shadow .15s ease;
}
.tdam-settings-jump-link:hover{background:#eef5fc;color:#0b4f8a;}
.tdam-settings-jump-link.is-active{background:#0b4f8a;color:#fff;box-shadow:0 4px 12px rgba(11,79,138,.18);}
.tdam-settings-form{display:grid;gap:1rem;}
.tdam-settings-card{
    scroll-margin-top:82px;
    background:#fff;
    border:1px solid #dbe3ef;
    border-radius:18px;
    box-shadow:0 8px 24px rgba(18,38,63,.07);
    padding:22px;
    margin-bottom:1rem;
}
.tdam-settings-form .tdam-settings-card{margin-bottom:0;}
.tdam-settings-card-head{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:1rem;
    border-bottom:1px solid #edf2f7;
    padding-bottom:14px;
    margin-bottom:18px;
}
.tdam-settings-card-head h2{font-size:1.35rem;margin:.1rem 0 .25rem;color:#102a43;}
.tdam-settings-card-head p{margin:0;color:#667085;max-width:760px;}
.tdam-settings-top-link{font-size:.78rem;font-weight:700;text-decoration:none;white-space:nowrap;color:#0b4f8a;}
.tdam-settings-subheading{font-size:1.05rem;color:#20364d;margin:0 0 .55rem;}
.tdam-settings-divider{border-top:1px solid #e8eef5;margin:1.5rem 0;}
.tdam-settings-toggle,
.tdam-settings-callout{
    border:1px solid #d8e5f2;
    border-radius:14px;
    padding:14px 16px;
    background:#f8fbff;
}
.tdam-settings-callout{display:flex;flex-direction:column;gap:.15rem;margin-bottom:1rem;}
.tdam-settings-callout strong{color:#0b4f8a;}
.tdam-settings-callout span{color:#667085;font-size:.9rem;}
.tdam-settings-empty-state{
    border:1px dashed #cbd5e1;
    border-radius:12px;
    padding:18px;
    background:#f8fafc;
    color:#667085;
    text-align:center;
}
.tdam-settings-save-all{
    position:sticky;
    bottom:10px;
    z-index:35;
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:1rem;
    border:1px solid #cfe0d1;
    border-radius:16px;
    padding:12px 14px;
    background:rgba(255,255,255,.97);
    box-shadow:0 10px 28px rgba(18,38,63,.13);
    backdrop-filter:blur(8px);
}
.tdam-settings-save-all strong{display:block;color:#1f2937;}
.tdam-settings-save-all span{display:block;color:#667085;font-size:.8rem;}
#tdam-settings-reference .tdam-subpanel{background:#f8fafc;}
#tdam-settings-reference .table-responsive{margin-bottom:.5rem;}
@media(max-width:900px){
    .tdam-settings-summary{grid-template-columns:repeat(2,minmax(0,1fr));}
    .tdam-settings-warehouse-picker{grid-template-columns:1fr;}
}
@media(max-width:640px){
    .tdam-settings-page-head{display:block;}
    .tdam-settings-summary{grid-template-columns:1fr 1fr;gap:.5rem;}
    .tdam-settings-summary-card{padding:.7rem .8rem;}
    .tdam-settings-jumpnav{top:4px;border-radius:13px;}
    .tdam-settings-card{padding:16px;border-radius:15px;scroll-margin-top:74px;}
    .tdam-settings-card-head{display:block;}
    .tdam-settings-top-link{display:inline-block;margin-top:.5rem;}
    .tdam-settings-save-all{position:static;display:block;}
    .tdam-settings-save-all .btn{width:100%;margin-top:.75rem;}
}

/* TDAM v1.9.63: split operational settings from Advanced / Debug & Automation */
.tdam-settings-tabs{
    display:flex;
    gap:8px;
    margin:0 0 1rem;
    padding:6px;
    border:1px solid #dbe3ef;
    border-radius:16px;
    background:#f8fafc;
    box-shadow:0 5px 16px rgba(18,38,63,.05);
}
.tdam-settings-tab{
    flex:1 1 0;
    display:flex;
    flex-direction:column;
    gap:2px;
    padding:12px 14px;
    border-radius:12px;
    color:#334155;
    text-decoration:none;
    border:1px solid transparent;
    transition:background .15s ease,color .15s ease,border-color .15s ease,box-shadow .15s ease;
}
.tdam-settings-tab span{font-weight:800;font-size:.96rem;}
.tdam-settings-tab small{color:#748094;font-size:.76rem;}
.tdam-settings-tab:hover{background:#fff;border-color:#d8e5f2;color:#0b4f8a;}
.tdam-settings-tab.is-active{
    background:#fff;
    border-color:#b8d0e7;
    color:#0b4f8a;
    box-shadow:0 5px 14px rgba(18,38,63,.08);
}
.tdam-settings-tab.is-active small{color:#54718c;}
.tdam-cron-endpoint{
    border:1px solid #dbe3ef;
    border-radius:14px;
    padding:14px;
    background:#f8fafc;
    margin-top:12px;
}
.tdam-cron-endpoint-head{display:flex;flex-direction:column;gap:2px;margin-bottom:10px;}
.tdam-cron-endpoint-head strong{color:#102a43;font-size:1rem;}
.tdam-cron-endpoint-head span{color:#667085;font-size:.84rem;}
.tdam-cron-endpoint label{display:block;margin:8px 0 4px;color:#475569;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;}
.tdam-cron-endpoint code{display:block;white-space:normal;word-break:break-all;background:#fff;border:1px solid #e2e8f0;border-radius:9px;padding:9px 10px;color:#243b53;}
@media(max-width:640px){
    .tdam-settings-tabs{display:grid;grid-template-columns:1fr;padding:5px;}
    .tdam-settings-tab{padding:10px 12px;}
}


/* TDAM v1.9.64 storage map builder */
.tdam-storage-builder{
    border:1px solid #dbe3ef;
    border-radius:18px;
    background:#fff;
    overflow:hidden;
    box-shadow:0 8px 22px rgba(18,38,63,.05);
}
.tdam-storage-builder-topbar{
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    align-items:flex-end;
    padding:16px;
    border-bottom:1px solid #edf2f7;
    background:#f8fafc;
}
.tdam-storage-builder-group{min-width:120px;}
.tdam-storage-builder-group .form-control-color{width:100%;min-width:58px;}
.tdam-storage-builder-actions{display:flex;flex-wrap:wrap;gap:8px;margin-left:auto;}
.tdam-storage-builder-body{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(290px,.9fr);gap:0;}
.tdam-storage-builder-canvas-wrap{padding:16px;border-right:1px solid #edf2f7;background:#f8fafc;}
.tdam-storage-builder-canvas-meta{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;color:#475569;}
#tdam_storage_builder_canvas{display:block;max-width:100%;width:100%;height:auto;border:1px solid #cbd5e1;border-radius:14px;background:#fff;box-shadow:inset 0 0 0 1px rgba(255,255,255,.4);cursor:grab;}
#tdam_storage_builder_canvas:active{cursor:grabbing;}
.tdam-storage-builder-side{display:grid;gap:12px;padding:16px;align-content:start;}
.tdam-storage-builder-panel{border:1px solid #e2e8f0;border-radius:16px;padding:14px;background:#fff;}
.tdam-storage-builder-panel h4{margin:0 0 10px;font-size:1rem;color:#102a43;}
.tdam-storage-builder-object-list{display:grid;gap:8px;max-height:240px;overflow:auto;}
.tdam-storage-builder-object{display:flex;justify-content:space-between;align-items:center;gap:10px;border:1px solid #dbe3ef;border-radius:12px;padding:10px 12px;background:#f8fafc;color:#243b53;text-align:left;}
.tdam-storage-builder-object strong{display:block;font-size:.92rem;}
.tdam-storage-builder-object span{font-size:.73rem;font-weight:800;letter-spacing:.04em;color:#64748b;}
.tdam-storage-builder-object.is-active{background:#eaf3ff;border-color:#8fb9e2;box-shadow:0 4px 12px rgba(18,38,63,.08);}
@media(max-width:980px){
    .tdam-storage-builder-body{grid-template-columns:1fr;}
    .tdam-storage-builder-canvas-wrap{border-right:0;border-bottom:1px solid #edf2f7;}
}


/* TDAM v1.9.67: existing storage-zone overlays are editor-only, not map artwork */
#tdam_map_svg .tdam-existing-zone-overlay{
    fill:rgba(13,110,253,.045);
    stroke:rgba(13,110,253,.9);
    stroke-width:2;
    stroke-dasharray:10 8;
}

/* TDAM v1.9.68: unified Warehouse Inventory page */
.tdam-inventory-head{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:1rem;
}
.tdam-inventory-tabs{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
}
.tdam-inventory-tab{
    display:flex;
    flex-direction:column;
    gap:3px;
    padding:15px 17px;
    border:1px solid #d8e2ee;
    border-radius:15px;
    background:#f8fafc;
    color:#334155;
    text-decoration:none;
    box-shadow:0 4px 14px rgba(18,38,63,.04);
    transition:border-color .15s ease,background .15s ease,box-shadow .15s ease,transform .15s ease;
}
.tdam-inventory-tab:hover{
    border-color:#9dbbd8;
    background:#fff;
    color:#0b4f8a;
    transform:translateY(-1px);
}
.tdam-inventory-tab strong{font-size:1.05rem;color:inherit;}
.tdam-inventory-tab span{font-size:.83rem;color:#667085;}
.tdam-inventory-tab.is-active{
    border-color:#0b66b2;
    background:#eef6ff;
    color:#0b4f8a;
    box-shadow:0 7px 18px rgba(11,79,138,.12);
}
@media(max-width:640px){
    .tdam-inventory-tabs{grid-template-columns:1fr;}
}

/* TDAM v1.9.69 request pickup / delivery handoff tracking */
.tdam-request-handoff-form{
  border-top:1px solid #edf1f5;
  padding-top:16px;
}
.tdam-request-handoff-record{
  border:1px solid #cfe3d5;
  border-radius:14px;
  background:#f7fbf8;
  padding:14px 16px;
}
.tdam-request-handoff-record h4{margin:0 0 10px;color:#1f5132;font-size:1.05rem;}
.tdam-request-handoff-record .tdam-signature-image{max-width:360px;width:100%;height:auto;background:#fff;border:1px solid #dce7df;border-radius:10px;padding:6px;}

/* TDAM v1.9.71 Planning Tool PO lookup */
.tdam-po-lookup-details:empty{display:none;}
.tdam-po-detail-note{
    border:1px solid #dbe3ef;
    border-radius:10px;
    background:#f8fafc;
    color:#64748b;
    padding:8px 10px;
    font-size:.82rem;
}
.tdam-po-detail-card{
    border:1px solid #cfe0ef;
    border-radius:12px;
    overflow:hidden;
    background:#fff;
}
.tdam-po-detail-head{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:12px;
    padding:9px 11px;
    background:#f3f8fd;
    border-bottom:1px solid #dbe7f2;
}
.tdam-po-detail-head strong{color:#183b56;font-size:.88rem;}
.tdam-po-detail-head span{color:#64748b;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;}
.tdam-po-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;}
.tdam-po-detail-item{padding:8px 11px;border-bottom:1px solid #edf2f7;min-width:0;}
.tdam-po-detail-item:nth-child(odd){border-right:1px solid #edf2f7;}
.tdam-po-detail-item span{display:block;color:#64748b;font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.03em;}
.tdam-po-detail-item strong{display:block;color:#243b53;font-size:.84rem;word-break:break-word;margin-top:2px;}
@media(max-width:640px){
    .tdam-po-detail-grid{grid-template-columns:1fr;}
    .tdam-po-detail-item:nth-child(odd){border-right:0;}
}


/* TDAM v1.9.81 PO details layout */
.tdam-po-detail-host:empty{display:none;}
.tdam-po-detail-host .tdam-po-lookup-details{width:100%;margin-top:0!important;}
.tdam-po-detail-host .tdam-po-detail-card{width:100%;}


/* TDAM v1.9.89 PO detail-card polish */
.tdam-po-detail-title{display:flex;align-items:center;gap:9px;min-width:0;}
.tdam-po-source-badge{display:inline-flex;align-items:center;border:1px solid #cbdbea;border-radius:999px;background:#fff;color:#52677a!important;padding:2px 7px;font-size:.64rem!important;line-height:1.25;}
.tdam-po-detail-toggle{display:inline-flex;align-items:center;gap:7px;border:0;background:transparent;color:#315b7c;font-size:.76rem;font-weight:700;padding:4px 2px;white-space:nowrap;}
.tdam-po-detail-toggle:hover{color:#0b4a7c;text-decoration:underline;}
.tdam-po-toggle-chevron{width:8px;height:8px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-2px);transition:transform .16s ease;}
.tdam-po-detail-card.is-collapsed .tdam-po-toggle-chevron{transform:rotate(-135deg) translate(-1px,-1px);}
.tdam-po-detail-status{display:flex;align-items:center;flex-wrap:wrap;gap:7px;padding:8px 11px;background:#f4fbf6;border-bottom:1px solid #d9eadf;color:#365745;font-size:.79rem;}
.tdam-po-found-check{display:inline-flex;align-items:center;justify-content:center;width:19px;height:19px;border-radius:50%;background:#d8efdf;color:#1f6b3a;font-size:.75rem;font-weight:900;}
.tdam-po-status-separator{color:#8ca299;}
.tdam-po-status-warning{color:#8b5b16;font-weight:700;}
.tdam-po-detail-body[hidden]{display:none!important;}
.tdam-po-autofill-summary{padding:10px 11px 8px;background:#fbfdfb;border-bottom:1px solid #edf2ef;}
.tdam-po-autofill-summary>strong{display:block;color:#42604d;font-size:.72rem;text-transform:uppercase;letter-spacing:.035em;margin-bottom:6px;}
.tdam-po-autofill-chips{display:flex;flex-wrap:wrap;gap:6px;}
.tdam-po-autofill-chip{display:inline-flex;align-items:center;border:1px solid #b8d9c2;border-radius:999px;background:#eef8f1;color:#2f6240;padding:3px 8px;font-size:.72rem;font-weight:700;line-height:1.25;}
/* Visually mark only fields TDAM actually changed from the PO. The marker disappears automatically when the user edits the field. */
.tdam-incoming-form input[data-tdam-po-autofilled="1"],
.tdam-incoming-form textarea[data-tdam-po-autofilled="1"],
.tdam-incoming-form select[data-tdam-po-autofilled="1"]:not(.select2-hidden-accessible),
.tdam-receive-form input[data-tdam-po-autofilled="1"],
.tdam-receive-form textarea[data-tdam-po-autofilled="1"],
.tdam-receive-form select[data-tdam-po-autofilled="1"]:not(.select2-hidden-accessible){
    border-color:#7fbd91!important;
    background-color:#f5fbf7!important;
    box-shadow:0 0 0 .16rem rgba(55,133,78,.10)!important;
}
.tdam-incoming-form select[data-tdam-po-autofilled="1"] + .select2 .select2-selection,
.tdam-receive-form select[data-tdam-po-autofilled="1"] + .select2 .select2-selection{
    border-color:#7fbd91!important;
    background-color:#f5fbf7!important;
    box-shadow:0 0 0 .16rem rgba(55,133,78,.10)!important;
}
@media(max-width:640px){
    .tdam-po-detail-head{align-items:flex-start;}
    .tdam-po-detail-title{align-items:flex-start;flex-direction:column;gap:4px;}
    .tdam-po-detail-status{align-items:flex-start;}
}

/* TDAM v1.9.99 explicit PO entry mode */
.tdam-po-mode-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;margin-bottom:.35rem}
.tdam-po-mode-option{display:flex;gap:.55rem;align-items:flex-start;border:1px solid #d7dee7;border-radius:.65rem;padding:.7rem .8rem;background:#fff;cursor:pointer;min-width:0}
.tdam-po-mode-option input{margin-top:.2rem;flex:0 0 auto}
.tdam-po-mode-option span{display:flex;flex-direction:column;line-height:1.25;min-width:0}
.tdam-po-mode-option strong{font-size:.9rem;color:#183b56}
.tdam-po-mode-option small{font-size:.75rem;color:#667085;margin-top:.2rem;font-weight:400}
.tdam-po-mode-option:has(input:checked){border-color:#5b8def;box-shadow:0 0 0 2px rgba(91,141,239,.12)}
@media (max-width:575.98px){.tdam-po-mode-options{grid-template-columns:1fr}}

/* TDAM v1.9.101: icon-card Settings Home */
.tdam-settings-home{
    margin:0 0 1.15rem;
    padding:20px;
    border:1px solid #dbe3ef;
    border-radius:20px;
    background:linear-gradient(180deg,#f8fbff 0%,#f4f8fc 100%);
    box-shadow:0 8px 24px rgba(18,38,63,.06);
}
.tdam-settings-home-head{margin-bottom:14px;}
.tdam-settings-home-head h2{margin:.1rem 0 .25rem;color:#102a43;font-size:1.35rem;}
.tdam-settings-home-head p{margin:0;color:#667085;max-width:760px;}
.tdam-settings-home-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:12px;
}
.tdam-settings-home-card{
    --tdam-card-accent:#0b4f8a;
    --tdam-card-soft:#eef5fc;
    position:relative;
    min-height:146px;
    display:grid;
    grid-template-columns:50px minmax(0,1fr) 24px;
    align-items:start;
    gap:12px;
    padding:16px;
    color:#243b53;
    text-decoration:none;
    background:#fff;
    border:1px solid #dbe3ef;
    border-radius:16px;
    box-shadow:0 5px 16px rgba(18,38,63,.045);
    transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease;
}
.tdam-settings-home-card:hover{
    color:#243b53;
    transform:translateY(-2px);
    border-color:color-mix(in srgb,var(--tdam-card-accent) 40%,#dbe3ef);
    box-shadow:0 10px 24px rgba(18,38,63,.10);
}
.tdam-settings-home-card:focus-visible{outline:3px solid rgba(11,79,138,.2);outline-offset:2px;}
.tdam-settings-home-icon,
.tdam-settings-section-icon{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    flex:0 0 auto;
    border-radius:14px;
    background:var(--tdam-card-soft,#eef5fc);
    color:var(--tdam-card-accent,#0b4f8a);
}
.tdam-settings-home-icon{width:50px;height:50px;}
.tdam-settings-home-icon svg{width:27px;height:27px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}
.tdam-settings-home-copy{display:flex;flex-direction:column;min-width:0;}
.tdam-settings-home-copy strong{color:#102a43;font-size:1rem;line-height:1.25;margin:2px 0 5px;}
.tdam-settings-home-copy>span{color:#667085;font-size:.82rem;line-height:1.38;}
.tdam-settings-home-copy small{display:inline-flex;align-self:flex-start;margin-top:10px;padding:3px 8px;border-radius:999px;background:var(--tdam-card-soft);color:var(--tdam-card-accent);font-size:.7rem;font-weight:800;line-height:1.2;}
.tdam-settings-home-arrow{align-self:center;color:var(--tdam-card-accent);font-size:1.25rem;font-weight:800;transition:transform .16s ease;}
.tdam-settings-home-card:hover .tdam-settings-home-arrow{transform:translateX(3px);}
.tdam-settings-home-card.tone-1{--tdam-card-accent:#0b4f8a;--tdam-card-soft:#eaf4fc;}
.tdam-settings-home-card.tone-2{--tdam-card-accent:#8a4b08;--tdam-card-soft:#fff4df;}
.tdam-settings-home-card.tone-3{--tdam-card-accent:#087a65;--tdam-card-soft:#e6f7f2;}
.tdam-settings-home-card.tone-4{--tdam-card-accent:#6550a3;--tdam-card-soft:#f0edfb;}
.tdam-settings-home-card.tone-5{--tdam-card-accent:#8b3f58;--tdam-card-soft:#fbeaf0;}
.tdam-settings-home-card.tone-6{--tdam-card-accent:#316337;--tdam-card-soft:#eaf6eb;}
.tdam-settings-home-card.tone-advanced{--tdam-card-accent:#475569;--tdam-card-soft:#edf1f5;}
.tdam-settings-card-heading{display:flex;align-items:flex-start;gap:12px;min-width:0;}
.tdam-settings-section-icon{--tdam-card-accent:#0b4f8a;--tdam-card-soft:#eef5fc;width:42px;height:42px;border-radius:12px;margin-top:1px;}
.tdam-settings-section-icon svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}
@media(max-width:1100px){
    .tdam-settings-home-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:640px){
    .tdam-settings-home{padding:14px;border-radius:16px;}
    .tdam-settings-home-grid{grid-template-columns:1fr;gap:9px;}
    .tdam-settings-home-card{min-height:0;grid-template-columns:44px minmax(0,1fr) 20px;padding:13px;}
    .tdam-settings-home-icon{width:44px;height:44px;border-radius:12px;}
    .tdam-settings-home-icon svg{width:24px;height:24px;}
    .tdam-settings-card-heading{gap:9px;}
    .tdam-settings-section-icon{width:38px;height:38px;}
}

/* TDAM v1.9.102: collapsible settings-card workspace */
.tdam-settings-home-group{
    display:flex;
    align-items:baseline;
    flex-wrap:wrap;
    gap:8px 12px;
    margin:2px 0 10px;
}
.tdam-settings-home-group h3{margin:0;color:#173b5d;font-size:.92rem;font-weight:850;}
.tdam-settings-home-group span{color:#7a8796;font-size:.76rem;}
.tdam-settings-home-group-advanced{margin-top:20px;padding-top:17px;border-top:1px solid #dfe8f1;}
.tdam-settings-home-grid-advanced{margin-bottom:2px;}
.tdam-settings-home-card.is-active{
    border-color:var(--tdam-card-accent);
    box-shadow:0 0 0 2px color-mix(in srgb,var(--tdam-card-accent) 15%,transparent),0 10px 24px rgba(18,38,63,.09);
}
.tdam-settings-home-card.is-active .tdam-settings-home-arrow{transform:translateX(3px);}
.tdam-settings-home-card.tone-advanced-1{--tdam-card-accent:#5c4a91;--tdam-card-soft:#f0edfb;}
.tdam-settings-home-card.tone-advanced-2{--tdam-card-accent:#9a5b08;--tdam-card-soft:#fff3df;}
.tdam-settings-home-card.tone-advanced-3{--tdam-card-accent:#176a7a;--tdam-card-soft:#e8f5f7;}
.tdam-settings-home-card.tone-advanced-4{--tdam-card-accent:#475569;--tdam-card-soft:#edf1f5;}
.tdam-settings-panel-target,
.tdam-settings-panel-companion,
.tdam-settings-save-all{
    display:none!important;
}
.tdam-settings-panel-target.is-open,
.tdam-settings-panel-companion.is-open{
    display:block!important;
}
.tdam-settings-save-all.is-open{
    display:flex!important;
}
.tdam-settings-panel-target.is-open{
    animation:tdamSettingsPanelIn .16s ease-out;
}
@keyframes tdamSettingsPanelIn{
    from{opacity:.25;transform:translateY(5px)}
    to{opacity:1;transform:none}
}
.tdam-settings-back-button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    align-self:flex-start;
    padding:9px 12px;
    border:1px solid #cfdbe8;
    border-radius:11px;
    background:#fff;
    color:#24567c;
    text-decoration:none;
    font-size:.8rem;
    font-weight:800;
    box-shadow:0 4px 12px rgba(18,38,63,.045);
}
.tdam-settings-back-button:hover{color:#0b4f8a;border-color:#9ebbd5;background:#f8fbff;}
.tdam-settings-home-advanced{margin-top:.15rem;}
@media(min-width:1450px){
    .tdam-settings-home-grid{grid-template-columns:repeat(4,minmax(0,1fr));}
    .tdam-settings-home-card{min-height:124px;padding:14px;}
}
@media(max-width:640px){
    .tdam-settings-home-group{display:block;}
    .tdam-settings-home-group span{display:block;margin-top:2px;}
    .tdam-settings-home-group-advanced{margin-top:14px;padding-top:14px;}
    .tdam-settings-save-all.is-open{display:block!important;}
    .tdam-settings-back-button{margin-top:10px;}
}
.tdam-settings-home-grid-advanced .tdam-settings-home-card,
.tdam-settings-home-advanced .tdam-settings-home-card{min-height:112px;}
@media(min-width:1450px){
    .tdam-settings-home-grid-advanced .tdam-settings-home-card,
    .tdam-settings-home-advanced .tdam-settings-home-card{min-height:106px;}
}

/* TDAM v1.9.103: storage map builder tutorial */
.tdam-storage-map-tutorial{
    margin:0 0 18px;
    border:1px solid #cbdced;
    border-radius:16px;
    background:#f8fbff;
    overflow:hidden;
    box-shadow:0 5px 16px rgba(18,38,63,.05);
}
.tdam-storage-map-tutorial summary{
    display:flex;
    align-items:center;
    gap:12px;
    padding:14px 16px;
    cursor:pointer;
    list-style:none;
    user-select:none;
}
.tdam-storage-map-tutorial summary::-webkit-details-marker{display:none;}
.tdam-storage-map-tutorial summary:hover{background:#f1f7fd;}
.tdam-storage-map-tutorial-icon{
    display:grid;
    place-items:center;
    flex:0 0 42px;
    width:42px;
    height:42px;
    border-radius:12px;
    background:#e7f2fc;
    color:#0b66b2;
}
.tdam-storage-map-tutorial-icon svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}
.tdam-storage-map-tutorial-title{display:flex;flex-direction:column;gap:2px;min-width:0;}
.tdam-storage-map-tutorial-title strong{font-size:1rem;color:#102a43;}
.tdam-storage-map-tutorial-title small{font-size:.82rem;color:#64748b;font-weight:500;}
.tdam-storage-map-tutorial-toggle{margin-left:auto;font-size:1.25rem;font-weight:800;color:#64748b;transition:transform .15s ease;}
.tdam-storage-map-tutorial[open] .tdam-storage-map-tutorial-toggle{transform:rotate(180deg);}
.tdam-storage-map-tutorial-body{padding:0 16px 16px;border-top:1px solid #dbe7f2;background:#fff;}
.tdam-storage-map-tutorial-concepts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:16px 0 12px;}
.tdam-storage-map-tutorial-concepts>div{border:1px solid #dbe3ef;border-radius:13px;padding:12px 14px;background:#f8fafc;}
.tdam-storage-map-tutorial-concepts strong{display:block;color:#102a43;margin-bottom:4px;}
.tdam-storage-map-tutorial-concepts span{display:block;color:#526579;font-size:.86rem;line-height:1.45;}
.tdam-storage-map-tutorial-important{border-left:4px solid #0b66b2;border-radius:8px;padding:10px 12px;background:#eef6ff;color:#294861;font-size:.88rem;line-height:1.45;margin-bottom:14px;}
.tdam-storage-map-tutorial-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
.tdam-storage-map-tutorial-step{display:flex;gap:11px;align-items:flex-start;border:1px solid #e2e8f0;border-radius:13px;padding:12px;background:#fff;}
.tdam-storage-map-tutorial-number{display:grid;place-items:center;flex:0 0 30px;width:30px;height:30px;border-radius:50%;background:#0b66b2;color:#fff;font-size:.8rem;font-weight:800;}
.tdam-storage-map-tutorial-step strong{display:block;color:#102a43;margin-bottom:3px;}
.tdam-storage-map-tutorial-step p{margin:0;color:#5c6f82;font-size:.84rem;line-height:1.45;}
.tdam-storage-map-tutorial-example{margin-top:12px;border:1px dashed #9fb8cf;border-radius:12px;padding:11px 13px;background:#f8fafc;color:#455b70;font-size:.85rem;line-height:1.5;}
.tdam-storage-map-tutorial-example code{background:#e9eef5;border-radius:5px;padding:2px 5px;color:#243b53;}
@media(max-width:760px){
    .tdam-storage-map-tutorial-concepts,.tdam-storage-map-tutorial-steps{grid-template-columns:1fr;}
    .tdam-storage-map-tutorial-title small{display:none;}
}
