.dn-customer-main-tabs{flex-wrap:wrap}
.dn-catalog-toolbar{display:flex;align-items:end;gap:12px;flex-wrap:wrap}
.dn-catalog-toolbar label{display:grid;gap:7px;font-size:13px;color:#55627a;min-width:150px}
.dn-catalog-toolbar label:first-child{flex:1;min-width:min(280px,100%)}
.dn-catalog-toolbar input,.dn-catalog-toolbar select{box-sizing:border-box;min-height:42px;width:100%;padding:8px 12px;border:1px solid #d8dfeb;border-radius:6px;background:#fff;color:#253047;font:inherit}
.dn-catalog-note,#dn-contract-catalog>p[role=status]{color:#65748b;font-size:13px;line-height:1.6}
.dn-catalog-task{border:1px solid #dce3ed;border-radius:10px;padding:18px;min-width:0;background:#fff;overflow-wrap:anywhere}
.dn-catalog-task header{display:flex;justify-content:space-between;align-items:start;gap:12px}
.dn-catalog-task h3{margin:6px 0;font-size:16px;color:#253047}
.dn-catalog-task header p,.dn-catalog-category{margin:6px 0;color:#65748b;font-size:13px}
.dn-catalog-task small{font-size:12px;color:#53637c}
.dn-catalog-badge{flex-shrink:0;font-size:12px;font-weight:600;border-radius:5px;padding:5px 8px}
.dn-catalog-badge.is-included{color:#2452a0;background:#eaf2ff}
.dn-catalog-badge.is-excluded{color:#96500e;background:#fff2df}
.dn-catalog-event,.dn-catalog-history{font-size:13px;color:#53637c;line-height:1.8}
.dn-catalog-event span,.dn-catalog-event time{margin-right:8px}
.dn-catalog-task summary{cursor:pointer;font-size:13px;padding:8px 0}
.dn-catalog-scope{white-space:pre-wrap;font-size:13px;line-height:1.7}
.dn-catalog-task button{min-height:36px}
.dn-catalog-history{background:#f6f8fc;border-radius:6px;padding:12px;margin-top:4px}
.dn-catalog-history ul{padding:0 0 0 18px;margin:0}
.dn-catalog-history li+li{margin-top:8px}
.dn-catalog-history li span:last-child{display:block}
.dn-catalog-more{margin:16px auto;display:block}
.dn-catalog-empty{text-align:center;color:#65748b;padding:40px 12px}
@media(max-width:600px){.dn-catalog-task{padding:12px}.dn-catalog-task header{flex-direction:column;gap:6px}.dn-catalog-toolbar label{flex:1}.dn-customer-main-tabs button{white-space:normal!important}.dn-catalog-event time{display:block}}

.dn-contract-product-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:4px 0 20px}.dn-contract-product-tabs button{min-height:40px;padding:8px 16px;border:1px solid #d8dfeb;border-radius:6px;background:#fff;color:#4d607d;font:inherit;cursor:pointer;max-width:100%;overflow-wrap:anywhere}.dn-contract-product-tabs button[aria-pressed=true]{background:#eaf2ff;color:#2452a0;border-color:#759ce1;font-weight:600}.dn-contract-product-tabs button:focus-visible{outline:2px solid #3975df;outline-offset:2px}

/* Contract categories form read-only board columns. Scroll stays inside the board. */
#dn-contract-catalog{min-width:0;max-width:100%}
.dn-catalog-grouping{display:flex;align-items:center;gap:12px;margin:4px 0 18px;flex-wrap:wrap;font-size:13px;color:#53637c}
.dn-catalog-grouping>div{display:flex;gap:4px;padding:4px;border-radius:8px;background:#edf2f8}
.dn-catalog-grouping button{min-height:40px;padding:8px 18px;border:0;border-radius:6px;background:transparent;color:#53637c;font:inherit;cursor:pointer}
.dn-catalog-grouping button[aria-pressed=true]{background:#fff;color:#002159;font-weight:600;box-shadow:0 1px 3px #172c4c1a}
.dn-catalog-grouping button:hover{color:#002159;background:#fff}
.dn-catalog-grouping button:focus-visible,.dn-catalog-board:focus-visible{outline:2px solid #3975df;outline-offset:2px}
.dn-catalog-board{display:flex;align-items:stretch;gap:16px;overflow-x:auto;overscroll-behavior-x:contain;padding:12px 4px 18px;max-width:100%;min-width:0;height:min(680px,70vh);min-height:320px;border-radius:10px;background:#f5f7fa;scrollbar-gutter:stable}
.dn-catalog-board:empty{display:none}
.dn-catalog-column{flex:0 0 310px;min-width:0;padding:0 8px;box-sizing:border-box;display:flex;flex-direction:column}
.dn-catalog-column-heading{min-height:52px;padding:4px 4px 12px;flex-shrink:0}
.dn-catalog-column-heading>p{margin:0 0 6px;font-size:12px;color:#65748b;line-height:1.5;overflow-wrap:anywhere}
.dn-catalog-column-heading>div{display:flex;align-items:start;justify-content:space-between;gap:10px}
.dn-catalog-column-heading h3{margin:0;font-size:14px;line-height:1.5;color:#253047;overflow-wrap:anywhere}
.dn-catalog-column-heading span{flex-shrink:0;font-size:12px;color:#53637c;background:#e7edf5;padding:2px 7px;border-radius:10px}
.dn-catalog-column-cards{display:flex;flex-direction:column;gap:10px;overflow-y:auto;min-height:0;padding:0 2px 4px;overscroll-behavior-y:contain}.dn-catalog-column-cards>.dn-catalog-task{flex-shrink:0}
.dn-catalog-board .dn-catalog-task{padding:14px;box-shadow:0 1px 2px #172c4c08}
.dn-catalog-board .dn-catalog-task header{flex-direction:column;gap:6px}
.dn-catalog-board .dn-catalog-task h3{font-size:14px;line-height:1.6;margin:4px 0}
.dn-catalog-board .dn-catalog-task header small{display:none}
.dn-catalog-board .dn-catalog-task header p,.dn-catalog-board .dn-catalog-category{font-size:12px;line-height:1.6}
.dn-catalog-board .dn-catalog-event{font-size:12px;line-height:1.7;margin:10px 0}
.dn-catalog-board .dn-catalog-event time,.dn-catalog-board .dn-catalog-event span:last-child{display:block}
@media(max-width:600px){.dn-catalog-column{flex-basis:min(290px,calc(100vw - 64px))}.dn-catalog-board{gap:8px}.dn-catalog-grouping button{padding:8px 16px;min-height:44px}}

.dn-catalog-view-switch{display:flex;gap:4px;width:fit-content;padding:4px;margin:4px 0 16px;border:1px solid #d8dfeb;border-radius:8px;background:#f5f7fa}
.dn-catalog-view-switch button{min-height:40px;padding:8px 18px;border:0;border-radius:5px;background:transparent;color:#53637c;font:inherit;font-size:13px;cursor:pointer}
.dn-catalog-view-switch button[aria-pressed=true]{background:#fff;color:#002159;font-weight:600;box-shadow:0 1px 3px #172c4c1a}
.dn-catalog-view-switch button:focus-visible,.dn-catalog-table-scroll:focus-visible{outline:2px solid #3975df;outline-offset:2px}
.dn-catalog-grouping[hidden]{display:none}
.dn-catalog-table-scroll{max-width:100%;overflow:auto;max-height:70vh;border:1px solid #dce3ed;border-radius:8px;overscroll-behavior:contain}
.dn-catalog-table{width:100%;min-width:1250px;border-collapse:separate;border-spacing:0;table-layout:fixed;text-align:left;font-size:13px;color:#253047}
.dn-catalog-table caption{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.dn-catalog-table th,.dn-catalog-table td{padding:12px;vertical-align:top;border-bottom:1px solid #e6ebf2;overflow-wrap:anywhere;line-height:1.6}
.dn-catalog-table thead th{position:sticky;top:0;z-index:1;background:#f2f5f9;color:#53637c;font-weight:600}
.dn-catalog-table th:first-child{width:250px}.dn-catalog-table th:nth-child(2){width:150px}.dn-catalog-table th:nth-child(7){width:150px}.dn-catalog-table th:nth-child(9){width:80px}
.dn-catalog-table tbody th{font-weight:400}.dn-catalog-table strong{font-weight:600}.dn-catalog-table small{display:block;color:#65748b;margin-top:4px}
.dn-catalog-table tbody tr:hover{background:#f8faff}.dn-catalog-table .dn-catalog-badge{display:inline-block;white-space:nowrap;font-size:11px;padding:3px 5px}
.dn-catalog-table summary{cursor:pointer;color:#53637c;margin-top:8px}.dn-catalog-table button{min-height:36px;white-space:nowrap}
.dn-catalog-table-detail>td{padding:8px 12px;background:#f6f8fc}.dn-catalog-table-detail .dn-catalog-history{margin:0}
@media(max-width:600px){.dn-catalog-view-switch button{min-height:44px}}
