*{box-sizing:border-box}:root{font-family:Arial,sans-serif;background:#f4f7fb;color:#143d5e}body{margin:0}header{height:66px;background:#123f63;color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 28px}header nav{display:flex;gap:10px;align-items:center}header a{color:#fff;text-decoration:none;padding:10px;border-radius:7px}header a.active{background:#ffffff22}main{max-width:1500px;margin:auto;padding:28px}h1{margin-top:0}.pagehead{display:flex;justify-content:space-between;align-items:center}.panel,.record{background:#fff;border:1px solid #d8e4ee;border-radius:12px;padding:18px;margin:16px 0;box-shadow:0 4px 14px #173d5b10}.uploadbar{display:flex;gap:15px;align-items:center}.btn,button{background:#176eb0;color:#fff;border:0;border-radius:7px;padding:10px 15px;text-decoration:none;cursor:pointer}.danger{background:#c73838}.alert{padding:12px;border-radius:8px}.error{background:#ffe1e1;color:#9b2222}.ok{background:#e4f7e8;color:#176b2a}.record>summary{cursor:pointer;display:flex;justify-content:space-between;gap:20px;align-items:center}.record summary div{display:flex;flex-direction:column}.record summary small{color:#718397}.code{font-size:12px;color:#176eb0;font-weight:bold}.sumright{align-items:flex-end}.red{color:#c72a2a;font-weight:bold}.recordbody{padding-top:18px}.info-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.info-grid div{background:#f7fafc;padding:12px;border-radius:8px}.info-grid span{font-size:11px;color:#718397;text-transform:uppercase}.wide{grid-column:1/-1}.toolbar{display:flex;gap:12px;align-items:end;margin:15px 0}.toolbar form{margin:0}.tablewrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:13px}th,td{border-bottom:1px solid #e1e9ef;padding:8px;vertical-align:top}th{background:#eaf3fa}.pricing{min-width:1700px}.pricing textarea{width:360px;height:85px}.pricing input,.pricing select{width:130px;padding:7px}.quicklinks a{margin-right:7px}.sub{border-bottom:1px solid #e2eaf1;padding:10px}.filters{display:flex;gap:12px;align-items:end}.filters label{display:flex;flex-direction:column;gap:5px}.actions{display:flex;gap:10px}.modal{display:none;position:fixed;inset:0;background:#1238;place-items:center}.modal.show{display:grid}.modalbox{background:#fff;padding:24px;border-radius:12px;min-width:430px}.modalbox>button:first-child{float:right;background:transparent;color:#123;font-size:22px}.modalbox input,.modalbox select{width:100%;padding:9px;margin-bottom:10px}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:12px}.full{grid-column:1/-1}.grid2 input,.loginbox input{width:100%;padding:10px}.login{min-height:100vh;display:grid;place-items:center}.loginbox{width:400px;background:#fff;padding:30px;border-radius:14px}.setup{max-width:800px}@media(max-width:900px){header{height:auto;flex-direction:column;padding:12px}.info-grid{grid-template-columns:1fr}.uploadbar,.filters{flex-direction:column;align-items:stretch}}@media print{header,.filters,.actions{display:none}main{padding:0}.panel{box-shadow:none;border:0}}
/* V6 Professional */
.pagehead{display:flex;justify-content:space-between;align-items:center;gap:20px}.pagehead h1{margin-bottom:4px}.pagehead p{margin:0;color:#6b7f90}.record{padding:0;overflow:hidden}.record>summary{padding:18px 20px;background:#fff}.record[open]>summary{background:#f2f8fc;border-bottom:1px solid #dce7ef}.recordbody{padding:20px}.pricing{min-width:1780px}.pricing textarea{width:390px;min-height:86px;border:1px solid #c7d6e1;border-radius:7px;padding:9px;font-family:inherit}.pricing input,.pricing select{border:1px solid #c7d6e1;border-radius:7px;padding:8px;background:#fff}.pricing thead th{position:sticky;top:0;background:#123f63;color:#fff;z-index:2}.pricing tbody tr:hover{background:#f7fbfe}.pricing tfoot th{background:#e8f2f9}.num{text-align:right;white-space:nowrap}.quicklinks{margin-top:7px}.quicklinks a{display:inline-block;text-decoration:none;color:#176eb0;font-weight:bold}.toolbar{background:#f7fafc;border:1px solid #dce7ef;padding:12px;border-radius:10px}.modal{z-index:1000;background:rgba(10,34,52,.55)}.modalbox{width:min(600px,92vw);box-shadow:0 18px 55px rgba(10,34,52,.3);position:relative}.modalbox .close{position:absolute;right:12px;top:8px;background:transparent;color:#123f63;font-size:26px;padding:4px 9px}.modalbox label{display:block;margin:12px 0;font-weight:bold}.modalbox input,.modalbox select{display:block;width:100%;margin-top:6px}.pl-summary{display:flex;justify-content:space-between;align-items:center;gap:20px}.pl-summary h2{margin:0 0 6px}.secondary{background:#4d6476}.quote-page{background:#e7ecf0;max-width:none}.quote-actions{max-width:1000px;margin:0 auto 15px;display:flex;gap:10px}.quotation-sheet{width:210mm;min-height:297mm;margin:auto;background:#fff;padding:18mm 15mm;box-shadow:0 4px 25px rgba(0,0,0,.15);color:#1d2d3a}.quote-brand{display:flex;align-items:center;gap:12px;border-bottom:3px solid #164d75;padding-bottom:12px}.quote-brand img{width:100px;height:56px;object-fit:contain}.quote-brand strong{font-size:18px;color:#123f63}.quote-brand small{display:block;color:#5a7183;margin-top:4px}.quote-info-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:18px;margin:18px 0}.quote-info-grid>div:first-child{grid-column:1/-1}.quote-info-grid .seller{border-left:4px solid #176eb0;padding-left:12px}.quotation-sheet h1{text-align:center;font-size:24px;margin:18px 0 8px}.intro{text-align:center;color:#536a7b}.quote-table{width:100%;border-collapse:collapse;margin-top:18px;font-size:12px}.quote-table th,.quote-table td{border:1px solid #526979;padding:8px;vertical-align:top}.quote-table thead th{background:#173f62;color:#fff;text-align:center}.quote-table tfoot th{background:#e9f1f6}.terms{margin-top:18px;border-top:2px solid #173f62;padding-top:10px}.terms h3{font-size:14px}.terms p{margin:7px 0}.signature{display:grid;grid-template-columns:1fr 1fr;text-align:center;margin-top:35px;gap:60px}
@media(max-width:900px){.pagehead,.pl-summary{flex-direction:column;align-items:stretch}.quote-page{padding:0}.quotation-sheet{width:100%;min-height:0;padding:20px;box-shadow:none}.quote-info-grid{grid-template-columns:1fr}.quote-info-grid>div:first-child{grid-column:auto}}
@media print{body{background:#fff}.quote-page{padding:0}.quote-actions,header{display:none!important}.quotation-sheet{width:100%;min-height:0;margin:0;padding:8mm;box-shadow:none}.quote-table{font-size:10px}}
/* V6.1 usability */
.row-actions{display:flex;flex-direction:column;gap:7px}.row-actions button{white-space:nowrap}.money-input{text-align:right;font-variant-numeric:tabular-nums}.mailbox{font-family:'Times New Roman',serif}.mail-hint{background:#eef6fb;border-left:4px solid #176eb0;padding:10px;color:#36576e}.ncc-search{display:grid;grid-template-columns:minmax(260px,1fr) 200px auto auto;gap:10px;align-items:center}.ncc-search input,.ncc-search select{padding:11px;border:1px solid #c7d6e1;border-radius:8px}.ncc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:15px}.ncc-card{background:#fff;border:1px solid #d8e4ee;border-radius:12px;padding:17px;box-shadow:0 4px 14px #173d5b10}.ncc-card-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.ncc-card h3{margin:0;color:#123f63}.ncc-card-head span{font-size:12px;color:#6b7f90}.ncc-card p{min-height:45px}.ncc-card small{display:block;color:#6b7f90}.contact-row{display:flex;gap:8px;margin:14px 0;flex-wrap:wrap}.contact-btn{padding:8px 12px;border-radius:7px;color:#fff;text-decoration:none;font-weight:bold}.contact-btn.call{background:#18864b}.contact-btn.zalo{background:#0068ff}.contact-btn.email{background:#176eb0}.ncc-card details{border-top:1px solid #e1e9ef;padding-top:10px}.ncc-card summary{cursor:pointer;font-weight:bold}.ncc-edit label{display:block;margin:9px 0}.ncc-edit input,.ncc-edit textarea{display:block;width:100%;margin-top:4px;padding:8px;border:1px solid #c7d6e1;border-radius:7px}.ncc-edit textarea{min-height:80px}
@media(max-width:900px){header nav{width:100%;overflow-x:auto;justify-content:flex-start}header nav a,header nav span{white-space:nowrap}.ncc-search{grid-template-columns:1fr}.ncc-grid{grid-template-columns:1fr}.pricing{min-width:1750px}.tablewrap{margin-left:-20px;margin-right:-20px;padding:0 12px}.uploadbar input[type=file]{width:100%}.pagehead button{width:100%}.row-actions{flex-direction:row}}

/* V6.2 */
.record-summary{display:flex!important;flex-direction:row!important;justify-content:space-between!important;align-items:center!important;gap:24px}.summary-main{display:flex!important;flex-direction:column!important;gap:4px;min-width:0}.project-name{font-size:21px;color:#123f63}.investor-name{font-size:14px;color:#64798a}.summary-stats{display:flex!important;flex-direction:row!important;align-items:stretch;gap:12px}.summary-stats>div{background:#f5f8fa;border:1px solid #dbe6ee;border-radius:10px;padding:10px 14px;min-width:125px;text-align:center}.summary-stats small{display:block;color:#728493;text-transform:uppercase;font-size:10px;letter-spacing:.05em}.summary-stats b{display:block;font-size:18px;margin-top:4px}.deadline-box{min-width:225px!important}.deadline-box span{display:block;font-size:12px;margin-top:3px;font-weight:bold}@keyframes blinkGreen{0%,100%{background:#e9f7ed;border-color:#bfe4c8;box-shadow:0 0 0 rgba(34,154,84,0)}50%{background:#d3f1dd;border-color:#73c991;box-shadow:0 0 0 4px rgba(34,154,84,.18)}}
@keyframes blinkYellow{0%,100%{background:#fff7d9;border-color:#edd78b;box-shadow:0 0 0 rgba(219,170,0,0)}50%{background:#ffefaa;border-color:#d9b739;box-shadow:0 0 0 4px rgba(219,170,0,.16)}}
.deadline-box.safe{background:#e9f7ed;border-color:#bfe4c8;animation:blinkGreen 1.4s ease-in-out infinite}.deadline-box.warning,.deadline-box.urgent{background:#fff7d9;border-color:#edd78b;animation:blinkYellow 1s ease-in-out infinite}.deadline-box.expired{background:#ffe8e8;border-color:#efb5b5;color:#b51f1f}.professional-info{gap:14px}.professional-info>div{padding:15px 17px}.professional-info span{display:block;margin-bottom:7px}.professional-info b{display:block;line-height:1.4;font-size:16px;word-break:break-word}.quote-preview-page{max-width:none;background:#e9eef2}.preview-toolbar{max-width:1120px;margin:0 auto 14px;display:flex;gap:10px}.quotation-preview{width:210mm;min-height:297mm;margin:auto;background:#fff;padding:14mm;box-shadow:0 4px 24px rgba(0,0,0,.18);color:#111;font-family:'Times New Roman',serif}.q-header{display:flex;align-items:center;gap:14px;border-bottom:2px solid #123f63;padding-bottom:8px}.q-header img{width:100px;height:58px;object-fit:contain}.q-header strong{display:block;font-size:18px;color:#123f63}.q-header span{font-size:12px}.q-info{margin-top:12px}.q-info td{border:0;padding:4px 6px}.q-info td:first-child{width:120px;font-weight:bold}.q-info .seller{border-left:2px solid #123f63;padding-left:14px;width:300px;line-height:1.5}.quotation-preview h1{text-align:center;font-size:23px;margin:16px 0 6px}.q-intro{text-align:center}.q-items{font-size:11px}.q-items th,.q-items td{border:1px solid #222;padding:7px}.q-items th{background:#b7d1e6;color:#000;text-align:center}.q-items tfoot th{background:#e7edf2}.q-terms{margin-top:15px;border-top:2px solid #123f63;padding-top:8px}.q-terms p{margin:6px 0}.q-sign{display:grid;grid-template-columns:1fr 1fr;gap:50px;text-align:center;margin-top:30px}.ncc-search-v62{display:grid;grid-template-columns:minmax(260px,1fr) 170px 150px auto auto;gap:10px;align-items:center}.ncc-search-v62 input,.ncc-search-v62 select{padding:11px;border:1px solid #c7d6e1;border-radius:8px}.region-tag{display:inline-block;margin-top:7px;background:#e7f1f8;color:#176eb0;padding:4px 8px;border-radius:99px;font-size:11px;font-weight:bold}.contact-person{background:#f5f8fa;border-left:4px solid #176eb0;padding:10px 12px;margin:12px 0;display:flex;flex-direction:column;gap:3px}.contact-person strong{font-size:16px;color:#123f63}.contact-person span{font-size:13px;color:#5d7080}.contact-person a{font-size:13px;color:#176eb0;text-decoration:none}
@media(max-width:900px){.record-summary{flex-direction:column!important;align-items:stretch!important}.summary-stats{width:100%;display:grid!important;grid-template-columns:1fr}.deadline-box{min-width:0!important}.professional-info{grid-template-columns:1fr}.ncc-search-v62{grid-template-columns:1fr}.quotation-preview{width:100%;min-height:0;padding:16px;box-shadow:none}.quote-preview-page{padding:0}.preview-toolbar{padding:12px}.q-info .seller{width:auto}.q-items{font-size:9px}}
@media print{.preview-toolbar,header{display:none!important}.quote-preview-page{background:#fff;padding:0}.quotation-preview{width:100%;min-height:0;margin:0;padding:7mm;box-shadow:none}}

/* V6.3 stability and quotation fidelity */
.q-banner{width:100%;text-align:center;border-bottom:2px solid #123f63;padding-bottom:10px;margin-bottom:10px}.q-banner img{display:block;width:100%;max-width:100%;height:auto;margin:auto}.print-note{font-size:12px;color:#5d7080;align-self:center}.q-terms ul{margin:5px 0 8px 24px}.q-terms li{margin:4px 0}
@page{size:A4 portrait;margin:8mm}
@media print{html,body{background:#fff!important}.print-note{display:none!important}.quotation-preview{page-break-inside:auto}.q-banner img{width:100%!important}.q-items tr{page-break-inside:avoid}}
/* V6.4 final adjustments */
.summary-delete-btn{align-self:stretch;background:#c73838;color:#fff;border:0;border-radius:10px;padding:0 18px;font-weight:bold;min-width:82px}.summary-delete-btn:hover{background:#a82323}.mailbox{max-width:620px}.mail-hint{background:#eef6fb;border-left:4px solid #176eb0;padding:10px 12px;border-radius:6px}
@media(max-width:900px){.summary-delete-btn{min-height:48px}}

/* V7 MSC / DN workflow */
.source-upload{display:grid;grid-template-columns:230px minmax(280px,1fr) auto auto;gap:14px;align-items:end}.source-upload label{display:flex;flex-direction:column;gap:7px}.source-upload select,.source-upload input{padding:10px;border:1px solid #c7d6e1;border-radius:8px}.pricing-v7{min-width:1950px;table-layout:fixed}.pricing-v7 .col-select{width:58px}.pricing-v7 .col-original{width:410px}.pricing-v7 .col-proposal{width:360px}.pricing-v7 .col-qty{width:90px}.pricing-v7 .col-unit{width:95px}.pricing-v7 .col-class{width:130px}.pricing-v7 .col-supplier{width:210px}.pricing-v7 .col-price{width:150px}.cell-select{text-align:center}.pricing-v7 input,.pricing-v7 select{max-width:100%}.pricing-v7 .compact-input{width:100%!important;min-width:0}.pricing-v7 textarea{width:100%;min-height:105px}.pricing-v7 .original-desc{min-height:150px}.pricing-v7 .proposal-desc{min-height:245px}.pricing-v7 .item-code,.pricing-v7 .item-name{display:block;width:100%;padding:7px;margin-bottom:7px;border:1px solid #c7d6e1;border-radius:7px}.pricing-v7 .item-code{font-weight:bold;color:#123f63}.mini-label{display:block;font-size:11px;text-transform:uppercase;color:#6b7f90;margin:5px 0}.requirement-note{margin-top:8px;background:#fff8e7;border-left:4px solid #e1ad22;padding:8px}.requirement-note textarea{min-height:65px;margin-top:5px}.requirement-note small{display:block;margin-top:6px}.source-badge{display:inline-block;background:#e7f1f8;color:#176eb0;border-radius:99px;padding:4px 9px;font-weight:bold;font-size:12px}
@media(max-width:900px){.source-upload{grid-template-columns:1fr}.pricing-v7{min-width:1850px}}

/* V7.1 usability fixes */
.top-scroll{overflow-x:auto;overflow-y:hidden;height:18px;margin:8px 0 6px;border-radius:8px;background:#e9eff4}.top-scroll>div{height:1px}.tablewrap{scrollbar-gutter:stable both-edges}.save-all{background:#16834b}.save-all:disabled{opacity:.65;cursor:wait}.pl-filters{display:grid!important;grid-template-columns:190px minmax(320px,1fr) 230px;gap:18px;align-items:end}.pl-filters label{min-width:0}.pl-filters select{display:block;width:100%;max-width:100%;padding:10px;border:1px solid #c7d6e1;border-radius:8px}.pl-summary{display:flex;justify-content:space-between;align-items:center;gap:20px}.pl-summary .actions{flex-wrap:wrap;justify-content:flex-end}
@media(max-width:900px){.pl-filters{grid-template-columns:1fr}.pl-summary{flex-direction:column;align-items:stretch}.pl-summary .actions{justify-content:flex-start}.top-scroll{position:sticky;top:0;z-index:7}}

/* V7.2 */
.selection-tools{display:flex;gap:7px}.selection-tools button{padding:8px 11px}.toolbar{display:flex;flex-wrap:wrap;align-items:end;gap:10px}.toolbar>label{min-width:150px}.pl-filters select:disabled{background:#edf2f6;color:#8596a5;cursor:not-allowed}
@media(max-width:900px){.selection-tools{width:100%}.selection-tools button{flex:1}}

/* V7.5 filters, sent status, regions */
.record-filter{display:flex;align-items:end;gap:16px;padding:14px 18px}.record-filter label{display:flex;flex-direction:column;gap:6px;min-width:220px}.record-filter select{padding:10px;border:1px solid #c7d6e1;border-radius:8px;background:#fff}.filter-count{font-weight:bold;color:#537084;padding-bottom:10px}.sent-flag{min-width:122px;display:flex!important;flex-direction:column!important;align-items:center;justify-content:center;background:#f3f7fa;border:1px solid #c9d9e4;border-radius:10px;padding:8px 10px;cursor:pointer}.sent-flag>span{font-weight:bold;font-size:13px}.sent-flag small{font-size:10px;color:#4b718a;margin-top:3px}.sent-flag:has(input:checked){background:#ddf4e4;border-color:#77c48c;color:#176c31}.sent-flag input{width:18px;height:18px;margin-bottom:4px}.ncc-search-v62 select[name=region]{min-width:180px}@media(max-width:900px){.record-filter{align-items:stretch;flex-direction:column}.record-filter label{min-width:0}.sent-flag{min-width:100px}}

/* V7.7 source link */
.source-link-edit{display:flex;gap:10px;align-items:center}.source-link-edit input{flex:1;min-width:220px;padding:10px;border:1px solid #c7d6e1;border-radius:8px}.source-open-link{white-space:nowrap}@media(max-width:700px){.source-link-edit{flex-direction:column;align-items:stretch}}

/* V8.1 */
.external-search-grid{display:grid;grid-template-columns:minmax(250px,1fr) 190px 200px auto auto;gap:10px;align-items:center}.external-search-grid input,.external-search-grid select{padding:11px;border:1px solid #c7d6e1;border-radius:8px}.external-hint{padding:10px 0;color:#526979}.external-directory-panel iframe{width:100%;height:620px;border:1px solid #c7d6e1;border-radius:10px;background:#fff}.pl-filters{grid-template-columns:180px 190px minmax(300px,1fr) 220px!important}@media(max-width:900px){.external-search-grid,.pl-filters{grid-template-columns:1fr!important}.external-directory-panel iframe{height:480px}}

/* V8.2 stability */
.buy-cell{min-width:175px}.vat-included-wrap{display:flex;align-items:center;gap:6px;margin-top:8px;padding:6px 8px;border-radius:7px;background:#eef6fb;color:#123f63;font-size:12px;line-height:1.25}.vat-included-wrap:has(.vat-included:checked){background:#dff3e5;color:#176a35;font-weight:700}.vat-included-wrap[hidden]{display:none!important}.external-results{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px;margin-top:16px}.external-ncc-card{background:#fff;border:1px solid #d6e1e9;border-radius:12px;padding:15px;box-shadow:0 3px 10px rgba(18,63,99,.06)}.external-ncc-card h3{font-size:17px;margin:0 0 8px;color:#123f63}.external-ncc-card p{line-height:1.5;margin:7px 0}.external-ncc-card small{display:block;color:#65798a;margin-bottom:10px}

/* V8.3 */
.external-search-grid{grid-template-columns:220px minmax(240px,1fr) 190px 200px auto!important}
@media(max-width:1000px){.external-search-grid{grid-template-columns:1fr!important}}

/* V8.9 */
.keyword-box{display:grid;grid-template-columns:minmax(180px,1fr) auto;gap:7px}
.keyword-box .small{white-space:nowrap;padding:9px 12px}
.keyword-chips{display:flex;flex-wrap:wrap;gap:7px;margin:10px 0}
.keyword-chip{border:1px solid #b8ccdb;background:#eef5fa;color:#16496f;border-radius:999px;padding:5px 10px;font-size:12px;cursor:pointer}
.website-link{color:#0b6fb6;font-weight:600;text-decoration:none;word-break:break-all}
.website-link:hover{text-decoration:underline}
@media(max-width:800px){.keyword-box{grid-template-columns:1fr}}

/* V9.2 */
.supplier-cell{min-width:250px}.supplier-cell .supplier-search{width:100%!important;margin-bottom:7px;background:#f8fbfd}.supplier-cell .supplier{width:100%!important}.supplier-search-hint{display:block;margin-top:5px;color:#62798a;font-size:11px}
.modal{padding:18px;overflow-y:auto;align-items:start}.modal.show{display:grid}.modalbox{max-height:calc(100vh - 36px);overflow-y:auto;overscroll-behavior:contain;margin:auto;width:min(680px,96vw);padding-bottom:28px}.modalbox form>button:last-child{position:sticky;bottom:-1px;width:100%;margin-top:14px;box-shadow:0 -8px 18px rgba(255,255,255,.95)}
@media(max-width:700px){.modal{padding:8px}.modalbox{max-height:calc(100vh - 16px);width:98vw;padding:18px}.supplier-cell{min-width:220px}}

/* V9.5 */
.customer-editor{background:#f7fbfe;border:1px solid #cfe0ec;border-radius:14px;padding:18px;margin-bottom:16px}.customer-editor h3,.dn-add-item h3{margin:0 0 12px;color:#123f63}.customer-edit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.customer-edit-grid label{display:flex;flex-direction:column;gap:6px;font-weight:700}.customer-edit-grid .wide{grid-column:1/-1}.customer-edit-grid input,.customer-edit-grid textarea{width:100%;box-sizing:border-box}.customer-edit-grid textarea{min-height:75px}.customer-inline-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:start}.customer-block{background:#ffffff;border:1px solid #d6e4f0;border-radius:12px;padding:14px;display:flex;flex-direction:column;gap:10px;box-shadow:0 2px 6px rgba(18,63,99,.04)}.customer-block-title{font-size:13px;font-weight:800;color:#123f63;text-transform:uppercase;letter-spacing:.02em;padding-bottom:6px;border-bottom:1px solid #e5eef5}.customer-time-block .chao-time-field,.customer-price-block label{min-width:0}.deadline-highlight{border-radius:10px;padding:10px 12px;border:1px solid #d6e4f0;background:#f4f8fc;display:flex;flex-direction:column;gap:4px}.deadline-highlight-label{font-size:12px;font-weight:700;color:#4a647a}.deadline-highlight b{font-size:18px;line-height:1.25}.deadline-highlight small{font-size:12px;color:#4a647a}.deadline-highlight.ok{background:#edf8ef;border-color:#b8dfc1}.deadline-highlight.warn{background:#fff6df;border-color:#f1d48a}.deadline-highlight.bad{background:#ffe9e9;border-color:#f0b7b7}.dn-add-item{background:#fff8e8;border:1px solid #ecd39b;border-radius:14px;padding:16px;margin:14px 0}.dn-add-grid{display:grid;grid-template-columns:1.2fr 2fr .5fr .6fr .8fr auto;gap:10px;align-items:start}.dn-add-grid textarea{min-height:58px}.billing-cycle-wrap{margin-top:8px}.billing-cycle-wrap small{display:block;margin-bottom:4px;color:#607488}.buy-period-label,.sell-period-label{display:block;margin-bottom:5px;color:#607488;font-size:12px}.sellunit b{display:block}.pricing textarea{min-height:145px;resize:vertical}@media(max-width:950px){.customer-edit-grid{grid-template-columns:1fr}.customer-inline-groups{grid-template-columns:1fr}.dn-add-grid{grid-template-columns:1fr}.customer-edit-grid .wide{grid-column:auto}}

/* V9.6 – ghi chú hạng mục thu gọn */
.compact-note{margin-top:9px;border:1px solid #d7e3ec;border-radius:8px;background:#f8fbfd}
.compact-note summary{cursor:pointer;padding:8px 10px;font-weight:700;color:#315b78;list-style:none}
.compact-note summary::-webkit-details-marker{display:none}
.compact-note summary::before{content:"▸";display:inline-block;margin-right:7px;transition:transform .15s}
.compact-note[open] summary::before{transform:rotate(90deg)}
.compact-note .note-body{padding:0 10px 10px}
.compact-note textarea{min-height:82px}

/* V9.9 DN hierarchy + MSC submission method */
.dn-group-row td{background:#e8f1f7;border-top:2px solid #bfd2df;padding:12px 16px!important}
.dn-group-row.level-1 td{background:#123f63;color:#fff;font-size:16px}
.dn-group-row.level-2 td{background:#d8e8f2;color:#123f63;padding-left:30px!important}
.dn-tree-toggle{background:transparent;color:inherit;padding:2px 8px;font-size:18px}
.dn-group-type{margin-left:10px;font-size:11px;text-transform:uppercase;opacity:.75}
.dn-group-totals{float:right;font-size:12px}
.dn-group-row details{margin:7px 0 0 32px;font-size:12px}
.original-description{margin-top:8px;border:1px solid #d8e4ee;border-radius:7px;background:#f8fbfd}
.original-description summary{cursor:pointer;padding:8px;font-weight:700;color:#315b78}
.original-description textarea{margin:0 8px 8px;width:calc(100% - 16px)!important;min-height:100px}
.dn-detail-row td:nth-child(2){padding-left:38px}
.customer-method{padding:10px;border:1px solid #c7d6e1;border-radius:8px;background:#fff}

/* V10.0 – DN BOM */
.dn-brand{display:block;margin-top:7px;color:#61798b}
details.record[data-source="DN"] .requirement-note,
details.record[data-source="DN"] .original-description{display:none!important}
details.record[data-source="DN"] .dn-detail-row textarea{min-height:54px}

/* V10.1 – DN exact BOM */
details.record[data-source="DN"] .col-qty{width:76px!important}
details.record[data-source="DN"] .col-unit{width:88px!important}
details.record[data-source="DN"] .qty{min-width:65px!important;width:65px!important}
details.record[data-source="DN"] .unit{min-width:76px!important;width:76px!important}
details.record[data-source="DN"] .dn-brand-cell{min-width:145px;max-width:175px}
details.record[data-source="DN"] .dn-brand-cell input{width:100%;box-sizing:border-box}
details.record[data-source="DN"] .item-code{display:none}
details.record[data-source="DN"] .mini-label{display:none}
.dn-group-row.level-3 td{background:#e5eef5;color:#123f63;padding-left:42px!important}
.dn-group-row.level-4 td{background:#f0f5f8;color:#315b78;padding-left:58px!important}

/* V10.3 – multi-user realtime sync */
.sync-status{display:flex;align-items:center;gap:9px;padding:9px 12px;margin-bottom:12px;border:1px solid #cfe0ea;border-radius:9px;background:#f4fafc;font-size:13px;color:#315b78}
.sync-status .sync-dot{width:9px;height:9px;border-radius:50%;background:#25a55f;box-shadow:0 0 0 3px rgba(37,165,95,.13)}
.sync-status .sync-now{margin-left:auto;padding:6px 10px;font-size:12px}
.sync-status.syncing .sync-dot{background:#e3a008;animation:syncPulse 1s infinite}
.sync-status.updated{background:#edf9f1;border-color:#b9e4c7;color:#176a38}
.sync-status.conflict{background:#fff0f0;border-color:#efb4b4;color:#a51f1f}
.sync-status.conflict .sync-dot{background:#d82c2c}
@keyframes syncPulse{50%{opacity:.35}}
tr[data-dirty="1"]{outline:2px solid rgba(227,160,8,.35);outline-offset:-2px}
.customer-editor[data-dirty="1"]{box-shadow:0 0 0 2px rgba(227,160,8,.3)}

/* V10.6 – Pipeline export */
.pipeline-export-bar{display:flex;align-items:end;gap:14px;flex-wrap:wrap;border-left:5px solid #1d73b7}
.pipeline-export-bar label{display:flex;flex-direction:column;gap:6px;min-width:260px}
.pipeline-export-bar select{padding:10px;border:1px solid #c7d6e1;border-radius:8px;background:#fff}
.pipeline-export-bar small{color:#61798b;padding-bottom:10px}

/* V10.7 – Dashboard DN theo đúng form BOM đầu vào */
.dn-bom-wrap{overflow:auto;max-height:72vh;border:1px solid #b9cbd8;border-radius:8px}
.dn-bom-table{min-width:1320px;width:100%;border-collapse:collapse;background:#fff}
.dn-bom-table th,.dn-bom-table td{border:1px solid #647b8a;padding:7px 8px;vertical-align:middle}
.dn-bom-table thead th{position:sticky;top:0;z-index:3;background:#b7d2e8;color:#111;text-align:center;font-family:"Times New Roman",serif;font-size:16px}
.dn-col-stt{width:72px}.dn-col-work{width:520px}.dn-col-brand{width:150px}
.dn-col-unit{width:105px}.dn-col-qty{width:95px}.dn-col-buy,.dn-col-buy-total,.dn-col-sell,.dn-col-sell-total{width:145px}.dn-col-save{width:76px}
.dn-bom-table input{width:100%;box-sizing:border-box;border:1px solid transparent;background:transparent;padding:7px;font:inherit}
.dn-bom-table input:focus{background:#fff;border-color:#1d73b7;outline:none}
.dn-bom-heading td{font-family:"Times New Roman",serif;font-size:17px}
.dn-level-1 td{background:#fff500;font-weight:800}
.dn-level-2 td{background:#f7ddcf;font-weight:800}
.dn-level-3 td{background:#f7ddcf;color:#9d140e;font-weight:800}
.dn-level-4 td{background:#dceaf3;font-weight:700}
.dn-bom-detail.dn-has-price td{background:#fff9cf}
.dn-bom-detail.dn-no-price td{background:#f4f7f9;color:#516879}
.dn-bom-detail.dn-no-price .dn-buy-input{background:#fff}
.dn-bom-table .dn-stt{text-align:center;font-weight:700}
.dn-bom-table .dn-unit-input,.dn-bom-table .dn-qty-input{text-align:center}
.dn-bom-table .dn-buy-input{text-align:right}
.dn-bom-table .num{text-align:right;font-variant-numeric:tabular-nums}
.dn-bom-table tfoot th{background:#d6e8f4;font-weight:800}

/* V10.8 DN exact table */
.dn-col-margin{width:85px}
.dn-margin-input{width:68px!important;text-align:center!important;background:#fff!important;border:1px solid #b8cbd8!important}
.dn-bom-wrap+.top-scroll,.dn-bom-wrap .top-scroll{display:block}
.recordbody>.top-scroll{height:18px;overflow-x:auto;overflow-y:hidden;margin:5px 0}
.recordbody>.top-scroll>div{height:1px}
.dn-bom-table .dn-work-input{font-weight:600}

/* V10.9 – DN dùng cùng Dashboard YCBG */
body .record[data-source="DN"] .pricing-v7{min-width:1750px}
body .record[data-source="DN"] .original-description,
body .record[data-source="DN"] .requirement-note{display:block!important}

/* V10.10 – Một cột hạng mục editable */
.pricing-simple-item{min-width:1650px}
.pricing-simple-item .col-select{width:58px}
.pricing-simple-item .col-item-edit{width:560px}
.pricing-simple-item .col-qty{width:86px}
.pricing-simple-item .col-unit{width:96px}
.pricing-simple-item .item-edit-cell{min-width:500px}
.item-edit-head{display:grid;grid-template-columns:145px 1fr;gap:7px;margin-bottom:7px}
.item-edit-head input,.item-description{width:100%;box-sizing:border-box}
.item-description{min-height:72px;resize:vertical;line-height:1.35}
.pricing-simple-item .requirement-note{margin-top:6px}
.pricing-simple-item .requirement-note summary{font-size:12px}

/* V10.10.1 */
.record-filter{position:relative}
.summary-delete-btn:disabled{opacity:.55;cursor:wait}

/* HSMT V11 */
header{display:flex;align-items:center}.brand-hsmt-link{margin-left:18px;padding:8px 14px;border-radius:8px;background:#e8f2f8;color:#123f63;font-weight:800;text-decoration:none}.brand-hsmt-link.active{background:#1d73b7;color:#fff}
.hsmt-upload form{display:grid;grid-template-columns:180px 1fr 1fr 1fr auto;gap:12px;align-items:end}.hsmt-upload label{display:flex;flex-direction:column;gap:5px}.hsmt-layout{display:grid;grid-template-columns:310px minmax(0,1fr);gap:16px}.hsmt-list{display:flex;flex-direction:column;gap:8px}.hsmt-card{display:flex;flex-direction:column;padding:12px;border:1px solid #cadbe7;border-radius:10px;background:#fff;color:#123f63;text-decoration:none}.hsmt-card.active{border-color:#1d73b7;box-shadow:0 0 0 2px #d5eafa}.hsmt-card span{font-size:13px}.hsmt-card small.safe{color:#138a4b}.hsmt-card small.warning{color:#b37800}.hsmt-card small.expired{color:#c52a2a}.hsmt-summary{display:flex;align-items:center;justify-content:space-between;gap:16px}.deadlinebox{min-width:210px;text-align:center;padding:10px;border-radius:10px}.deadlinebox.safe{background:#e8f7ed}.deadlinebox.warning{background:#fff4cd}.deadlinebox.expired{background:#ffe4e4}.deadlinebox span,.deadlinebox b,.deadlinebox strong{display:block}.hsmt-tabs{display:flex;gap:6px;margin:12px 0}.hsmt-tabs a{padding:10px 18px;border-radius:8px 8px 0 0;background:#dceaf3;color:#123f63;text-decoration:none;font-weight:700}.hsmt-tabs a.active{background:#123f63;color:#fff}.form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.form-grid label{display:flex;flex-direction:column;gap:5px}.form-grid .wide{grid-column:1/-1}.section-title{display:flex;justify-content:space-between;align-items:center}.checklist-table,.tech-table{overflow:auto;max-height:65vh}.checklist-table table,.tech-table table{min-width:1300px;border-collapse:collapse}.checklist-table th,.checklist-table td,.tech-table th,.tech-table td{border:1px solid #c1d1dc;padding:7px;vertical-align:top}.checklist-table th,.tech-table th{position:sticky;top:0;background:#123f63;color:#fff}.checklist-table textarea,.tech-table textarea{min-height:78px;width:100%;box-sizing:border-box}.checklist-table input,.tech-table input,.checklist-table select,.tech-table select{width:100%;box-sizing:border-box}.export-buttons{display:flex;gap:12px;flex-wrap:wrap}.danger{background:#c93030}.hsmt-content{min-width:0}
@media(max-width:900px){.hsmt-layout{grid-template-columns:1fr}.hsmt-upload form,.form-grid{grid-template-columns:1fr}.hsmt-list{max-height:260px;overflow:auto}.hsmt-summary{align-items:flex-start;flex-direction:column}}

/* V11.0.4 - trạng thái phân tích PDF/ZIP */
.hsmt-parse-status{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:12px 0;padding:14px 18px;border-left:5px solid #78909c}.hsmt-parse-status.success{border-left-color:#159447;background:#effaf3}.hsmt-parse-status.warning{border-left-color:#d69b00;background:#fff8df}.hsmt-parse-status.error{border-left-color:#cc3333;background:#fff0f0}.hsmt-parse-status form{margin:0}.hsmt-parse-status button{white-space:nowrap}

/* V11.1 HSMT Excel importer */
.hsmt-excel-upload{display:grid;grid-template-columns:minmax(360px,1fr) auto;gap:16px;align-items:end}
.hsmt-excel-upload label{display:grid;gap:8px;font-weight:700}
.hsmt-excel-upload input[type=file]{padding:14px;border:1px solid #b7ccdc;border-radius:9px;background:#fff}
.hsmt-project-form .form-grid{grid-template-columns:repeat(3,minmax(250px,1fr))}
.alert.warning{background:#fff3cd;color:#7a5400;border:1px solid #f0d98a}
@media(max-width:900px){.hsmt-excel-upload,.hsmt-project-form .form-grid{grid-template-columns:1fr}}

/* HSMT V11.2 */
.hsmt-source-link{display:grid;grid-template-columns:280px 1fr;gap:18px;align-items:center}.source-link-row{display:flex;gap:10px}.source-link-row input{flex:1}.budget-field{background:#fff3cd;padding:10px;border:1px solid #edcf70;border-radius:8px}.budget-field input{font-weight:700}.merged-category{background:#eef5fa;vertical-align:top!important;min-width:170px}.merged-category small{display:block;margin-top:8px;color:#2d6a3f}.check-complete{text-align:center}.checklist-table table{min-width:1550px}.tech-table table{min-width:1900px}.tech-doc-add{display:grid;grid-template-columns:200px 1fr 1.4fr 1.2fr auto;gap:10px;margin-bottom:16px}.tech-doc-row{display:grid;grid-template-columns:30px 190px 1fr 1.4fr 1.2fr auto auto;gap:8px;align-items:center;padding:8px 0;border-bottom:1px solid #d9e5ee}.hsmt-excel-upload{grid-template-columns:minmax(320px,1fr) minmax(320px,1fr) auto!important}.record-filter{display:flex;gap:18px;align-items:end;flex-wrap:wrap}@media(max-width:900px){.hsmt-source-link,.tech-doc-add,.tech-doc-row{grid-template-columns:1fr}.source-link-row{flex-wrap:wrap}}

/* V11.3 – HSMT multi-file batch upload */
.hsmt-batch-upload{grid-template-columns:minmax(360px,1.4fr) auto minmax(300px,1fr) auto}
.hsmt-batch-upload .upload-or{font-weight:800;color:#607d94;align-self:center;padding-bottom:12px}
.hsmt-batch-upload .wide-upload small{font-weight:400;color:#607d94}
.selected-files-preview{display:flex;flex-wrap:wrap;gap:7px;margin:12px 0}
.selected-files-preview span{background:#edf5fb;border:1px solid #c7dceb;border-radius:999px;padding:5px 10px;font-size:13px}
.selected-files-preview .zip-selected{background:#fff3cd;border-color:#f0d98a}
.batch-result-table{overflow:auto;max-height:520px}
.batch-result-table table{width:100%;border-collapse:collapse}
.batch-result-table th,.batch-result-table td{padding:10px;border:1px solid #cfdeea;vertical-align:top}
.batch-result-table th{background:#16486c;color:#fff;position:sticky;top:0}
.batch-result-table .batch-ok td{background:#f2fbf4}
.batch-result-table .batch-fail td{background:#fff1f1}
@media(max-width:1000px){
 .hsmt-batch-upload{grid-template-columns:1fr}
 .hsmt-batch-upload .upload-or{text-align:center;padding:0}
}

/* V11.4 – filters, import logs, Chapter V */
.hsmt-filter-form{display:flex;gap:14px;align-items:end;flex-wrap:wrap}
.hsmt-filter-form label{display:grid;gap:6px;min-width:240px;font-weight:700}
.hsmt-filter-form select{padding:11px;border:1px solid #b8ccdc;border-radius:9px;background:#fff}
.chapter-upload-form{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.chapter-file-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;margin-top:15px}
.chapter-file-card{border:1px solid #cbdde9;border-radius:12px;padding:14px;display:grid;gap:9px;background:#f8fbfd}
.warning-text{color:#b3261e;font-weight:700}
.log-summary-grid{display:grid;grid-template-columns:repeat(6,minmax(130px,1fr));gap:12px;margin:18px 0}
.log-summary-grid>div{background:#fff;border:1px solid #cbdde9;border-radius:14px;padding:16px;display:grid;gap:5px}
.log-summary-grid span{color:#607d94}.log-summary-grid b{font-size:27px;color:#123f63}
.log-summary-grid .ok{background:#effaf2}.log-summary-grid .update{background:#edf5ff}.log-summary-grid .fail{background:#fff0f0}
.log-layout{display:grid;grid-template-columns:330px minmax(0,1fr);gap:16px}
.log-batches{display:grid;gap:8px;align-content:start;max-height:720px;overflow:auto}
.log-batches a{display:grid;gap:4px;padding:11px;border:1px solid #cbdde9;border-radius:10px;text-decoration:none;color:#123f63}
.log-batches a.active{border-color:#1877b9;background:#edf6fc}
.log-batches small{color:#607d94}
@media(max-width:1000px){.log-summary-grid{grid-template-columns:repeat(2,1fr)}.log-layout{grid-template-columns:1fr}}

/* V11.4.1 – Khôi phục Hạng mục QI đề xuất */
.pricing-simple-item .col-proposal-edit{width:500px}
.pricing-simple-item .col-sale-note{width:290px!important}
.pricing-simple-item .sale-note-cell{min-width:270px!important}
.pricing-simple-item:has(.proposal-edit-cell){min-width:2180px}
.proposal-edit-cell{min-width:440px;background:#f7fbff}
.proposal-edit-cell .proposal-description{width:100%;min-height:150px;box-sizing:border-box;resize:vertical;line-height:1.4;border:1px solid #8eb9d5;background:#fff}
.proposal-edit-cell small{display:block;margin:6px 0;color:#385b73;font-weight:600}
.copy-requirement-to-proposal{font-size:12px;padding:6px 9px}
.requirement-cell{background:#fffdf5}
.pricing thead th small{font-weight:400;opacity:.9}

/* V11.5 – Sale BOQ theo nguồn HSMT V2.0 */
.sale-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(130px,1fr));gap:10px;margin:15px 0}
.sale-kpi-grid>div{border:1px solid #cadde9;border-radius:12px;padding:13px;background:#f8fbfd;display:grid;gap:4px}
.sale-kpi-grid span{color:#607d94}.sale-kpi-grid b{font-size:24px;color:#123f63}.sale-kpi-grid .bad{background:#fff1f1}.sale-kpi-grid .good{background:#effaf2}
.sale-source-files{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin:12px 0}.sale-source-files a{background:#edf6fc;border:1px solid #bfd7e7;border-radius:999px;padding:6px 11px}
.sale-boq-table{overflow:auto;max-height:650px;border:1px solid #cbdde9;border-radius:12px}.sale-boq-table table{min-width:1600px;width:100%;border-collapse:collapse}.sale-boq-table th,.sale-boq-table td{padding:9px;border:1px solid #d5e2eb;vertical-align:top}.sale-boq-table th{position:sticky;top:0;background:#16486c;color:#fff;z-index:2}.sale-boq-table td small{display:block;color:#607d94;margin-top:5px;max-width:360px}.sale-boq-table .num{text-align:right;font-weight:700}
@media(max-width:900px){.sale-kpi-grid{grid-template-columns:repeat(2,1fr)}}

/* V11.7 */
.hsmt-card-wrap{position:relative}.hsmt-card-wrap.priority{border-left:5px solid #f1b400;border-radius:10px;background:#fff8d7}.priority-star{position:absolute;right:7px;top:7px;z-index:3;border:0;background:transparent;font-size:25px;color:#8899a6;padding:0;cursor:pointer}.priority-star.active{color:#e7a600}.hsmt-card-wrap .hsmt-card{padding-right:38px}.data-sync-status{margin-bottom:12px}.status-good{color:#08783e;font-weight:700}.status-warn{color:#9a6500;font-weight:700}.status-bad{color:#b3261e;font-weight:700}.upload-status-box{margin-top:16px;padding:15px;border:1px solid #b9d3e5;border-radius:12px;background:#f6fbff}.upload-status-title{font-weight:800;color:#123f63;margin-bottom:8px}.upload-progress{height:14px;border-radius:999px;background:#dfeaf2;overflow:hidden}.upload-progress i{display:block;width:0;height:100%;background:#1675af;transition:width .2s}.upload-status-detail{margin-top:8px;color:#536d80}

/* V11.8 – NCC price resource */
.resource-kpis{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:12px;margin:16px 0}
.resource-kpis>div{background:#fff;border:1px solid #cfdeea;border-radius:13px;padding:15px;display:grid;gap:5px}
.resource-kpis span{color:#607d94}.resource-kpis b{color:#123f63;font-size:22px}
.resource-upload,.resource-filter{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.resource-filter input{min-width:320px}.resource-filter input,.resource-filter select{padding:10px;border:1px solid #bfd2df;border-radius:8px}
.resource-table{width:100%;border-collapse:collapse;min-width:1450px}
.resource-table th,.resource-table td{padding:9px;border:1px solid #cfdeea;vertical-align:top}
.resource-table th{background:#174d72;color:#fff;position:sticky;top:0}
.resource-table small{display:block;color:#607d94;margin-top:4px}
.catalog-suggestion-box{margin-top:10px;padding:9px;border:1px solid #e1c86e;border-radius:9px;background:#fff8d9;display:grid;gap:6px}
.catalog-suggestion-box>b{color:#805b00}.catalog-price-select{width:100%;font-size:12px;padding:6px}
.catalog-match-detail,.no-catalog-match{display:block;margin-top:7px;color:#607d94;font-size:11px}
@media(max-width:900px){.resource-kpis{grid-template-columns:1fr 1fr}.resource-filter input{min-width:0;width:100%}}

/* V11.8.1 – editable NCC catalog */
.editable-resource-table input,.editable-resource-table textarea,.editable-resource-table select{width:100%;box-sizing:border-box;border:1px solid transparent;background:transparent;padding:6px;font:inherit;color:inherit}
.editable-resource-table textarea{min-height:60px;resize:vertical;margin-top:5px}
.editable-resource-table input:disabled,.editable-resource-table textarea:disabled,.editable-resource-table select:disabled{opacity:1;-webkit-text-fill-color:currentColor}
.editable-resource-table tr.editing td{background:#fff8d9}
.editable-resource-table tr.editing input,.editable-resource-table tr.editing textarea,.editable-resource-table tr.editing select{background:#fff;border-color:#d6b64c;border-radius:6px}
.editable-resource-table .cat-price{font-weight:800;text-align:right;min-width:110px}.editable-resource-table .cat-vat{width:55px;display:inline-block}
.editable-resource-table .cat-standard{width:65px}.editable-resource-table .cat-unit{min-width:70px}.editable-resource-table .cat-origin{min-width:100px}
.catalog-save-status{display:block;margin-top:6px;max-width:130px;color:#166534}.editable-resource-table th:last-child{min-width:150px}

/* V11.8.2 – optional closing date */
.deadline-missing{display:block;color:#a15c00;background:#fff3cd;border:1px solid #efd58b;border-radius:6px;padding:3px 6px;margin-top:4px;font-weight:700}

/* V11.9 – Decision + restore NCC */
.bid-decision-panel{display:grid;grid-template-columns:260px 1fr;gap:18px;align-items:start;border-left:5px solid #176eb0}.bid-decision-panel h3{margin:0 0 5px}.bid-decision-controls{display:flex;gap:14px;align-items:center;flex-wrap:wrap}.bid-decision-controls label{font-weight:700}.bid-decision-controls textarea{width:100%;min-height:75px;border:1px solid #bfd2df;border-radius:8px;padding:9px}.decision-badge{display:inline-block;width:max-content;padding:3px 7px;border-radius:10px;font-weight:700}.decision-thuc_hien{background:#d9f3df;color:#176b2a}.decision-khong_thuc_hien{background:#ffe1e1;color:#9b2222}.decision-chua_danh_gia{background:#e9eef2;color:#5b6d79}.ncc-external-search{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:14px}.ncc-main-table{min-width:1450px}.ncc-main-table th{background:#174d72;color:#fff;position:sticky;top:0}.ncc-main-table td{vertical-align:top}.ncc-main-table small{display:block;color:#607d94;margin-top:4px}.ncc-main-table a{margin-right:7px}.inline-form{display:inline}.modalbox textarea{width:100%;min-height:70px;padding:9px;border:1px solid #bfd2df;border-radius:7px}.section-title{display:flex;justify-content:space-between;align-items:center;gap:15px}.resource-filter select{min-width:160px}
@media(max-width:900px){.bid-decision-panel{grid-template-columns:1fr}}

/* V11.10 – User roles, staff activity, Sale notes */
.admin-activity-strip{margin:0;padding:8px 16px;background:#fff8d9;border-bottom:1px solid #e8d58b;display:flex;align-items:flex-start;gap:12px;font-size:13px;color:#5d4900}.admin-activity-strip>div{display:flex;gap:8px;flex-wrap:wrap;flex:1}.admin-activity-strip span{background:#fff;border:1px solid #eadb9e;border-radius:7px;padding:4px 7px}.admin-activity-strip small{color:#7c7c7c}.admin-activity-strip>a{white-space:nowrap}.user-create-form{display:grid;grid-template-columns:repeat(4,minmax(160px,1fr));gap:12px;align-items:end}.user-create-form label{display:grid;gap:5px}.user-create-form input,.user-create-form select{padding:9px;border:1px solid #bfd2df;border-radius:7px}.user-actions{display:flex;gap:6px;align-items:center}.user-actions form{margin:0}.blocked-user{color:#9c0006;background:#ffc7ce;padding:4px 8px;border-radius:7px;font-weight:700}.active-user{color:#006100;background:#c6efce;padding:4px 8px;border-radius:7px;font-weight:700}.sale-note-cell{min-width:210px}.sale-note-cell textarea{width:100%;min-height:105px;resize:vertical;border:1px solid #dfc870;background:#fffbea;border-radius:7px;padding:7px}.delete-catalog-row{margin-top:5px}@media(max-width:900px){.user-create-form{grid-template-columns:1fr}.admin-activity-strip{display:block}.admin-activity-strip>div{margin:7px 0}}
/* V11.11 HSMT compact UX */
.hsmt-main-details{padding:0;overflow:hidden}
.hsmt-main-details>summary{display:grid;grid-template-columns:minmax(220px,1fr) auto auto;gap:14px;align-items:center;padding:14px 18px;cursor:pointer;background:#f7fbfe;border-bottom:1px solid #d6e4ee;font-size:18px;font-weight:800;color:#123f63}
.hsmt-main-details>summary::marker{color:#1f6ea1}
.hsmt-main-details .close-highlight{background:#fff0c2;border:1px solid #edc96f;border-radius:9px;padding:7px 12px;color:#9b5100;font-size:17px}
#liveCountdown{font-style:normal;font-weight:800;padding:7px 10px;border-radius:9px;background:#e8f6ed;color:#19733a;white-space:nowrap}
#liveCountdown.warning{background:#fff3cd;color:#946200}#liveCountdown.urgent,#liveCountdown.expired{background:#fde0e0;color:#a21414}
.compact-main-form{padding:14px 18px}.compact-main-form .form-grid{grid-template-columns:repeat(4,minmax(160px,1fr));gap:9px 12px}
.compact-main-form label{font-size:13px;color:#315a77}.compact-main-form input,.compact-main-form textarea{font-size:14px;padding:7px 8px;min-height:34px}
.chapter-file-toolbar{display:flex;gap:12px;align-items:center;justify-content:flex-end;margin:8px 0 12px}.chapter-file-select{font-size:12px;color:#56758a;display:block;margin-bottom:4px}
.chapter-file-card{position:relative}.chapter-file-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:10px}
.hsmt-filter-form{align-items:end}.hsmt-filter-form label{min-width:180px}
@media(max-width:1100px){.compact-main-form .form-grid{grid-template-columns:repeat(2,minmax(160px,1fr))}.hsmt-main-details>summary{grid-template-columns:1fr}}
/* V11.12 – Upload lại HSMT chi tiết theo từng gói */
.detail-replace-panel{border-left:5px solid #d97706;background:#fffdf5}
.detail-replace-panel form{display:flex;align-items:end;gap:12px;flex-wrap:wrap}
.detail-upload-file{display:grid;gap:6px;min-width:min(620px,100%);font-weight:700;color:#123f63}
.detail-upload-file input{padding:10px;border:1px solid #b8cad8;border-radius:9px;background:#fff;font-weight:400}
.detail-replace-panel small{display:block;margin-top:9px;color:#64748b}

/* V11.13 – HSMT compact search and resizable tables */
.hsmt-list-collapsed{width:280px;min-width:280px;overflow:visible}.hsmt-list-collapsed h3{margin:0 0 10px}.hsmt-search-box{position:relative;margin-bottom:12px}.hsmt-search-box input{width:100%;padding:11px 12px;border:1px solid #b9cfdf;border-radius:9px;font-size:15px}.hsmt-search-results{position:absolute;z-index:30;left:0;right:0;top:46px;max-height:420px;overflow:auto;background:#fff;border:1px solid #b9cfdf;border-radius:10px;box-shadow:0 10px 28px #123f6330}.hsmt-search-results a{display:grid;gap:3px;padding:10px 12px;border-bottom:1px solid #e5eef5;text-decoration:none;color:#123f63}.hsmt-search-results a:hover{background:#eaf4fb}.hsmt-search-results span,.hsmt-search-results small{font-size:12px}.hsmt-current-only{position:relative}.hsmt-current-only .hsmt-card{display:grid;gap:4px;padding:14px 12px;border:2px solid #2684c6;border-radius:12px;background:#fff}.hsmt-current-only .priority-star{position:absolute;right:8px;top:8px;z-index:2}.hsmt-layout{grid-template-columns:280px minmax(0,1fr)}
.resizable-table{table-layout:fixed;min-width:100%;width:max-content}.resizable-table th{position:relative}.col-resizer{position:absolute;right:-3px;top:0;width:7px;height:100%;cursor:col-resize;user-select:none;touch-action:none;z-index:5}.col-resizer:hover,.col-resizer:active{background:#60a9d744}.resizable-table td,.resizable-table th{overflow-wrap:anywhere}.resizable-table input,.resizable-table textarea,.resizable-table select{max-width:100%;box-sizing:border-box}
@media(max-width:900px){.hsmt-layout{display:block}.hsmt-list-collapsed{width:auto;min-width:0;margin-bottom:14px}}


/* V11.13.1 – HSMT topic list below current record */
.hsmt-topic-panel{margin-top:14px;border:1px solid #c9dbe8;border-radius:12px;background:#fff;overflow:hidden}
.hsmt-topic-panel>summary{display:flex;align-items:center;justify-content:space-between;gap:10px;cursor:pointer;padding:11px 13px;font-weight:800;color:#123f63;background:#edf5fb;list-style:none;user-select:none}
.hsmt-topic-panel>summary::-webkit-details-marker{display:none}
.hsmt-topic-panel>summary:before{content:'▸';font-size:14px;transition:transform .15s ease}
.hsmt-topic-panel[open]>summary:before{transform:rotate(90deg)}
.hsmt-topic-panel>summary span{flex:1}
.hsmt-topic-panel>summary b{display:inline-flex;min-width:28px;height:24px;align-items:center;justify-content:center;border-radius:999px;background:#174d72;color:#fff;font-size:12px}
.hsmt-topic-list{display:flex;flex-wrap:wrap;gap:7px;padding:10px;max-height:300px;overflow:auto}
.hsmt-topic{display:inline-flex;align-items:center;gap:4px;min-height:32px;padding:6px 10px;border:1px solid #b9d0df;border-radius:999px;background:#f7fbfe;color:#174d72;text-decoration:none;font-size:13px;font-weight:800;white-space:nowrap}
.hsmt-topic:hover{background:#ddecf7;border-color:#4b97c8}
.hsmt-topic.active{background:#174d72;border-color:#174d72;color:#fff;box-shadow:0 0 0 2px rgba(23,77,114,.16)}
.hsmt-topic.priority:not(.active){border-color:#e3b23c;background:#fff8d8}
.hsmt-topic .topic-star{color:#d79a00}
.hsmt-topic.active .topic-star{color:#ffe58f}
.hsmt-topic em{font-style:normal;font-size:11px;opacity:.85}
@media(max-width:900px){.hsmt-topic-list{max-height:220px}.hsmt-topic{font-size:12px;padding:5px 8px}}


/* QI hotfix 2026-07-30: gọn giao diện HSMT và trạng thái bảng rõ ràng */
.hsmt-page main,.hsmt-page{font-size:14px}.hsmt-page .panel{padding:14px;margin:12px 0}.hsmt-page .section-title h2{margin:0 0 5px}.hsmt-page .section-title p{margin:0;line-height:1.35}.hsmt-page .form-grid{gap:9px}.hsmt-page .form-grid label{font-size:13px}.hsmt-page .form-grid input,.hsmt-page .form-grid select,.hsmt-page .form-grid textarea{padding:8px}.budget-field input{font-size:16px;letter-spacing:.2px}.checklist-table,.tech-table{max-height:58vh}.checklist-table textarea,.tech-table textarea{min-height:58px}.empty-data{text-align:center!important;padding:24px!important;background:#fff8e1!important;color:#7a4b00!important;line-height:1.55}.empty-data b{color:#9b2222}

/* V11.14 – refined BG Trực tuyến UI */
header{min-height:82px;padding:0 20px;gap:18px;flex-wrap:wrap}
header strong{font-size:28px;letter-spacing:.02em}
header nav{gap:14px;flex-wrap:wrap}
header a{font-size:17px;font-weight:800;padding:14px 16px;border-radius:10px}
header nav span{font-size:14px;font-weight:700;opacity:.95}
.record-summary{align-items:flex-start!important}
.project-name{font-size:24px;line-height:1.25}
.pricing{font-size:14px}
.pricing textarea{font-size:14px}
.pricing input,.pricing select{font-size:14px}
.pricing-simple-item .col-select{width:42px!important}
.pricing th:first-child,.pricing td:first-child{width:42px;min-width:42px;text-align:center;padding-left:6px;padding-right:6px}
.cell-select input[type=checkbox]{width:18px;height:18px}
.customer-editor{border:1px solid #d7e4ee;border-radius:14px;background:#fbfdff;padding:16px 18px;margin-bottom:16px}
.customer-editor-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px}
.customer-editor-header h3{margin:0;font-size:29px;color:#123f63}
.customer-editor-toggle{background:#123f63;padding:8px 14px;font-size:13px;font-weight:800}
.customer-editor.collapsed .customer-editor-header{margin-bottom:0}
.customer-editor-actions{display:flex;justify-content:flex-end;margin-top:12px}
.customer-edit-grid label{font-size:14px;font-weight:700}
.customer-edit-grid input,.customer-edit-grid select,.customer-edit-grid textarea{margin-top:6px;padding:10px 12px;font-size:15px;border:1px solid #b8ccdc;border-radius:10px;background:#fff}
.step-price-card{margin-top:14px;background:#f6fbff;border:1px solid #cfe0ec;border-radius:14px;padding:14px}
.step-price-card-header{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px}
.step-price-card-header b{display:block;font-size:18px;color:#123f63}
.step-price-card-header small{display:block;color:#607d94;margin-top:4px}
.step-price-table-wrap{overflow:auto}
.step-price-table{width:100%;min-width:820px;border-collapse:collapse}
.step-price-table th,.step-price-table td{border:1px solid #d6e4ee;padding:10px 12px;text-align:right;background:#fff}
.step-price-table th:first-child,.step-price-table td:first-child,.step-price-table th:nth-child(2),.step-price-table td:nth-child(2){text-align:left}
.step-price-table th{background:#123f63;color:#fff;font-size:13px;text-transform:none}
.step-price-table td{font-weight:700}
.step-price-table td input{width:100%;max-width:90px;text-align:center;padding:8px;border:1px solid #b9cad7;border-radius:8px}
.step-price-table tr.negative-profit td{background:#fff3f3;color:#b42318}
.step-price-table tr.positive-profit td{background:#f6fffa}
.deadline-highlight,.customer-block{padding:12px;border-radius:12px}
.customer-inline-groups{display:grid;grid-template-columns:1.1fr .9fr;gap:14px}
.customer-block-title{font-size:16px;font-weight:800;margin-bottom:10px}
@media(max-width:1100px){.customer-inline-groups{grid-template-columns:1fr}.customer-editor-header h3{font-size:24px}}
@media(max-width:900px){header strong{font-size:24px}header a{font-size:15px;padding:12px 14px}.customer-editor-header{flex-direction:column;align-items:stretch}.customer-editor-toggle,.customer-editor-actions button{width:100%}}

/* V11.14.1 – high contrast navigation and reliable collapse */
[hidden]{display:none!important}
header,body>header{background:#103a5c!important;color:#fff!important;border-bottom:3px solid #2f8ac4!important}
header a,header nav a,.brand-hsmt-link{background:transparent!important;color:#f7fbff!important;border:1px solid transparent!important;text-shadow:none!important}
header a:hover,header nav a:hover,.brand-hsmt-link:hover{background:#1a527b!important;color:#fff!important;border-color:#4a97c7!important}
header a.active,header nav a.active,.brand-hsmt-link.active{background:#1d6798!important;color:#fff!important;border-color:#76b8df!important;box-shadow:inset 0 -3px 0 #9fd8f5!important}
header nav span{color:#dceaf4!important}
.customer-editor-collapsible.collapsed .customer-edit-grid,
.customer-editor-collapsible.collapsed .customer-editor-actions{display:none!important}
.customer-editor-toggle{min-width:90px;background:#176da8!important;color:#fff!important;border:1px solid #0d5688!important}
.customer-editor-toggle:hover{background:#0f5a8e!important}
.step-price-table{min-width:720px}
.step-price-table th,.step-price-table td{text-align:right!important;vertical-align:middle}
.step-price-table th:first-child,.step-price-table td:first-child{text-align:center!important;width:150px}
.step-price-table .custom-step-count{width:92px!important;max-width:92px!important;font-size:17px;font-weight:800}
.step-price-table tbody tr td{font-size:16px}
.step-price-table tbody tr td:not(:first-child){font-variant-numeric:tabular-nums}

/* V11.15 – Dashboard navigation, collapsible admin log and auction workspace */
.dashboard-header{min-height:84px;height:auto;background:#0f3b5d;color:#fff;padding:0 18px;display:grid;grid-template-columns:260px minmax(720px,1fr) auto;align-items:stretch;gap:14px;border-bottom:3px solid #2f83bd;position:relative;z-index:50}
.dashboard-brand{display:flex!important;align-items:center;gap:11px;color:#fff!important;text-decoration:none;padding:10px 0!important;border-radius:0!important}
.dashboard-brand .brand-mark{display:grid;place-items:center;width:43px;height:43px;border-radius:12px;background:#fff;color:#0f3b5d;font-weight:900;font-size:16px}
.dashboard-brand b{display:block;font-size:19px;line-height:1.1;letter-spacing:.01em}.dashboard-brand small{display:block;font-size:11px;color:#c9dce9;margin-top:5px;font-weight:500}
.dashboard-main-nav{display:grid!important;grid-template-columns:repeat(6,minmax(125px,1fr));gap:0!important;align-items:stretch!important;min-width:0}
.dashboard-nav-item{display:flex!important;flex-direction:column;justify-content:center;align-items:flex-start;color:#eaf4fb!important;text-decoration:none;padding:13px 14px!important;border-radius:0!important;border-left:1px solid rgba(255,255,255,.06);border-bottom:3px solid transparent;min-width:0;transition:.16s ease}
.dashboard-nav-item b{font-size:15px;line-height:1.2;white-space:nowrap}.dashboard-nav-item small{display:block;color:#aecdde;font-size:10px;margin-top:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.dashboard-nav-item:hover{background:#174b70}.dashboard-nav-item.active{background:#245f87!important;border-bottom-color:#75c8ff;box-shadow:inset 0 1px rgba(255,255,255,.08)}.dashboard-nav-item.active small{color:#e8f7ff}
.dashboard-account{display:flex;align-items:center;justify-content:flex-end;gap:9px;white-space:nowrap}.account-name{font-size:13px;font-weight:800}.account-name small{display:block;color:#bcd4e4;font-weight:500;text-align:right}.logout-link{font-size:13px!important;padding:9px 11px!important;background:rgba(255,255,255,.1)}
.admin-menu{position:relative}.admin-menu>summary{list-style:none;cursor:pointer;padding:9px 11px;border:1px solid rgba(255,255,255,.25);border-radius:8px;font-size:13px;font-weight:800}.admin-menu>summary::-webkit-details-marker{display:none}.admin-menu>div{position:absolute;right:0;top:44px;background:#fff;border:1px solid #c9d9e5;border-radius:10px;box-shadow:0 14px 35px rgba(9,41,64,.25);min-width:190px;padding:7px;display:grid;z-index:100}.admin-menu>div a{color:#163e5d!important;padding:10px!important;font-size:13px!important;border-radius:7px}.admin-menu>div a:hover{background:#edf5fa}
.admin-activity-panel{margin:8px 16px 0;border:1px solid #cbdce8;border-radius:11px;background:#fff;box-shadow:0 2px 8px rgba(20,61,94,.06);overflow:hidden}.admin-activity-panel>summary{cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 14px;color:#173f5f;font-weight:800;list-style:none}.admin-activity-panel>summary::-webkit-details-marker{display:none}.admin-activity-panel>summary:after{content:'Mở';font-size:12px;color:#176eb0;border:1px solid #bcd2e1;border-radius:7px;padding:5px 9px}.admin-activity-panel[open]>summary:after{content:'Thu gọn'}.admin-activity-panel>summary small{margin-left:auto;color:#708596;font-weight:500}.admin-activity-content{border-top:1px solid #dbe6ee;padding:10px 14px;display:flex;gap:8px;flex-wrap:wrap;background:#f7fafc}.activity-chip{display:grid;grid-template-columns:auto minmax(180px,1fr) auto;align-items:center;gap:7px;padding:7px 9px;border:1px solid #d6e3ec;border-radius:8px;background:#fff;font-size:12px;max-width:100%}.activity-chip b{color:#123f63}.activity-chip span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.activity-chip small{color:#718494}.activity-all-link{align-self:center;margin-left:auto;font-weight:800;color:#176eb0}
.compact-tool-panel{padding:0!important;overflow:hidden}.compact-tool-panel>summary{cursor:pointer;padding:13px 16px;font-size:16px;font-weight:800;color:#123f63;list-style:none}.compact-tool-panel>summary::-webkit-details-marker{display:none}.compact-tool-panel>summary:after{content:'Mở';float:right;color:#176eb0;font-size:12px;border:1px solid #bcd2e1;border-radius:7px;padding:4px 8px}.compact-tool-panel[open]>summary:after{content:'Thu gọn'}.compact-tool-panel .pipeline-export-bar{margin:0;border-top:1px solid #dce7ef;padding:14px 16px;display:flex;gap:12px;align-items:end;flex-wrap:wrap;background:#f8fbfd}.compact-tool-panel .pipeline-export-bar label{display:grid;gap:6px}.compact-tool-panel .pipeline-export-bar select{padding:9px;border:1px solid #bfd1de;border-radius:8px;background:#fff}
.customer-editor{padding:0!important;border:0!important;background:transparent!important}.customer-basic-details,.auction-section{background:#fff;border:1px solid #cddde8;border-radius:13px;overflow:hidden;box-shadow:0 2px 8px rgba(18,63,99,.05)}.customer-basic-details{margin-bottom:14px}.customer-basic-details>summary,.auction-section>summary{cursor:pointer;list-style:none;padding:14px 16px;color:#123f63;font-size:17px;font-weight:900;display:flex;align-items:center;justify-content:space-between}.customer-basic-details>summary::-webkit-details-marker,.auction-section>summary::-webkit-details-marker{display:none}.customer-basic-details>summary:after,.auction-section>summary:after{content:'Mở';font-size:12px;font-weight:800;color:#176eb0;border:1px solid #bcd2e1;border-radius:7px;padding:5px 9px}.customer-basic-details[open]>summary:after,.auction-section[open]>summary:after{content:'Thu gọn'}.customer-basic-details>summary small{margin-left:auto;margin-right:12px;color:#748797;font-size:12px;font-weight:500}.customer-basic-grid{border-top:1px solid #dde7ee;padding:15px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.customer-basic-grid label,.auction-section-body label{display:grid;gap:6px;color:#123f63;font-size:14px;font-weight:800}.customer-basic-grid input,.auction-section-body input{width:100%;padding:11px 12px;border:1px solid #b9cedd;border-radius:9px;background:#fff;font-size:15px;color:#092f4b}.auction-dashboard{display:grid;grid-template-columns:1.1fr .9fr;gap:14px}.auction-proposal-section{grid-column:1/-1}.auction-section>summary{background:#f7fbfe;text-transform:none}.auction-section-body{border-top:1px solid #dde7ee;padding:14px}.auction-time-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px}.auction-time-grid .deadline-highlight{grid-column:1/-1}.auction-price-grid{display:grid;grid-template-columns:1fr;gap:11px}.auction-formula{margin:0 0 10px;color:#607d94;font-size:13px}.customer-editor-actions{display:flex;justify-content:flex-end;margin:12px 0 4px}.step-price-table{min-width:720px;width:100%;border-collapse:collapse}.step-price-table th{background:#123f63!important;color:#fff!important;padding:10px 12px;font-size:13px;text-align:right}.step-price-table th:first-child{text-align:center}.step-price-table td{padding:12px;border:1px solid #d2e0e9;text-align:right;font-size:16px;font-weight:800;font-variant-numeric:tabular-nums;background:#fff}.step-price-table td:first-child{text-align:center;width:150px}.step-price-table .custom-step-count{width:105px!important;height:44px;text-align:center;font-size:20px;font-weight:900;border:1px solid #9bbbd0;border-radius:9px}.step-price-table tr.negative-profit td{background:#fff1f1;color:#a61b1b}.step-price-table tr.positive-profit td{background:#f3fbf6;color:#123f63}
@media(max-width:1450px){.dashboard-header{grid-template-columns:220px 1fr;}.dashboard-account{grid-column:1/-1;justify-content:flex-end;padding-bottom:8px}.dashboard-main-nav{grid-template-columns:repeat(6,minmax(110px,1fr))}.dashboard-nav-item{padding:11px 9px!important}.dashboard-nav-item b{font-size:14px}}
@media(max-width:1050px){.dashboard-header{display:flex;flex-wrap:wrap;align-items:center}.dashboard-brand{min-width:220px}.dashboard-main-nav{order:3;width:100%;overflow-x:auto;display:flex!important}.dashboard-nav-item{min-width:150px}.dashboard-account{margin-left:auto}.auction-dashboard{grid-template-columns:1fr}.auction-proposal-section{grid-column:auto}.activity-chip{grid-template-columns:1fr}.activity-chip span{white-space:normal}.admin-activity-panel>summary small{display:none}}
@media(max-width:700px){.customer-basic-grid,.auction-time-grid{grid-template-columns:1fr}.dashboard-account .account-name{display:none}.admin-activity-panel{margin:7px}.step-price-table{min-width:650px}}

/* V11.16 – Neat-inspired visual system and locked auction fields */
:root{
 --neat-ink:#171717;
 --neat-paper:#f7f7f3;
 --neat-white:#ffffff;
 --neat-lime:#d8ff63;
 --neat-lavender:#eeebff;
 --neat-blue:#cfe9ff;
 --neat-border:#d8d8d2;
 --neat-muted:#65655f;
 --neat-danger:#ff6b5f;
 font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;
 background:var(--neat-paper);
 color:var(--neat-ink);
}
body{background:var(--neat-paper);color:var(--neat-ink);font-family:"Helvetica Neue",Helvetica,Arial,sans-serif}
.dashboard-header{background:var(--neat-ink)!important;border-bottom:0!important;box-shadow:none!important}
.dashboard-brand .brand-mark{background:var(--neat-lime)!important;color:var(--neat-ink)!important;border-radius:50%!important}
.dashboard-brand b,.dashboard-nav-item b,.account-name{color:#fff!important}
.dashboard-brand small,.dashboard-nav-item small,.account-name small{color:#cfcfc8!important}
.dashboard-nav-item{border-left:0!important;border-bottom:0!important;border-radius:999px!important;margin:12px 4px!important;padding:11px 16px!important;align-self:center!important}
.dashboard-nav-item:hover{background:#2a2a2a!important}
.dashboard-nav-item.active{background:var(--neat-lime)!important;color:var(--neat-ink)!important;box-shadow:none!important}
.dashboard-nav-item.active b,.dashboard-nav-item.active small{color:var(--neat-ink)!important}
.admin-menu>summary,.logout-link{border-radius:999px!important;background:#2a2a2a!important;border:1px solid #444!important;color:#fff!important}
.admin-menu>summary:hover,.logout-link:hover{background:var(--neat-lime)!important;color:var(--neat-ink)!important}
main{max-width:1680px}
.panel,.record,.customer-basic-details,.auction-section{border-color:var(--neat-border)!important;box-shadow:0 1px 0 rgba(0,0,0,.03)!important;border-radius:18px!important}
.pagehead h1,.project-name,.customer-basic-details>summary,.auction-section>summary{color:var(--neat-ink)!important;letter-spacing:-.02em}
.btn,button{background:var(--neat-ink);color:#fff;border-radius:999px;font-weight:800}
.btn:hover,button:hover{background:#303030}
.secondary{background:var(--neat-lavender)!important;color:var(--neat-ink)!important;border:1px solid #d7d2f1!important}
.compact-tool-panel>summary,.customer-basic-details>summary,.auction-section>summary{background:var(--neat-white)!important;color:var(--neat-ink)!important}
.compact-tool-panel>summary:after,.customer-basic-details>summary:after,.auction-section>summary:after{background:var(--neat-lavender);color:var(--neat-ink);border:0!important;border-radius:999px!important;padding:6px 12px!important}
.source-upload-panel{margin-top:10px}
.source-upload-panel .source-upload{border-top:1px solid var(--neat-border);padding:16px;margin:0;background:#fff}
.locked-hsmt-field{background:#efefeb!important;border-color:#d7d7d0!important;color:#3c3c38!important;font-weight:800;cursor:not-allowed;box-shadow:none!important}
.locked-hsmt-field:focus{outline:none!important;border-color:#d7d7d0!important}
.auction-section>summary{font-size:19px!important}
.auction-time-grid,.auction-price-grid{background:#fff}
.deadline-highlight{border:0!important;border-radius:16px!important;padding:14px 16px!important;background:var(--neat-lime)!important;color:var(--neat-ink)!important;box-shadow:0 0 0 4px rgba(216,255,99,.25)!important}
.deadline-highlight span,.deadline-highlight small{color:#4b4b43!important}
.deadline-highlight b{font-size:24px!important;color:var(--neat-ink)!important;letter-spacing:-.03em}
.deadline-highlight.warning,.deadline-highlight.urgent{background:#ffe875!important;box-shadow:0 0 0 4px rgba(255,232,117,.24)!important}
.deadline-highlight.expired,.deadline-highlight.overdue{background:#ffd6d2!important;box-shadow:0 0 0 4px rgba(255,107,95,.18)!important}
.auction-proposal-section{border-color:#c9c3ec!important}
.auction-proposal-section>summary{background:var(--neat-lavender)!important}
.step-price-table th{background:var(--neat-ink)!important;color:#fff!important;border-color:var(--neat-ink)!important}
.step-price-table td{background:#fff!important;color:var(--neat-ink)!important;border-color:var(--neat-border)!important}
.step-price-table .custom-step-count{border:2px solid var(--neat-ink)!important;border-radius:12px!important;background:var(--neat-lime)!important;color:var(--neat-ink)!important}
.step-price-table tr.negative-profit td{background:#fff1ef!important;color:#a32318!important}
.step-price-table tr.positive-profit td{background:#f9fff0!important;color:var(--neat-ink)!important}
.customer-editor-actions{padding:0 15px 15px;margin:0!important;border-top:0!important;background:#fff}
.customer-editor-actions .save-customer{background:var(--neat-ink);color:#fff}
.pricing thead th,.resource-table th,.batch-result-table th{background:var(--neat-ink)!important;color:#fff!important}
.record-filter select,.compact-tool-panel select,.source-upload input,.source-upload select{border-radius:12px!important;border-color:var(--neat-border)!important}
@media(max-width:1050px){.dashboard-nav-item{border-radius:14px!important;margin:5px!important}}

/* V11.17 – Inter font, discount column and compact HSMT source link */
:root{font-family:'Inter',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif!important}
body,input,select,textarea,button,table{font-family:'Inter',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif!important}
.dashboard-brand b,.dashboard-nav-item b,.pagehead h1,.project-name,.customer-basic-details>summary,.auction-section>summary{font-family:'Inter',system-ui,sans-serif!important}
.step-price-table{min-width:900px}
.step-price-table .step-discount{color:#b42318;font-weight:900}
.source-link-collapsible{margin-top:14px;border:1px solid var(--neat-border,#d8d8d2)!important;border-radius:16px!important;background:#fff;overflow:hidden}
.source-link-collapsible>summary{cursor:pointer;list-style:none;padding:14px 16px;font-weight:800;color:var(--neat-ink,#171717);display:flex;align-items:center;justify-content:space-between}
.source-link-collapsible>summary::-webkit-details-marker{display:none}
.source-link-collapsible>summary:after{content:'Mở';font-size:12px;background:var(--neat-lavender,#eeebff);border-radius:999px;padding:6px 12px;color:var(--neat-ink,#171717)}
.source-link-collapsible[open]>summary:after{content:'Thu gọn'}
.source-link-content{border-top:1px solid var(--neat-border,#d8d8d2);padding:14px 16px;background:#fafafa}
.source-link-note{display:block;margin-top:8px;color:#6b6b65;font-size:12px}
.source-link-edit input{font-size:14px}
@media(max-width:900px){.step-price-table{min-width:820px}}

/* V11.18 – Lock, admin notes, compact view, pricing widths */
.record-lock-toggle{background:#f2b84b;color:#1d2430;font-weight:800;border:1px solid #d79b26}.record-lock-toggle.locked{background:#1d2430;color:#fff;border-color:#1d2430}.record-lock-notice{margin-bottom:14px;padding:12px 14px;border-radius:12px;background:#fff2cf;border:1px solid #e6b94d;color:#6b4b00;font-weight:800}.record-locked{box-shadow:0 0 0 2px rgba(230,185,77,.22)}.record-locked .record-summary{background:#fffaf0}.view-mode-switch{display:flex;border:1px solid #c7d6e1;border-radius:999px;padding:3px;background:#eef4f8}.view-mode-btn{border-radius:999px;background:transparent;color:#456174;padding:7px 12px;font-weight:800}.view-mode-btn.active{background:#123f63;color:#fff}.pricing-simple-item .col-stt{width:56px}.pricing-simple-item .col-select{width:76px!important}.pricing th:nth-child(2),.pricing td:nth-child(2){min-width:76px;white-space:nowrap}.stt-cell{text-align:center;font-weight:800;color:#123f63}.pricing-simple-item .col-admin-note{width:300px}.admin-note-cell{min-width:260px;background:#fff9e8}.admin-note-cell textarea{width:100%;min-height:120px;resize:vertical}.admin-note-readonly{white-space:pre-wrap;color:#6a4a00;font-weight:700}.admin-general-note-row th{background:#fff3c4!important;color:#523b00!important;text-align:left!important}.admin-general-note-wrap{display:flex;align-items:center;gap:12px}.admin-general-note-wrap textarea{flex:1;min-height:54px;padding:9px;border:1px solid #d9b545;border-radius:8px}.admin-note-save{background:#7a5b00}.margin-cell{min-width:118px!important}.margin-cell .margin-mode{width:100%;margin-bottom:6px}.margin-cell .margin{width:100%}.pricing th:nth-last-child(4),.pricing td:nth-last-child(4){width:110px;min-width:110px}.pricing th:nth-last-child(3),.pricing td:nth-last-child(3){width:180px;min-width:180px}.pricing th:nth-last-child(2),.pricing td:nth-last-child(2){width:190px;min-width:190px}.compact-view .item-description,.compact-view .proposal-description,.compact-view .proposal-edit-cell>small,.compact-view .copy-requirement-to-proposal,.compact-view .sale-note-cell textarea,.compact-view .admin-note-cell textarea,.compact-view .admin-note-readonly,.compact-view .catalog-suggestion-box,.compact-view .compact-catalog-status,.compact-view .requirement-cell>small{display:none!important}.compact-view .item-edit-cell,.compact-view .proposal-edit-cell,.compact-view .sale-note-cell,.compact-view .admin-note-cell{min-height:58px}.compact-view .pricing tbody td{padding-top:7px;padding-bottom:7px}.compact-view .item-edit-head{margin-bottom:0}.compact-view .proposal-edit-cell:after{content:'Đã thu gọn mô tả';font-size:12px;color:#6d8090}.summary-stats{flex-wrap:wrap}

/* V11.19 – compact record list, switch lock, true compact table and inline exports */
main{max-width:1780px;padding:18px 24px}
.accordion{display:grid;gap:9px}
.record{margin:0;border-radius:14px;box-shadow:0 2px 8px rgba(15,23,42,.05)}
.record>summary{min-height:82px;padding:12px 16px}
.record[open]>summary{min-height:86px}
.summary-main{flex:1;min-width:360px;gap:2px!important}
.project-name{font-size:18px;line-height:1.22;max-width:760px}
.investor-name{font-size:12px;line-height:1.25}
.code{font-size:11px}
.summary-stats{display:grid!important;grid-template-columns:92px 210px 118px 78px 64px;align-items:stretch;gap:8px!important;flex:none!important}
.summary-stats>div,.summary-stats>label,.summary-stats>button{min-width:0!important;min-height:58px!important;border-radius:10px!important;padding:7px 9px!important;margin:0!important}
.summary-stats>div{display:grid!important;align-content:center}
.deadline-box{min-width:0!important}
.deadline-box b{font-size:14px!important;white-space:nowrap}
.deadline-box span{font-size:10px!important}
.sent-flag{display:grid!important;place-items:center;text-align:center;background:#f5f8fa;border:1px solid #d7e3ec;color:#123f63}
.sent-flag input{width:16px;height:16px;margin:0 0 2px}
.sent-flag span{font-size:11px;font-weight:800}
.summary-delete-btn{background:#c93636!important;font-size:11px!important;font-weight:800!important}
.record-lock-switch{display:grid!important;grid-template-columns:auto;place-items:center;background:#f5f8fa;border:1px solid #d7e3ec;cursor:pointer;user-select:none}
.record-lock-switch input{position:absolute;opacity:0;pointer-events:none}
.switch-track{width:42px;height:22px;border-radius:999px;background:#cbd5df;padding:3px;display:block;transition:.2s}
.switch-knob{display:block;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.25);transition:.2s}
.record-lock-switch input:checked+.switch-track{background:#efad2e}
.record-lock-switch input:checked+.switch-track .switch-knob{transform:translateX(20px)}
.record-lock-switch small{font-size:10px;font-weight:800;color:#334155;margin-top:3px}
.recordbody{padding:14px 16px 18px}
.toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:10px}
.toolbar .btn,.toolbar button{font-size:12px;padding:8px 10px;white-space:nowrap}
.toolbar label{font-size:12px}.toolbar .common-margin{width:82px}
.header-select-all{display:flex;align-items:center;justify-content:center;gap:5px;white-space:nowrap;cursor:pointer}
.header-select-all input{width:16px!important;height:16px!important;margin:0}
.header-select-all span{font-size:12px}
.admin-general-note-wrap{display:grid;grid-template-columns:auto minmax(240px,1fr) auto;gap:10px;align-items:center}
.admin-general-note-wrap .admin-note-save{padding:8px 14px;white-space:nowrap}
/* True compact mode: hide full columns, not only inner content */
.compact-view .proposal-col,.compact-view .sale-note-col,.compact-view .admin-note-col,.compact-view .supplier-col,.compact-view .row-actions-col{display:none!important}
.compact-view .pricing{min-width:1120px!important}
.compact-view .pricing-simple-item .col-proposal-edit,.compact-view .pricing-simple-item .col-sale-note,.compact-view .pricing-simple-item .col-admin-note,.compact-view .pricing-simple-item .col-supplier{width:0!important}
.compact-view .admin-general-note-row{display:none!important}
.compact-view .item-description,.compact-view .requirement-cell>small{display:none!important}
.compact-view .item-edit-cell{min-width:360px!important}
.compact-view .item-edit-head{grid-template-columns:125px minmax(220px,1fr)}
.pagination{display:flex;justify-content:center;gap:6px;margin:18px 0 6px;flex-wrap:wrap}
.pagination a{min-width:36px;height:36px;display:grid;place-items:center;border:1px solid #cbd9e4;border-radius:9px;text-decoration:none;color:#123f63;background:#fff;font-weight:800}
.pagination a.active{background:#123f63;color:#fff;border-color:#123f63}
.quotation-preview-modal{z-index:2000}
.quotation-preview-box{position:relative;width:min(1450px,96vw);height:92vh;background:#fff;border-radius:14px;box-shadow:0 24px 80px rgba(0,0,0,.34);overflow:hidden}
.quotation-preview-box iframe{width:100%;height:100%;border:0;background:#fff}
.quotation-preview-box .close{position:absolute;right:10px;top:8px;z-index:3;width:38px;height:38px;border-radius:50%;background:#111;color:#fff;font-size:24px;padding:0}
.source-link-box{margin:10px 0 12px}
@media(max-width:1250px){.record-summary{flex-direction:column!important}.summary-main{min-width:0;width:100%}.summary-stats{width:100%;grid-template-columns:90px minmax(180px,1fr) 110px 78px 64px}}
@media(max-width:780px){.summary-stats{grid-template-columns:1fr 1.5fr}.summary-delete-btn,.record-lock-switch{min-height:50px!important}.project-name{font-size:16px}.admin-general-note-wrap{grid-template-columns:1fr}.quotation-preview-box{width:100vw;height:100vh;border-radius:0}}

/* V11.20 – record intelligence, permissions and clean quotation preview */
.code-admin-edit{display:flex!important;flex-direction:row!important;align-items:center;gap:6px}
.record-code-input{width:245px;max-width:38vw;border:1px solid #bcd0df;border-radius:7px;padding:5px 8px;font-weight:800;color:#075ba8;background:#fff}
.save-record-code{padding:5px 8px;font-size:11px}
.record-mini-status{display:grid!important;grid-template-columns:auto auto;gap:5px 8px;min-width:235px;font-size:11px;color:#36566d;background:#f3f8fb;border:1px solid #d5e4ee;border-radius:10px;padding:7px 9px}
.record-mini-status>span{white-space:nowrap;font-weight:700}
.price-progress{grid-column:1/-1;position:relative}
.price-progress summary{cursor:pointer;font-weight:800;color:#0b6b47}
.price-progress>div{position:absolute;z-index:20;top:24px;left:0;width:330px;max-height:220px;overflow:auto;white-space:pre-line;background:#fff7d6;border:1px solid #e7ca67;border-radius:9px;padding:10px;box-shadow:0 10px 25px #183b4d25;color:#5e4700}
.missing-price-highlight{outline:3px solid #ffc400!important;outline-offset:-3px;background:#fff9d8!important}
.record-access-panel{margin:8px 0 12px;border:1px solid #d8e4ec;border-radius:10px;background:#f8fbfd}
.record-access-panel>summary{padding:9px 12px;cursor:pointer;font-weight:800}
.record-access-panel>div{padding:10px 12px;border-top:1px solid #d8e4ec}
.access-user-list{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}
.access-user-list label{background:#fff;border:1px solid #c9d9e4;border-radius:999px;padding:6px 10px}
.admin-general-note-row.has-note th{background:#fff0a8!important}
.admin-general-note-details>summary{cursor:pointer;font-weight:900;color:#5b4500;text-align:left}
.admin-general-note-wrap{display:flex;gap:10px;align-items:flex-start;margin-top:8px}.admin-general-note-wrap textarea{flex:1;min-height:68px}
.user-permission-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(520px,1fr));gap:14px}
.user-permission-card{margin:0}.user-card-head{display:flex;justify-content:space-between;align-items:center}.user-card-head>div{display:grid}.user-card-head small{color:#61798a}.user-edit-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:12px 0}.user-edit-grid label{display:grid;gap:5px}.user-edit-grid input,.user-card-head select{padding:9px;border:1px solid #c4d6e2;border-radius:8px}.permission-table th,.permission-table td{text-align:center}.permission-table td:first-child{text-align:left;font-weight:700}.permission-table input{width:18px;height:18px}.user-card-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.admin-full-rights{padding:12px;background:#e9f8ed;border-radius:9px;margin:12px 0}.profile-password{max-width:520px;margin:30px auto}.profile-password form{display:grid;gap:12px}.profile-password label{display:grid;gap:6px}.profile-password input{padding:11px;border:1px solid #c4d6e2;border-radius:8px}
.quote-preview-standalone .admin-activity-panel,.quote-preview-standalone .dashboard-header{display:none!important}
.quote-preview-standalone{background:#e8ecef}.quote-preview-standalone .quote-preview-page{padding:14px}
@media(max-width:1200px){.record-mini-status{min-width:190px}.user-permission-grid{grid-template-columns:1fr}.user-edit-grid{grid-template-columns:1fr}}
@media print{.quote-preview-standalone .preview-toolbar{display:none!important}.quote-preview-standalone .quote-preview-page{padding:0}.quote-preview-standalone{background:#fff}}

/* V11.21 – compact quantities, tab visibility admin, collapsed HSMT utilities */
.compact-view .pricing{min-width:1320px!important}
.compact-view .pricing-simple-item .col-qty{width:105px!important;min-width:105px!important}
.compact-view .pricing-simple-item .col-unit{width:115px!important;min-width:115px!important}
.compact-view .qty-cell,.compact-view .unit-cell{min-width:105px!important;white-space:nowrap}
.compact-view .qty-cell input,.compact-view .unit-cell input{min-width:88px!important;width:100%!important;font-size:14px!important;padding:8px!important}
.tab-visibility-admin .permission-table{width:100%;min-width:860px}
.tab-visibility-admin .user-whitelist{display:flex;gap:12px;flex-wrap:wrap}
.tab-visibility-admin .user-whitelist label{display:inline-flex;align-items:center;gap:6px;background:#f4f7fa;border:1px solid #d3e0e9;border-radius:999px;padding:6px 10px}
.tab-visibility-admin .switch-line{display:inline-flex;align-items:center;gap:8px;font-weight:800}
.hsmt-upload-collapsible .hsmt-upload,.detail-replace-collapsible .detail-replace-panel,.bid-decision-collapsible .bid-decision-panel,.hsmt-source-link-collapsible .hsmt-source-link{padding:16px;border-top:1px solid #dce7ef;background:#fff}
.hsmt-upload-collapsible .hsmt-upload{margin:0}
.hsmt-source-link-collapsible .hsmt-source-link{display:grid;grid-template-columns:280px 1fr;gap:18px;align-items:center}
.detail-replace-collapsible .detail-replace-panel,.bid-decision-collapsible .bid-decision-panel{margin:0;border:0;box-shadow:none}
@media(max-width:900px){.hsmt-source-link-collapsible .hsmt-source-link{grid-template-columns:1fr}.tab-visibility-admin{overflow:auto}}

/* V11.22 – assignment, compact margin, supplier tabs */
.record-stats{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.record-stats span{background:#eef4f8;border:1px solid #c9dae6;border-radius:999px;padding:7px 11px;color:#405c70;font-size:13px}.record-stats b{color:#0c3f63}
.assignment-summary{display:grid;gap:5px;min-width:220px;padding:8px 10px;border:1px solid #d9e3ea;border-radius:10px;background:#fffdf4}.assignment-summary label{display:grid;gap:4px;font-size:12px;font-weight:800}.assignment-summary select{max-width:190px;padding:6px;border:1px solid #c5d4df;border-radius:7px}.assignment-summary button{padding:6px 10px;font-size:12px}.assignment-summary small{color:#a35e00;font-weight:700}.assignment-alert{margin:12px 0;padding:12px 14px;border:1px solid #efc56f;border-radius:12px;background:#fff8df}.assignment-alert div{display:flex;gap:8px;flex-wrap:wrap;margin-top:7px}.assignment-alert a{background:#fff;border:1px solid #ead09a;border-radius:999px;padding:5px 9px;color:#704b00;text-decoration:none;font-weight:700}
.margin-cell{min-width:84px!important;width:84px!important}.margin-cell .margin{width:72px!important;text-align:center;font-weight:800}.pricing-simple-item .col-qty{width:105px!important}.pricing-simple-item .col-unit{width:115px!important}.qty-cell,.unit-cell{min-width:105px!important}.qty-cell input,.unit-cell input{min-width:88px!important;width:100%!important}.compact-view .admin-note-cell,.compact-view .admin-note-col{display:none!important}.compact-view .pricing tbody tr{height:auto!important}.compact-view .pricing tbody td{min-height:46px!important;height:auto!important}
.ncc-subtabs{display:flex;gap:8px;margin:0 0 16px}.ncc-subtabs a{padding:10px 16px;border:1px solid #d2c9ff;border-radius:999px;text-decoration:none;color:#32275f;background:#f5f2ff;font-weight:800}.ncc-subtabs a.active{background:#211947;color:#fff;border-color:#211947}
.subtab-permissions{margin:12px 0;border:1px solid #d5e2eb;border-radius:10px;padding:10px}.subtab-permissions summary{cursor:pointer;font-weight:800}.subtab-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:7px;margin-bottom:10px}.subtab-grid label{display:flex;gap:7px;align-items:center;background:#f6f9fb;padding:7px;border-radius:7px}
@media(max-width:1100px){.assignment-summary{min-width:170px}.record-stats{width:100%}}

/* V11.23 – assignment notifications, VAT options, quote and user management */
.live-notifications{margin:12px 0;border:1px solid #f0bf55;background:#fff7dc;border-radius:14px;padding:12px 14px}.live-notification-head{display:flex;justify-content:space-between;align-items:center;gap:10px}.live-notification-list{display:grid;gap:7px;margin-top:9px}.live-notification-list a{display:grid;grid-template-columns:auto 1fr auto;gap:10px;color:#403000;text-decoration:none;background:#fff;border:1px solid #efd99a;border-radius:9px;padding:9px 11px}.live-notification-list span{overflow:hidden;text-overflow:ellipsis}.assignment-save-status{display:block;color:#087443;font-weight:800;font-size:12px;max-width:220px}.input-vat-controls{display:flex;align-items:center;gap:7px;margin-top:7px;flex-wrap:wrap}.input-vat-controls label{display:flex;align-items:center;gap:5px;font-size:12px;font-weight:700}.input-vat-controls input[type=checkbox]{width:17px!important;height:17px}.input-vat-controls select{width:72px!important;min-width:72px;padding:6px!important}.ceiling-price-warning{margin:10px 0;border:1px solid #e95d5d;background:#fff0f0;color:#9f1d1d;border-radius:10px;padding:10px 13px;font-weight:750}.pricing th:nth-last-child(5),.pricing td:nth-last-child(5){min-width:105px}.admin-general-note-details summary{color:#fff!important;font-weight:700}.admin-general-note-details[open] summary{color:#fff!important}.admin-general-note-wrap{display:flex;gap:8px;align-items:flex-start}.admin-general-note-wrap textarea{flex:1}.quote-preview-standalone,.quote-preview-standalone *{font-family:"Times New Roman",Times,serif!important}.q-items td.center{text-align:center!important;vertical-align:middle}.q-info small{font-size:12px;line-height:1.35}.user-account-details{padding:0!important;overflow:hidden}.user-account-details>summary{cursor:pointer;display:flex;justify-content:space-between;align-items:center;padding:16px 18px;background:#f7fafc}.user-account-details>summary span{display:grid;gap:3px}.user-account-details>summary small{color:#607d94}.user-account-details>summary strong{color:#176eb0}.user-account-details>form{padding:18px}.subtab-permissions{border:1px solid #cddce7;border-radius:12px;padding:12px;background:#f8fbfd}.subtab-permissions summary{font-size:16px;font-weight:800;color:#123f63}.subtab-help{color:#607d94;margin:8px 0}.subtab-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px}.subtab-grid label{background:#fff;border:1px solid #d6e2eb;border-radius:8px;padding:8px}.compact-view .admin-note-col,.compact-view .sale-note-col,.compact-view .proposal-col,.compact-view .supplier-col,.compact-view .row-actions-col{display:none!important}.compact-view .admin-general-note-row{display:none!important}
@media(max-width:900px){.live-notification-list a{grid-template-columns:1fr}.input-vat-controls{align-items:flex-start}}

/* V11.24 – notes, supplier proof, totals, compact resources */
.admin-general-note-row.has-note th{background:#fff3a6!important;color:#111!important}
.admin-general-note-details[open] .admin-general-note-wrap{background:#fff7bf;color:#111;border:1px solid #e4c84d;border-radius:10px;padding:12px}
.admin-note-toolbar{display:flex;justify-content:flex-start;margin-bottom:8px}
.admin-note-user-visible{background:#fff3a6;color:#111;padding:12px;border-radius:9px;font-weight:650;white-space:pre-wrap}
.catalog-suggestion-box{border:1px solid #cbdde9;border-radius:9px;margin-top:8px;background:#f7fbfe}
.catalog-suggestion-box>summary{cursor:pointer;padding:9px 10px;font-weight:800;color:#123f63}
.catalog-suggestion-content{padding:0 10px 10px;display:grid;gap:7px}
.supplier-free-text{width:100%!important;margin-top:7px}
.grand-total-row th{background:#123f63!important;color:#fff!important;font-size:14px}
.last-save-meta{display:block;max-width:145px;color:#607d94;font-size:10px;line-height:1.3}
.supplier-proof-panel,.record-share-row{margin:12px 0;border:1px solid #cbdde9;border-radius:12px;background:#fff}
.supplier-proof-panel>summary{cursor:pointer;padding:12px 15px;font-weight:800}
.supplier-proof-content{padding:0 15px 15px}
.attachment-upload-form{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.attachment-list{display:grid;gap:8px;margin-top:12px}
.attachment-item{display:grid;grid-template-columns:minmax(220px,1fr) auto minmax(160px,260px) auto auto;gap:8px;align-items:center;padding:9px;border:1px solid #d9e6ef;border-radius:9px;background:#f8fbfd}
.attachment-item a{font-weight:750;color:#125f96}.attachment-item small{color:#607d94}.attachment-note{padding:7px;border:1px solid #c2d3df;border-radius:7px}
.record-share-row{padding:10px 14px;background:#f8fbfd}
.q-items td.center,.q-items td.num.center{text-align:center!important}
@media(max-width:900px){.attachment-item{grid-template-columns:1fr}.attachment-upload-form>*{width:100%}}
.admin-general-note-details summary{color:#111!important;background:#fff3a6!important}
.admin-general-note-details[open] summary{color:#111!important;background:#ffe77a!important}

/* V11.25 – giá bán/VAT và bảng tổng mới */
.pricing .col-buy-total{width:165px}.pricing .col-margin{width:86px}.pricing .col-sell-unit{width:150px}.pricing .col-sell-exvat{width:170px}.pricing .col-output-vat{width:95px}.pricing .col-sell-vat{width:175px}.pricing .col-actions{width:112px}
.output-vat-cell{text-align:center}.output-vat-rate{min-width:74px!important;width:74px!important}.output-vat-dash{font-weight:800;font-size:18px}
.grand-total-row .sum-buy,.grand-total-row .sum-sell{font-size:16px;white-space:nowrap}
.input-vat-controls{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:7px}.input-vat-controls label{display:flex;align-items:center;gap:5px;font-size:12px;font-weight:700}.input-vat-controls input[type=checkbox]{width:17px;height:17px}.input-vat-controls select{width:72px!important;min-width:72px!important}
.q-items th,.q-items td{text-align:center}.q-items td:nth-child(3){text-align:left}

/* V11.26 – chỉnh vị trí link hồ sơ và khối bằng chứng NCC */
.record-copy-under-title{align-self:flex-start;margin-top:6px;padding:6px 10px;border:1px solid #b8cde0;background:#eef6fb;color:#123f63;border-radius:8px;font-size:12px;font-weight:800;line-height:1.1}
.record-copy-under-title:hover{background:#dfeef8}
.supplier-proof-highlight{margin:16px 0 14px;border:2px solid #f2c94c;border-radius:14px;background:#fff8d9;box-shadow:0 5px 16px rgba(155,110,0,.08);overflow:hidden}
.supplier-proof-highlight>summary{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px 18px;cursor:pointer;background:#ffe987;color:#161616;font-weight:900}
.supplier-proof-highlight>summary small{font-weight:600;color:#5a4a00}
.supplier-proof-highlight[open]>summary{border-bottom:1px solid #e7ca55}
.supplier-proof-highlight .supplier-proof-content{padding:16px;background:#fffdf3}
.supplier-proof-highlight .attachment-upload-form{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.supplier-proof-highlight .attachment-upload-form input[type=file]{flex:1;min-width:300px;padding:10px;background:#fff;border:1px solid #d9c36c;border-radius:9px}
@media(max-width:800px){.supplier-proof-highlight>summary{align-items:flex-start;flex-direction:column}.supplier-proof-highlight .attachment-upload-form{align-items:stretch;flex-direction:column}.supplier-proof-highlight .attachment-upload-form input[type=file]{min-width:0;width:100%}}

/* V11.27 – so sánh đề xuất chào và BG đang tính */
.step-price-table .current-quote-row td{background:#e9f3ff!important;color:#0a3558;border-top:2px solid #5b8db8;font-weight:800}
.step-price-table .current-quote-row td:first-child{color:#073b68}
.step-price-table .step-proposal-row td:first-child{font-weight:800}
.p1-note{display:block;margin-top:8px;color:#5d7080;font-size:12px}
.record-copy-under-title[title]{max-width:max-content}

/* V11.28 – File Giá/Hình ảnh NCC, VAT cùng hàng, Quotation 2 mẫu */
.attachment-dropzone{position:relative;border:2px dashed #e2a400;background:#fff9d9;border-radius:14px;padding:22px;display:grid;gap:6px;text-align:center;cursor:pointer;transition:.18s ease}
.attachment-dropzone:hover,.attachment-dropzone.dragover{background:#fff1a8;border-color:#111;box-shadow:0 0 0 4px rgba(226,164,0,.16)}
.attachment-dropzone input[type=file]{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}
.attachment-dropzone b{font-size:16px;color:#171717}.attachment-dropzone small{color:#6b5d21}
.input-vat-controls{display:flex!important;align-items:center!important;gap:8px!important;flex-wrap:nowrap!important;margin-top:7px}
.input-vat-controls label{display:flex!important;align-items:center!important;gap:5px!important;white-space:nowrap!important;margin:0!important;font-size:12px!important}
.input-vat-controls select{width:72px!important;min-width:72px!important;padding:6px!important}
.copy-toast{position:fixed;right:22px;bottom:22px;z-index:99999;background:#111;color:#fff;padding:12px 18px;border-radius:10px;box-shadow:0 12px 30px rgba(0,0,0,.25);font-weight:700}
.copy-record-link.copy-success{background:#d4ff50!important;color:#111!important}
.save-before-output.saving-output{opacity:.7;pointer-events:none}
.quote-preview-standalone,.quote-preview-standalone *{font-family:'Times New Roman',Times,serif!important}
.preview-toolbar .active-view{background:#111;color:#fff}
.q-items th,.q-items td{text-align:center;vertical-align:middle}
.q-items td:nth-child(3){text-align:left;vertical-align:top}
.q-items .amount-words-row td,.q-items .quote-note-row td{text-align:left!important;padding:10px 12px}
.q-items .amount-words-row td{font-style:italic}
.q-items .quote-note-row td{height:44px}
.q-items .compact-total-row th{background:#e8f0f5;color:#111}
@media print{.preview-toolbar{display:none!important}.amount-words-row,.quote-note-row{break-inside:avoid}}

/* V11.29 – File Giá/Hình ảnh NCC */
.attachment-file-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.attachment-file-actions b{flex:1;min-width:220px}.attachment-selection-status{display:block;margin-top:8px;font-weight:800;color:#0f766e}.attachment-dropzone:focus{outline:3px solid rgba(204,255,73,.55)}

/* V11.31 – workspace tập trung và các trường mới */
.record-last-save{font-size:12px;color:#5f6f7c;font-weight:650;min-height:16px}
.col-brand,.brand-col{width:170px}.brand-cell{min-width:160px}.brand-cell input{width:100%}
.record-focus-mode .accordion{margin-left:278px;transition:margin .2s ease}
.record-focus-mode.queue-collapsed .accordion{margin-left:0}
.record-focus-mode .accordion>.record.record-waiting{display:none!important}
.record-focus-mode .accordion>.record:not(.record-waiting){margin-top:8px}
.record-work-queue{position:fixed;left:10px;top:96px;bottom:18px;width:252px;z-index:250;background:#fff;border:1px solid #cddbe5;border-radius:14px;box-shadow:0 14px 38px rgba(19,54,78,.18);overflow:hidden;display:flex;flex-direction:column}
.record-work-queue[hidden]{display:none!important}
.record-work-queue-head{display:flex;align-items:center;justify-content:space-between;padding:13px 14px;background:#123f63;color:#fff}
.record-work-queue-head button{background:transparent;padding:2px 7px;font-size:20px}
.record-work-queue-list{padding:9px;overflow:auto;display:grid;gap:7px}
.queue-record{display:block;width:100%;text-align:left;background:#f4f8fb;color:#123f63;border:1px solid #d7e4ec;padding:9px 10px;border-radius:9px;font-size:12px;line-height:1.35;font-weight:700}
.queue-record:hover{background:#e7f2f9}
.queue-reopen{position:fixed;left:7px;top:104px;z-index:251;border-radius:0 10px 10px 0;padding:10px 12px;box-shadow:0 8px 20px rgba(0,0,0,.18)}
.customer-basic-grid{grid-template-columns:repeat(3,minmax(220px,1fr))}
@media(max-width:1100px){.record-focus-mode .accordion{margin-left:0}.record-work-queue{width:min(320px,90vw);top:82px}.customer-basic-grid{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.customer-basic-grid{grid-template-columns:1fr}}
.hsmt-global-search{display:grid;grid-template-columns:minmax(360px,1fr) minmax(280px,.7fr);gap:14px;align-items:end}
.hsmt-global-search label{display:grid;gap:7px}.hsmt-global-search label>div{display:flex;gap:8px}.hsmt-global-search input{flex:1;padding:12px 14px;border:1px solid #b8ccdc;border-radius:10px;font-size:16px}
.hsmt-search-result{display:grid;gap:3px;padding:11px 13px;border:1px solid #9bd2b1;border-radius:10px;background:#effaf3;text-decoration:none;color:#123f63}.hsmt-search-result span{font-size:13px;color:#526b7c}
@media(max-width:800px){.hsmt-global-search{grid-template-columns:1fr}.hsmt-global-search label>div{flex-direction:column}}

/* V11.32 – trạng thái sẵn sàng, tổng cộng nhanh và danh sách chờ ổn định */
.ready-quote-flag{display:grid;place-items:center;align-content:center;gap:4px;min-width:132px;padding:8px 10px;border:1px solid #cbd9e3;border-radius:12px;background:#f7fafc;font-weight:800;text-align:center}
.ready-quote-flag input{width:20px;height:20px;accent-color:#178a4a}
.ready-quote-flag:has(input:checked){background:#e8f8ee;border-color:#78c997;color:#106b39}
.ready-quote-flag small{font-size:10px;color:#617789}
.grand-total-top th{background:#fff5c7!important;color:#132f43!important;border-top:2px solid #e2be35!important;border-bottom:2px solid #e2be35!important;font-size:13px;position:sticky;top:52px;z-index:3}
.grand-total-top .sum-buy,.grand-total-top .sum-sell{font-size:15px;color:#102f47!important}
.queue-empty{display:block;padding:14px;color:#607789;text-align:center}
.record-work-queue-list .queue-record::before{content:'⏱ ';color:#d98400}
@media(max-width:1200px){.ready-quote-flag{min-width:112px}.grand-total-top th{top:48px}}

/* V11.33 - Tổng cộng nhanh đồng bộ với hàng tổng cuối */
.grand-total-top th{background:#123f63!important;color:#fff!important;border-top:1px solid #123f63!important;border-bottom:1px solid #123f63!important;}
.grand-total-top .sum-buy,.grand-total-top .sum-sell{color:#fff!important;font-weight:800;}

/* V11.34 – compact assignment notice, balanced record header and queue urgency */
.assignment-alert-details{margin:12px 0;padding:0!important;border:1px solid #efc56f;border-radius:12px;background:#fff8df;overflow:hidden}
.assignment-alert-details>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;cursor:pointer;list-style:none}
.assignment-alert-details>summary::-webkit-details-marker{display:none}
.assignment-alert-details .assignment-alert-toggle{font-size:12px;font-weight:800;color:#7b5700;background:#fff;border:1px solid #e8cc8b;border-radius:999px;padding:4px 9px}
.assignment-alert-links{display:flex;gap:8px;flex-wrap:wrap;padding:0 14px 12px}
.assignment-alert-details:not([open]) .assignment-alert-links{display:none}
.record-summary{display:grid!important;grid-template-columns:minmax(360px,1.7fr) minmax(175px,.55fr) minmax(210px,.7fr) minmax(540px,1.55fr);align-items:stretch!important;gap:12px!important}
.record-summary>.summary-main,.record-summary>.record-mini-status,.record-summary>.assignment-summary,.record-summary>.summary-stats{min-width:0;height:100%}
.summary-stats{display:grid!important;grid-template-columns:minmax(95px,.8fr) minmax(170px,1.35fr) minmax(105px,.9fr) minmax(92px,.75fr) minmax(72px,.6fr) minmax(72px,.6fr);gap:8px!important;align-items:stretch!important}
.summary-stats>div,.summary-stats>label,.summary-stats>.summary-delete-btn{height:100%;min-height:82px!important;margin:0!important;align-self:stretch!important}
.summary-delete-btn{display:flex!important;align-items:center;justify-content:center;min-width:72px!important;padding:8px 10px!important}
.record-lock-switch{min-width:72px!important}
.queue-record{position:relative;overflow:hidden;display:grid!important;gap:5px!important}
.queue-record .queue-title{display:block}
.queue-record .queue-remain{display:block;font-size:11px;font-weight:900;padding:4px 7px;border-radius:999px;width:max-content;max-width:100%}
.queue-record.queue-safe{border-left:5px solid #1f9d61;background:#effaf4}
.queue-record.queue-safe .queue-remain{background:#d6f4e2;color:#096b3b}
.queue-record.queue-warning,.queue-record.queue-urgent{border-left:5px solid #e5a100;background:#fff8dc;animation:queuePulse 1.6s ease-in-out infinite}
.queue-record.queue-warning .queue-remain,.queue-record.queue-urgent .queue-remain{background:#ffe8a3;color:#7b5200}
.queue-record.queue-expired{border-left:5px solid #d33;background:#fff0f0}
.queue-record.queue-expired .queue-remain{background:#ffdada;color:#9f1f1f}
@keyframes queuePulse{0%,100%{box-shadow:0 0 0 rgba(229,161,0,0)}50%{box-shadow:0 0 0 4px rgba(229,161,0,.15)}}
@media(max-width:1500px){.record-summary{grid-template-columns:minmax(330px,1.5fr) minmax(160px,.55fr) minmax(190px,.7fr) minmax(480px,1.45fr)}.summary-stats{grid-template-columns:90px 160px 100px 88px 68px 68px}}
@media(max-width:1180px){.record-summary{grid-template-columns:1fr 1fr}.summary-stats{grid-column:1/-1}.summary-stats>div,.summary-stats>label,.summary-stats>.summary-delete-btn{min-height:66px!important}}

/* V11.35 – professional queue, compact totals and balanced record header */
.step-price-table .current-quote-row td{
 background:#e8f0ff!important;
 color:#12365a!important;
 border-top:3px solid #446ea8!important;
 border-bottom:1px solid #b8c9df!important;
 font-weight:900!important;
}
.step-price-table .current-quote-row td:first-child{
 background:#d9e6fb!important;
 color:#0b3158!important;
}
.p1-note{display:none!important}

.record-work-queue{width:320px}
.record-work-queue-list{padding:10px;gap:9px}
.queue-record{
 grid-template-columns:28px minmax(0,1fr) auto!important;
 grid-template-areas:
  "idx code remain"
  "idx name remain";
 align-items:center;
 column-gap:9px!important;
 row-gap:2px!important;
 min-height:74px;
 padding:10px 11px!important;
 border-radius:12px!important;
}
.queue-record::before{display:none!important}
.queue-index{grid-area:idx;display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:#fff;color:#123f63;font-size:11px;font-weight:900;border:1px solid #cadbe7}
.queue-code{grid-area:code;font-size:12px;font-weight:900;color:#0d4f7d;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.queue-name{grid-area:name;font-size:12px;font-weight:700;color:#314f63;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.queue-record .queue-remain{grid-area:remain;margin:0!important;white-space:nowrap;align-self:center;font-size:11px!important;max-width:110px;overflow:hidden;text-overflow:ellipsis}
.queue-record.queue-warning,.queue-record.queue-urgent{animation:queuePulse 1.5s ease-in-out infinite}

.record-summary{
 display:grid!important;
 grid-template-columns:minmax(390px,2.3fr) minmax(185px,.8fr) minmax(220px,1fr) minmax(620px,2.6fr)!important;
 align-items:stretch!important;
 gap:12px!important;
 padding:14px 16px!important;
}
.summary-main,.record-mini-status,.record-assignment,.summary-stats{min-width:0}
.summary-stats{
 display:grid!important;
 grid-template-columns:98px 178px 110px 104px 82px 76px!important;
 align-items:stretch!important;
 gap:8px!important;
 flex-wrap:nowrap!important;
}
.summary-stats>div,.summary-stats>label,.summary-stats>button{min-width:0!important;width:100%!important;height:100%!important;margin:0!important}
.summary-delete-btn{display:flex!important;align-items:center!important;justify-content:center!important;min-width:76px!important;background:#cf3737!important;color:#fff!important;border-radius:11px!important;overflow:visible!important;clip-path:none!important}
.record-lock-switch{min-width:76px!important}
.deadline-box{min-width:178px!important}
.ready-quote-flag,.sent-flag{padding:8px!important}

.compact-view .grand-total-row th,
.compact-view .grand-total-row td{padding:9px 10px!important;height:auto!important;min-height:0!important}
.compact-view .grand-total-row .grand-total-label{font-size:13px!important;text-align:right!important;white-space:nowrap}
.compact-view .grand-total-row .sum-buy,
.compact-view .grand-total-row .sum-sell{font-size:14px!important;white-space:nowrap}
.compact-view .grand-total-top{position:sticky;top:44px;z-index:3}

.ycbg-global-search{margin-top:12px}

@media(max-width:1550px){
 .record-summary{grid-template-columns:minmax(350px,1.8fr) minmax(170px,.75fr) minmax(200px,.9fr) minmax(560px,2.2fr)!important}
 .summary-stats{grid-template-columns:88px 160px 105px 98px 76px 70px!important}
}
@media(max-width:1250px){
 .record-summary{grid-template-columns:1fr 1fr!important}
 .summary-stats{grid-column:1/-1;grid-template-columns:repeat(6,minmax(90px,1fr))!important}
}
@media(max-width:800px){
 .record-work-queue{width:min(340px,94vw)}
 .record-summary{grid-template-columns:1fr!important}
 .summary-stats{grid-template-columns:repeat(2,1fr)!important}
}


/* V11.36 – clean record header, unified current quote row and compact totals */
.step-price-table .current-quote-row td,
.step-price-table .current-quote-row td:first-child{
  background:#dce9f8!important;
  color:#0d3558!important;
  border-top:3px solid #3f6f9f!important;
  border-bottom:1px solid #adc3d8!important;
  font-weight:900!important;
}
.compact-view .grand-total-row{display:none!important}
.record-summary{grid-template-columns:minmax(440px,1.8fr) minmax(190px,.72fr) minmax(560px,1.55fr)!important}
@media(max-width:1500px){.record-summary{grid-template-columns:minmax(390px,1.6fr) minmax(180px,.65fr) minmax(520px,1.45fr)!important}}
@media(max-width:1180px){.record-summary{grid-template-columns:1fr!important}}

/* V11.37 – final visual corrections: QI branding, notes, compact totals, header layout */
.dashboard-brand{display:flex!important;align-items:center!important;gap:12px!important;min-width:245px!important}
.dashboard-brand-logo{width:58px;height:58px;object-fit:contain;border-radius:10px;background:#000;flex:0 0 58px}
.dashboard-brand>span{display:grid;gap:2px}
.dashboard-brand>span>b{font-size:18px;line-height:1.05;color:#fff}
.dashboard-brand>span>small{font-size:10px;color:rgba(255,255,255,.78)}
.brand-mark{display:none!important}

/* Per-item HSMT notes are folded under the item requirement, not a separate wide column. */
.item-hsmt-note{margin-top:8px;border:1px solid #e0c66a;border-radius:8px;background:#fff9dc;overflow:hidden}
.item-hsmt-note>summary{cursor:pointer;padding:7px 9px;color:#5b4700;font-size:12px;font-weight:800;list-style:none}
.item-hsmt-note>summary::-webkit-details-marker{display:none}
.item-hsmt-note>summary:before{content:'▸';margin-right:6px}
.item-hsmt-note[open]>summary:before{content:'▾'}
.item-hsmt-note-body{padding:0 9px 9px}
.item-hsmt-note-body textarea{width:100%;min-height:72px;resize:vertical;border:1px solid #d7bd58;border-radius:7px;padding:8px;background:#fff}
.compact-view .item-hsmt-note{display:none!important}

/* Make the two quote-comparison rows unmistakably different. */
.step-price-table .step-proposal-row td{background:#f7fde9!important;color:#14210b!important;border-color:#cad9a5!important}
.step-price-table .current-quote-row td,
.step-price-table .current-quote-row td:first-child{background:#e5ddff!important;color:#26145f!important;border-top:3px solid #7658c9!important;border-bottom:1px solid #b9a8ed!important;font-weight:900!important}
.step-price-table .current-quote-row:hover td{background:#ddd2ff!important}

/* Compact mode must still retain both total rows and align them with the remaining columns. */
.compact-view .grand-total-row{display:table-row!important}
.compact-view .grand-total-row th,
.compact-view .grand-total-row td{display:table-cell!important;background:#123f63!important;color:#fff!important;border-color:#123f63!important;padding:9px 10px!important}
.compact-view .grand-total-row .grand-total-label{text-align:right!important;white-space:nowrap!important;font-size:13px!important}
.compact-view .grand-total-row .sum-buy,
.compact-view .grand-total-row .sum-sell{font-size:14px!important;font-weight:900!important;white-space:nowrap!important}

/* Compact but complete card header. Delete is never clipped. */
.record-summary{display:grid!important;grid-template-columns:minmax(390px,1.35fr) minmax(230px,.72fr) minmax(650px,1.65fr)!important;gap:12px!important;align-items:stretch!important;padding:14px 16px!important}
.record-summary>.summary-main,.record-summary>.assignment-summary,.record-summary>.summary-stats{min-width:0!important;height:100%!important}
.summary-stats{display:grid!important;grid-template-columns:96px minmax(175px,1.4fr) 112px 94px 76px 76px!important;gap:8px!important;align-items:stretch!important;width:100%!important}
.summary-stats>div,.summary-stats>label,.summary-stats>button{width:100%!important;min-width:0!important;min-height:82px!important;height:100%!important;margin:0!important;padding:8px!important;overflow:visible!important}
.summary-delete-btn{display:flex!important;align-items:center!important;justify-content:center!important;background:#cf3737!important;color:#fff!important;border-radius:11px!important;min-width:76px!important;width:100%!important;padding:8px!important;overflow:visible!important;white-space:nowrap!important;clip-path:none!important}
.summary-delete-btn:hover{background:#a92727!important}
@media(max-width:1500px){
 .record-summary{grid-template-columns:minmax(360px,1fr) minmax(230px,.65fr)!important}
 .record-summary>.summary-stats{grid-column:1/-1!important}
 .summary-stats{grid-template-columns:96px minmax(190px,1.4fr) 118px 100px 82px 82px!important}
}
@media(max-width:900px){
 .record-summary{grid-template-columns:1fr!important}
 .record-summary>.summary-stats{grid-column:auto!important;grid-template-columns:repeat(2,minmax(110px,1fr))!important}
 .dashboard-brand-logo{width:48px;height:48px;flex-basis:48px}
}
.login-brand{display:flex;align-items:center;gap:14px;margin-bottom:18px}.login-brand img{width:72px;height:72px;object-fit:contain;border-radius:12px;background:#000}.login-brand h1{margin:0}


/* V11.37.1 – definitive quote-row and note-field correction */
.step-price-table tbody tr.current-quote-row > td{background:#d9ccff!important;color:#25135d!important;border-top:3px solid #6848c7!important;border-bottom:1px solid #a996e4!important;font-weight:900!important}
.step-price-table tbody tr.current-quote-row:hover > td{background:#d1c2ff!important}
.step-price-table tbody tr.step-proposal-row > td{background:#f7fde9!important;color:#14210b!important}
.hsmt-note-readonly{white-space:pre-wrap;line-height:1.45;color:#403400;background:#fffdf2;border:1px solid #e1ca75;border-radius:7px;padding:9px;max-height:220px;overflow:auto}
.sale-note-cell textarea{background:#fffdf8;border-color:#d7c8a8}

/* V12.4 HSMT cleanup and routing */
.hsmt-delete-tools{display:flex;gap:8px;align-items:end;flex-wrap:wrap}.hsmt-delete-tools label{min-width:170px}.hsmt-row-select-wrap{display:flex;align-items:center;gap:6px;padding:6px 8px;margin:3px 0;background:#fff3f3;border:1px solid #efcaca;border-radius:9px;font-weight:800}.hsmt-project-select{width:18px;height:18px}.hsmt-list .hsmt-row-select-wrap+a{margin-top:0}

/* V13.6.9.3: chủ đầu tư nổi bật và trạng thái xử lý dễ phân biệt */
.investor-name{display:block!important;font-size:15px!important;color:#23384a!important;margin-top:2px}
.investor-name strong,.investor-name b{font-weight:900!important;color:#111827!important}
.processing-status{display:inline-flex!important;align-items:center!important;width:max-content;max-width:100%;padding:5px 10px;border-radius:999px;font-size:12px;font-weight:900;line-height:1.2;margin-top:3px;border:1px solid transparent}
.processing-mine{background:#dff6e8!important;color:#116530!important;border-color:#8bd0a7!important}
.processing-other{background:#fff0d6!important;color:#8a4b00!important;border-color:#e9b55f!important}
.processing-none{background:#eef2f6!important;color:#6b7785!important;border-color:#d5dde5!important}

/* V13.6.9.4 - nhấn mạnh trạng thái người đang xử lý */
.processing-lock-title{display:block;margin-bottom:6px;font-weight:900;color:#1f2937}
.processing-lock-notice{display:inline-block;margin-left:8px;padding:7px 12px;border-radius:9px;font-weight:800;line-height:1.35}
.lock-other.processing-lock-notice{background:#fff4cc;color:#8a4b00;border:1px solid #efc55b}
.lock-owned.processing-lock-notice{background:#dcfce7;color:#166534;border:1px solid #86d7a5}
.processing-lock-notice strong{font-weight:950;text-transform:none}
.hsmt-lock-panel .processing-lock-notice{margin-left:0;margin-top:5px}
@media (max-width:760px){.processing-lock-notice{margin-left:0;margin-top:6px;display:block}}

/* V13.6.9.5 - làm nổi bật Chủ đầu tư */
.investor-name{
  display:inline-flex!important;
  align-items:center!important;
  gap:5px!important;
  width:max-content!important;
  max-width:100%!important;
  margin-top:5px!important;
  padding:5px 9px!important;
  border-radius:8px!important;
  background:#e8f4ff!important;
  border:1px solid #9ecbf3!important;
  color:#0b4f83!important;
  line-height:1.3!important;
}
.investor-name strong{
  color:#0b4f83!important;
  font-weight:900!important;
}
.investor-name b{
  color:#b42318!important;
  font-weight:950!important;
}
@media(max-width:760px){
  .investor-name{display:flex!important;width:100%!important;flex-wrap:wrap!important}
}


/* V13.7.0 – Dashboard HSMT đồng nhất và giữ hồ sơ đang mở */
.dashboard-budget-box,.hsmt-dashboard-price{display:flex;flex-direction:column;justify-content:center;gap:4px;padding:10px 13px;border:1px solid #cddfeb;border-radius:10px;background:#f3f9fd;min-width:170px}.dashboard-budget-box small,.hsmt-dashboard-price small{font-size:10px;font-weight:800;letter-spacing:.04em;color:#557184}.dashboard-budget-box b,.hsmt-dashboard-price b{font-size:16px;color:#0a5d93;white-space:nowrap}.hsmt-dashboard-list{display:flex;flex-direction:column;gap:10px;margin:14px 0}.hsmt-dashboard-card{position:relative;border:1px solid #cbdbe6;border-radius:13px;background:#fff;box-shadow:0 2px 8px #123f6310}.hsmt-dashboard-card.active{border:2px solid #207ebc;box-shadow:0 0 0 3px #dceffa}.hsmt-dashboard-open{display:grid;grid-template-columns:minmax(420px,1.7fr) minmax(190px,.55fr) minmax(235px,.65fr) 130px;gap:12px;align-items:stretch;padding:14px 46px 14px 16px;color:inherit;text-decoration:none}.hsmt-dashboard-main{display:flex;flex-direction:column;gap:5px;min-width:0}.hsmt-dashboard-main .project-name{font-size:19px;line-height:1.25}.hsmt-dashboard-price span{font-size:12px;color:#5f7280}.hsmt-expand-label{align-self:center;text-align:center;padding:9px 10px;border-radius:9px;background:#123f63;color:#fff;font-weight:800;font-size:12px}.hsmt-dashboard-card.active .hsmt-expand-label{background:#157347}.hsmt-dashboard-select{position:absolute;right:12px;top:10px;font-size:11px;color:#637887}.hsmt-content{margin-top:12px}.hsmt-content:empty{display:none}.hsmt-dashboard-card .processing-status{font-weight:800}.hsmt-dashboard-card .investor-name{padding:5px 8px;border-radius:7px;background:#eef7ff;color:#195e8f}.hsmt-dashboard-card .investor-name b{color:#9d2a2a}.hsmt-dashboard-card .deadline-box{min-width:0!important}.hsmt-page>.hsmt-content>.hsmt-summary{scroll-margin-top:16px}
@media(max-width:1180px){.hsmt-dashboard-open{grid-template-columns:1fr 1fr}.hsmt-dashboard-main{grid-column:1/-1}.hsmt-expand-label{align-self:stretch}}
@media(max-width:760px){.hsmt-dashboard-open{grid-template-columns:1fr;padding-right:16px}.hsmt-dashboard-main{grid-column:auto}.hsmt-dashboard-select{position:static;display:block;padding:0 16px 10px}.dashboard-budget-box,.hsmt-dashboard-price{min-width:0}}

/* V13.7.1 - Một HSMT làm việc, các hồ sơ còn lại đưa vào danh sách chờ */
.hsmt-active-work-header{display:grid;gap:12px;margin-bottom:14px}
.hsmt-active-title{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 16px;border:1px solid #bfd3ee;border-radius:14px;background:#f4f8ff}
.hsmt-active-title>div{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}
.hsmt-active-title span{font-size:12px;font-weight:900;letter-spacing:.06em;color:#1d4ed8}
.hsmt-active-title b{font-size:14px;color:#26354d}
.hsmt-current-only .hsmt-dashboard-card{border:2px solid #2563eb;box-shadow:0 8px 22px rgba(37,99,235,.12)}
.hsmt-waiting-panel{padding:0;overflow:hidden}
.hsmt-waiting-panel>summary{display:grid;grid-template-columns:auto auto 1fr;align-items:center;gap:10px;padding:13px 16px;cursor:pointer;background:#f8fafc;border-bottom:1px solid transparent;list-style:none}
.hsmt-waiting-panel[open]>summary{border-bottom-color:#dbe4ef}
.hsmt-waiting-panel>summary::-webkit-details-marker{display:none}
.hsmt-waiting-panel>summary span{font-weight:900;color:#26354d}
.hsmt-waiting-panel>summary b{padding:4px 9px;border-radius:999px;background:#e5edf8;color:#1f4f8f;font-size:12px}
.hsmt-waiting-panel>summary small{color:#64748b;text-align:right}
.hsmt-waiting-toolbar{padding:12px 14px 4px}
.hsmt-waiting-toolbar input{width:100%;max-width:620px}
.hsmt-waiting-list{padding:10px 14px 14px;max-height:520px;overflow:auto}
.hsmt-waiting-list .waiting-card{margin-bottom:9px}
.hsmt-waiting-list .waiting-card:last-child{margin-bottom:0}
@media(max-width:900px){.hsmt-active-title{align-items:flex-start;flex-direction:column}.hsmt-waiting-panel>summary{grid-template-columns:1fr auto}.hsmt-waiting-panel>summary small{grid-column:1/-1;text-align:left}}

/* V13.7.2 – Dashboard cân đối, trạng thái xử lý thu gọn và khóa thủ công */
.record-summary>.summary-main{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:5px!important}
.dashboard-inline-price{display:inline-flex;gap:6px;align-items:center;padding:5px 9px;border-radius:8px;background:#fff7dc;border:1px solid #e8c75d;color:#6f4b00;font-size:13px;font-weight:900}
.dashboard-inline-price strong,.dashboard-inline-price b{font-weight:950}.dashboard-inline-price b{color:#b42318}
.record-meta-line{display:flex;align-items:center;gap:8px;flex-wrap:wrap;width:100%}.record-meta-line .processing-status{margin-top:0}.meta-divider{color:#94a3b8;font-weight:900}.record-last-save{font-size:12px;color:#64748b;font-weight:700}
.summary-stats{grid-template-columns:96px minmax(175px,1.4fr) 112px 94px 76px!important}

.compact-processing-panel{padding:0!important;overflow:hidden;border:1px solid #d7e0e8!important;border-radius:12px!important;background:#fff!important}
.compact-processing-panel>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;cursor:pointer;list-style:none;background:#f8fafc;font-weight:900;color:#1f2937}
.compact-processing-panel>summary::-webkit-details-marker{display:none}.compact-processing-panel>summary:after{content:'Mở';font-size:11px;color:#64748b;margin-left:auto}.compact-processing-panel[open]>summary:after{content:'Thu gọn'}
.compact-processing-summary{display:inline-flex;align-items:center;padding:5px 9px;border-radius:999px;font-size:12px;font-weight:900;margin-left:8px}
.compact-processing-body{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:12px 14px;border-top:1px solid #e5e7eb}.compact-processing-body p{margin:0}.compact-processing-body .claim-lock,.compact-processing-body .claim-ycbg-edit-lock{display:flex;align-items:center;gap:7px;font-weight:900;white-space:nowrap}

.hsmt-dashboard-open{grid-template-columns:minmax(420px,1.7fr) minmax(220px,.65fr) minmax(230px,.65fr) minmax(145px,.42fr)!important;gap:10px!important;align-items:stretch!important}
.hsmt-card-box{border:1px solid #d5e1ea!important;border-radius:11px!important;background:#f8fbfd!important;padding:12px!important;min-height:112px!important;box-sizing:border-box!important}
.hsmt-dashboard-main.hsmt-card-box{background:#fff!important}.hsmt-dashboard-price.hsmt-card-box{justify-content:center!important}.deadline-box.hsmt-card-box{display:flex!important;flex-direction:column!important;justify-content:center!important}.hsmt-expand-label.hsmt-card-box{display:flex!important;align-items:center!important;justify-content:center!important;background:#123f63!important;color:#fff!important;text-align:center!important}.hsmt-dashboard-card.active .hsmt-expand-label{background:#157347!important}
.hsmt-dashboard-main .project-name{font-size:18px!important;line-height:1.28!important}.hsmt-dashboard-card .investor-name{width:100%!important;box-sizing:border-box!important}.hsmt-dashboard-card .record-meta-line{margin-top:auto}
@media(max-width:1180px){.hsmt-dashboard-open{grid-template-columns:1fr 1fr!important}.hsmt-dashboard-main{grid-column:1/-1!important}.hsmt-expand-label{align-self:stretch!important}}
@media(max-width:760px){.record-meta-line{align-items:flex-start}.meta-divider{display:none}.record-last-save{width:100%}.compact-processing-body{align-items:flex-start;flex-direction:column}.hsmt-dashboard-open{grid-template-columns:1fr!important}.hsmt-dashboard-main{grid-column:auto!important}.summary-stats{grid-template-columns:repeat(2,minmax(110px,1fr))!important}}

/* V13.7.3 – Tinh gọn Dashboard HSMT và BG Trực tuyến */
/* HSMT: khối đóng thầu lớn, nổi bật; nút mở hồ sơ nhỏ gọn */
.hsmt-dashboard-open{
  grid-template-columns:minmax(500px,1.9fr) minmax(210px,.62fr) minmax(285px,.82fr) minmax(112px,.30fr)!important;
  gap:10px!important;
  padding:12px 42px 12px 14px!important;
}
.hsmt-card-box{min-height:104px!important;padding:11px 13px!important}
.hsmt-dashboard-price{min-width:0!important}
.hsmt-dashboard-price b{font-size:18px!important;line-height:1.15!important}
.hsmt-dashboard-card .deadline-box.hsmt-card-box{
  min-height:104px!important;
  padding:13px 15px!important;
  border-width:2px!important;
  box-shadow:0 3px 10px rgba(20,96,62,.10)!important;
  align-items:flex-start!important;
  text-align:left!important;
}
.hsmt-dashboard-card .deadline-box small{font-size:11px!important;font-weight:900!important;letter-spacing:.04em!important}
.hsmt-dashboard-card .deadline-box b{font-size:20px!important;line-height:1.15!important;margin:3px 0 4px!important;white-space:nowrap!important}
.hsmt-dashboard-card .deadline-box span{font-size:12px!important;font-weight:800!important}
.hsmt-expand-label.hsmt-card-box{
  min-height:64px!important;
  height:64px!important;
  align-self:center!important;
  padding:7px 9px!important;
  border-radius:9px!important;
  font-size:11px!important;
  line-height:1.25!important;
  box-shadow:none!important;
}
.hsmt-dashboard-card.active .hsmt-expand-label.hsmt-card-box{
  background:#157347!important;
}

/* BG Trực tuyến: thu gọn thẻ và giữ trạng thái + lưu cuối trên đúng một hàng */
.record-summary{
  grid-template-columns:minmax(420px,1.42fr) minmax(245px,.72fr) minmax(590px,1.55fr)!important;
  gap:10px!important;
  padding:12px 14px!important;
  align-items:stretch!important;
}
.record-summary>.summary-main{gap:4px!important}
.record-summary .project-name{font-size:18px!important;line-height:1.22!important}
.record-summary .assignment-summary{padding:8px 10px!important;min-width:0!important}
.record-summary .summary-stats{gap:8px!important;grid-template-columns:86px minmax(170px,1.25fr) 104px 88px 70px!important}
.record-summary .summary-stats>div,
.record-summary .summary-stats>label,
.record-summary .summary-stats>.summary-delete-btn{min-height:64px!important;padding:8px!important;border-radius:9px!important}
.record-meta-line{
  display:flex!important;
  align-items:center!important;
  flex-wrap:nowrap!important;
  gap:7px!important;
  width:100%!important;
  min-width:0!important;
  white-space:nowrap!important;
}
.record-meta-line .processing-status,
.record-meta-line .record-last-save,
.record-meta-line .meta-divider{
  display:inline-flex!important;
  align-items:center!important;
  margin:0!important;
  width:auto!important;
  flex:0 0 auto!important;
  line-height:1.25!important;
}
.record-meta-line .processing-status{padding:4px 8px!important;font-size:12px!important}
.record-meta-line .record-last-save{font-size:12px!important;color:#475569!important;font-weight:800!important}
.record-meta-line .meta-divider{color:#94a3b8!important}

@media(max-width:1450px){
  .record-summary{grid-template-columns:minmax(360px,1.15fr) minmax(220px,.65fr)!important}
  .record-summary>.summary-stats{grid-column:1/-1!important}
  .hsmt-dashboard-open{grid-template-columns:minmax(420px,1.55fr) minmax(200px,.62fr) minmax(260px,.78fr) 105px!important}
}

/* TBMT local workspace embedded in the authenticated Dashboard */
.tbmt-host-page{max-width:none!important;padding:18px!important}
.tbmt-host-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:12px;padding:13px 16px;border:1px solid #cbdce6;border-radius:12px;background:#fff;box-shadow:0 3px 12px rgba(15,50,72,.06)}
.tbmt-host-head h1{margin:0 0 3px;font-size:21px}.tbmt-host-head p{margin:0;color:#617889;font-size:12px}
.tbmt-host-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.tbmt-host-actions .btn,.tbmt-host-actions button{min-height:36px;padding:8px 12px;font-size:12px}
.tbmt-local-state{display:inline-flex;align-items:center;gap:6px;border:1px solid #ccd9e1;border-radius:999px;padding:7px 10px;font-size:11px;font-weight:800;background:#f5f8fa;color:#506777}
.tbmt-local-state.online{border-color:#92d3b0;background:#ebfaf2;color:#147344}.tbmt-local-state.offline{border-color:#efb2ae;background:#fff0ef;color:#a62b24}.tbmt-local-state.checking{border-color:#e8cf84;background:#fff9df;color:#806100}
.tbmt-offline-help{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:12px;padding:11px 14px;border:1px solid #efc477;border-radius:10px;background:#fff8df;color:#664c10;font-size:12px}.tbmt-offline-help code{background:#fff;border:1px solid #ead8a8;border-radius:5px;padding:2px 5px}
.tbmt-frame-shell{height:calc(100vh - 150px);min-height:640px;border:1px solid #bfcfd9;border-radius:13px;overflow:hidden;background:#f4f7f9;box-shadow:0 4px 16px rgba(15,50,72,.08)}
.tbmt-frame-shell iframe{display:block;width:100%;height:100%;border:0;background:#fff}
@media(max-width:900px){.tbmt-host-page{padding:10px!important}.tbmt-host-head{align-items:flex-start;flex-direction:column}.tbmt-frame-shell{height:calc(100vh - 205px);min-height:540px}}

/* Modern local typography: kiểu geometric sạch gần neet.no, không tải font ngoài */
:root,
body,input,select,textarea,button,table{
  font-family:"Segoe UI Variable Text","Segoe UI",system-ui,-apple-system,BlinkMacSystemFont,Arial,sans-serif!important;
}
.dashboard-brand b,.dashboard-nav-item b,.pagehead h1,.project-name,.customer-basic-details>summary,.auction-section>summary{
  font-family:"Segoe UI Variable Display","Segoe UI Variable Text","Segoe UI",system-ui,sans-serif!important;
}
@media(max-width:980px){
  .hsmt-dashboard-open{grid-template-columns:1fr 1fr!important;padding-right:14px!important}
  .hsmt-dashboard-main{grid-column:1/-1!important}
  .hsmt-expand-label.hsmt-card-box{height:auto!important;min-height:54px!important}
  .record-summary{grid-template-columns:1fr!important}
  .record-summary>.summary-stats{grid-column:auto!important}
}
@media(max-width:760px){
  .record-meta-line{flex-wrap:wrap!important;white-space:normal!important}
  .record-meta-line .meta-divider{display:none!important}
  .record-meta-line .record-last-save{width:100%!important}
  .hsmt-dashboard-open{grid-template-columns:1fr!important}
}


/* V13.7.4 - cố định trạng thái xử lý và Lưu cuối trên đúng một hàng */
.record-meta-line{
  display:block!important;
  width:100%!important;
  min-width:0!important;
  margin:4px 0 2px!important;
  text-align:left!important;
}
.record-meta-line>.processing-status{
  display:inline-flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:flex-start!important;
  flex-wrap:nowrap!important;
  width:auto!important;
  max-width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:5px 9px!important;
  line-height:1.25!important;
  white-space:nowrap!important;
  writing-mode:horizontal-tb!important;
  text-orientation:mixed!important;
  vertical-align:middle!important;
}
.record-meta-line .processing-status-text,
.record-meta-line .record-meta-separator,
.record-meta-line .record-last-save{
  display:inline!important;
  width:auto!important;
  height:auto!important;
  margin:0!important;
  padding:0!important;
  position:static!important;
  float:none!important;
  transform:none!important;
  writing-mode:horizontal-tb!important;
  text-orientation:mixed!important;
  white-space:nowrap!important;
  line-height:1.25!important;
}
.record-meta-line .record-meta-separator{
  margin:0 7px!important;
  color:#64748b!important;
  font-weight:900!important;
}
.record-meta-line .record-last-save{
  color:inherit!important;
  font-size:12px!important;
  font-weight:800!important;
}
@media(max-width:760px){
  .record-meta-line>.processing-status{
    flex-wrap:wrap!important;
    white-space:normal!important;
  }
  .record-meta-line .record-meta-separator{
    display:none!important;
  }
  .record-meta-line .record-last-save{
    display:block!important;
    width:100%!important;
    margin-top:3px!important;
  }
}


/* V13.7.5 - Dashboard BG Trực tuyến gọn, đủ thông tin trên một hàng */
.code-admin-edit,.code-with-copy{display:flex!important;align-items:center!important;gap:6px!important;width:100%!important;max-width:100%!important}
.code-admin-edit .record-code-input{flex:0 1 245px!important;min-width:145px!important}
.copy-record-inline{display:inline-flex!important;align-items:center!important;justify-content:center!important;padding:5px 9px!important;min-height:28px!important;border-radius:8px!important;background:#eaf4ff!important;border:1px solid #9cc8ee!important;color:#084f83!important;font-size:11px!important;font-weight:900!important;white-space:nowrap!important}
.copy-record-inline.copy-success{background:#dcfce7!important;border-color:#86d4a0!important;color:#116530!important}
.record-copy-under-title{display:none!important}
.record-summary{grid-template-columns:minmax(390px,1.38fr) minmax(185px,.52fr) minmax(560px,1.48fr)!important;gap:9px!important;padding:10px 12px!important;align-items:stretch!important}
.record-summary>.summary-main{gap:3px!important;padding:0!important}
.record-summary .project-name{font-size:17px!important;line-height:1.2!important}
.dashboard-inline-price{padding:4px 8px!important;font-size:12px!important}
.investor-name{font-size:14px!important;margin-top:1px!important}
.assignment-summary{display:block!important;min-width:0!important;height:auto!important;padding:0!important;border:1px solid #d9e3ea!important;border-radius:10px!important;background:#fffdf4!important;overflow:hidden!important}
.assignment-summary-toggle{display:grid!important;grid-template-columns:auto 1fr auto!important;align-items:center!important;gap:7px!important;width:100%!important;min-height:42px!important;padding:7px 9px!important;border:0!important;border-radius:0!important;background:#fffaf0!important;color:#1f2937!important;text-align:left!important}
.assignment-summary-toggle span{font-size:11px!important;font-weight:900!important;text-transform:uppercase!important;color:#7c5a16!important}
.assignment-summary-toggle b{overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;font-size:12px!important}
.assignment-summary-toggle i{font-style:normal!important;font-size:13px!important}
.assignment-summary-body{display:grid!important;gap:5px!important;padding:8px 9px!important;border-top:1px solid #eadfbf!important}
.assignment-summary.assignment-collapsed .assignment-summary-body{display:none!important}
.assignment-summary label{font-size:11px!important}.assignment-summary select{width:100%!important;max-width:none!important;padding:5px 7px!important}.assignment-summary .save-assignment{padding:5px 8px!important}
.summary-stats{display:grid!important;grid-template-columns:78px minmax(165px,1.15fr) minmax(150px,.95fr) 62px 62px!important;gap:7px!important;align-items:stretch!important;width:100%!important}
.summary-stats>div,.summary-stats>label,.summary-stats>button{min-height:58px!important;height:100%!important;padding:6px!important;border-radius:9px!important}
.summary-stats .deadline-box b{font-size:14px!important}.summary-stats .deadline-box span{font-size:10px!important}
.quote-state-box{display:grid!important;grid-template-rows:auto 1fr 1fr!important;gap:3px!important;align-content:center!important;background:#f4f8fb!important;border:1px solid #cddce8!important;color:#17384f!important}
.quote-state-box>small{font-size:9px!important;text-align:center!important;text-transform:uppercase!important;color:#687b8a!important;font-weight:900!important}
.quote-state-box label{display:flex!important;align-items:center!important;gap:5px!important;min-height:0!important;height:auto!important;padding:0 3px!important;border:0!important;background:transparent!important;font-size:10px!important;font-weight:850!important;white-space:nowrap!important}
.quote-state-box input{width:15px!important;height:15px!important;flex:0 0 auto!important;margin:0!important}
.record-lock-switch,.summary-delete-btn{min-width:0!important;width:auto!important}
.record-lock-switch{padding:5px!important}.record-lock-switch small{font-size:9px!important}.summary-delete-btn{font-size:10px!important}
.record-meta-line{margin-top:2px!important}
@media(max-width:1450px){
 .record-summary{grid-template-columns:minmax(350px,1.2fr) minmax(170px,.5fr)!important}
 .record-summary>.summary-stats{grid-column:1/-1!important}
}
@media(max-width:820px){
 .record-summary{grid-template-columns:1fr!important}
 .record-summary>.summary-stats{grid-column:auto!important;grid-template-columns:1fr 1fr!important}
 .quote-state-box{min-height:72px!important}
}


/* V13.7.6 - Dashboard BG trực tuyến cân đối, rõ nét, không tràn chữ */
.record-summary{
  display:grid!important;
  grid-template-columns:minmax(430px,1.55fr) minmax(190px,.58fr) minmax(610px,1.67fr)!important;
  gap:12px!important;
  padding:12px 14px!important;
  align-items:stretch!important;
  border-radius:16px!important;
}
.record-summary>.summary-main,
.record-summary>.assignment-summary,
.record-summary>.summary-stats{min-width:0!important}
.record-summary>.summary-main{display:flex!important;flex-direction:column!important;justify-content:flex-start!important;gap:5px!important}
.code-admin-edit,.code-with-copy{gap:7px!important;flex-wrap:nowrap!important}
.code-admin-edit .record-code-input{height:32px!important;font-size:14px!important;font-weight:900!important;border-radius:9px!important}
.code-admin-edit .save-record-code,.copy-record-inline{height:32px!important;min-height:32px!important;padding:0 10px!important;border-radius:9px!important;font-size:11px!important}
.record-summary .project-name{font-size:18px!important;line-height:1.28!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important}
.investor-name,.dashboard-inline-price{max-width:100%!important;width:max-content!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
.record-meta-line>.processing-status{max-width:100%!important;overflow:hidden!important;text-overflow:ellipsis!important}
.record-meta-line .processing-status-text,.record-meta-line .record-last-save{overflow:hidden!important;text-overflow:ellipsis!important}
.assignment-summary{border-radius:12px!important;border:1px solid #d7e0e8!important;background:#fffdf5!important;box-shadow:0 1px 2px rgba(15,23,42,.05)!important;height:100%!important}
.assignment-summary-toggle{min-height:50px!important;padding:10px 12px!important;border-radius:12px!important;cursor:pointer!important;background:#fffaf0!important}
.assignment-summary-toggle:hover{background:#fff3d8!important}
.assignment-summary-toggle span{font-size:12px!important;letter-spacing:.2px!important}
.assignment-summary-toggle b{font-size:13px!important;min-width:0!important}
.assignment-summary-toggle i{font-size:15px!important;color:#7c5a16!important}
.assignment-summary-body{padding:10px 12px!important;gap:7px!important}
.assignment-summary select{font-size:13px!important;height:34px!important;border-radius:8px!important}
.assignment-summary .save-assignment{height:32px!important;border-radius:8px!important;font-size:12px!important;font-weight:900!important}
.summary-stats{grid-template-columns:92px minmax(210px,1.45fr) minmax(178px,1.05fr) 78px 78px!important;gap:9px!important}
.summary-stats>div,.summary-stats>label,.summary-stats>button{min-height:76px!important;height:76px!important;padding:8px 9px!important;border-radius:12px!important;box-sizing:border-box!important;overflow:hidden!important}
.summary-stats>div{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;text-align:center!important}
.summary-stats small{font-size:10px!important;line-height:1.2!important;letter-spacing:.2px!important}
.summary-stats b{font-size:18px!important;line-height:1.15!important}
.summary-stats .deadline-box b{font-size:16px!important;white-space:nowrap!important}
.summary-stats .deadline-box span{font-size:10px!important;white-space:nowrap!important}
.quote-state-box{display:grid!important;grid-template-rows:auto auto auto!important;align-content:center!important;justify-items:stretch!important;gap:7px!important;padding:8px 10px!important}
.quote-state-box>small{font-size:10px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.quote-state-box label{width:100%!important;min-width:0!important;display:flex!important;align-items:center!important;gap:7px!important;font-size:11px!important;line-height:1.2!important;white-space:nowrap!important;overflow:hidden!important}
.quote-state-box label span{overflow:hidden!important;text-overflow:ellipsis!important}
.quote-state-box input{width:16px!important;height:16px!important}
.record-lock-switch{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:7px!important}
.record-lock-switch .switch-track{margin:0!important}
.record-lock-switch small{font-size:11px!important;font-weight:900!important}
.summary-delete-btn{font-size:11px!important;font-weight:900!important;border-radius:12px!important}
@media(max-width:1500px){
 .record-summary{grid-template-columns:minmax(390px,1.35fr) minmax(185px,.55fr)!important}
 .record-summary>.summary-stats{grid-column:1/-1!important}
 .summary-stats{grid-template-columns:100px minmax(230px,1.5fr) minmax(210px,1.1fr) 86px 86px!important}
}
@media(max-width:900px){
 .record-summary{grid-template-columns:1fr!important}
 .record-summary>.summary-stats{grid-column:auto!important;grid-template-columns:1fr 1fr!important}
 .summary-stats>div,.summary-stats>label,.summary-stats>button{height:auto!important;min-height:72px!important}
}

/* V13.7.7 - Khung dashboard đồng chiều cao, giao việc mở dạng dropdown, dùng thời điểm bắt đầu */
.record-summary{
  grid-template-columns:minmax(480px,1.72fr) minmax(210px,.58fr) minmax(560px,1.48fr)!important;
  gap:10px!important;
  align-items:stretch!important;
  overflow:visible!important;
}
.record-summary>.summary-main,
.record-summary>.assignment-summary,
.record-summary>.summary-stats{height:84px!important;min-height:84px!important;box-sizing:border-box!important}
.record-summary>.summary-main{height:auto!important;min-height:84px!important}
.assignment-summary{
  position:relative!important;
  overflow:visible!important;
  z-index:15!important;
  border-radius:12px!important;
  height:84px!important;
  min-height:84px!important;
}
.assignment-summary-toggle{
  height:82px!important;
  min-height:82px!important;
  padding:12px 13px!important;
  border-radius:12px!important;
  grid-template-columns:auto minmax(0,1fr) auto!important;
}
.assignment-summary-toggle span{font-size:12px!important}
.assignment-summary-toggle b{font-size:14px!important;line-height:1.2!important}
.assignment-summary-body{
  position:absolute!important;
  z-index:999!important;
  top:calc(100% + 7px)!important;
  left:0!important;
  right:0!important;
  min-width:250px!important;
  padding:11px!important;
  border:1px solid #d7e0e8!important;
  border-radius:12px!important;
  background:#fffdf5!important;
  box-shadow:0 14px 32px rgba(15,23,42,.18)!important;
}
.assignment-summary.assignment-collapsed .assignment-summary-body{display:none!important}
.assignment-summary.assignment-expanded .assignment-summary-body{display:grid!important}
.assignment-summary-body select{width:100%!important;max-width:none!important;height:38px!important;font-size:14px!important}
.assignment-summary-body .save-assignment{height:36px!important;font-size:13px!important}
.summary-stats{
  grid-template-columns:88px minmax(190px,1.35fr) minmax(168px,1.12fr) 76px 76px!important;
  gap:8px!important;
  height:84px!important;
  min-height:84px!important;
}
.summary-stats>div,.summary-stats>label,.summary-stats>button{
  height:84px!important;
  min-height:84px!important;
  border-radius:12px!important;
  padding:8px!important;
  box-sizing:border-box!important;
}
.priced-items-box small{font-size:10px!important;line-height:1.18!important}
.priced-items-box b{font-size:20px!important}
.quote-start-box{
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  align-items:center!important;
  text-align:center!important;
  background:#fff7dc!important;
  border:1px solid #e8c75d!important;
  color:#573d00!important;
}
.quote-start-box small{
  font-size:10px!important;
  line-height:1.15!important;
  font-weight:900!important;
  text-transform:uppercase!important;
  white-space:normal!important;
}
.quote-start-box b{
  margin-top:5px!important;
  font-size:15px!important;
  line-height:1.2!important;
  white-space:nowrap!important;
  color:#111827!important;
}
.quote-state-box{padding:8px!important;gap:6px!important}
.quote-state-box>small{font-size:9px!important}
.quote-state-box label{font-size:10px!important;gap:5px!important}
.record-lock-switch,.summary-delete-btn{height:84px!important;min-height:84px!important}
@media(max-width:1550px){
  .record-summary{grid-template-columns:minmax(410px,1.35fr) minmax(210px,.58fr)!important}
  .record-summary>.summary-stats{grid-column:1/-1!important}
}
@media(max-width:900px){
  .record-summary{grid-template-columns:1fr!important}
  .record-summary>.assignment-summary,.record-summary>.summary-stats{height:auto!important;min-height:84px!important}
  .record-summary>.summary-stats{grid-column:auto!important;grid-template-columns:1fr 1fr!important}
}


/* V13.7.8 - Dashboard BG Trực tuyến cân đối, rõ nét và giao việc hoạt động ổn định */
.record-summary{
  grid-template-columns:minmax(520px,1.65fr) 250px 86px 278px 178px 88px 76px!important;
  gap:9px!important;
  min-height:132px!important;
  padding:10px 12px!important;
  align-items:stretch!important;
}
.record-summary>.summary-main{
  min-width:0!important;
  padding:0 4px!important;
}
.record-summary>.assignment-summary,
.record-summary>.summary-stats{
  height:100%!important;
  min-height:112px!important;
}
.record-summary>.summary-stats{
  display:contents!important;
}
.assignment-summary{
  position:relative!important;
  min-width:0!important;
  height:100%!important;
  min-height:112px!important;
  padding:0!important;
  border:1px solid #d6e0e8!important;
  border-radius:13px!important;
  background:#fffdf5!important;
  box-shadow:0 2px 7px rgba(15,23,42,.05)!important;
  overflow:visible!important;
}
.assignment-trigger-v1378{
  width:100%!important;
  height:100%!important;
  min-height:112px!important;
  display:grid!important;
  grid-template-columns:auto 1fr auto!important;
  align-content:center!important;
  align-items:center!important;
  gap:7px!important;
  padding:12px 13px!important;
  border:0!important;
  border-radius:13px!important;
  background:linear-gradient(180deg,#fffdf7,#fff9e9)!important;
  color:#5d3d00!important;
  cursor:pointer!important;
  text-align:left!important;
  font-size:13px!important;
  line-height:1.25!important;
}
.assignment-trigger-v1378 span{
  font-size:12px!important;
  font-weight:950!important;
  text-transform:uppercase!important;
  white-space:nowrap!important;
}
.assignment-trigger-v1378 b{
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  color:#18212b!important;
  font-size:13px!important;
}
.assignment-trigger-v1378 i{font-style:normal!important;font-size:14px!important}
.assignment-summary-body{display:none!important}
.assignment-summary.assignment-open-v1378 .assignment-summary-body{
  display:grid!important;
  position:absolute!important;
  z-index:1000!important;
  top:calc(100% + 6px)!important;
  left:0!important;
  right:0!important;
  min-width:280px!important;
  padding:12px!important;
  gap:8px!important;
  background:#fff!important;
  border:1px solid #cbd7e1!important;
  border-radius:12px!important;
  box-shadow:0 14px 32px rgba(15,23,42,.18)!important;
}
.assignment-summary.assignment-open-v1378 .assignment-summary-body label{
  display:grid!important;
  gap:5px!important;
  font-size:12px!important;
  font-weight:850!important;
}
.assignment-summary.assignment-open-v1378 .assignment-summary-body select{
  width:100%!important;
  max-width:none!important;
  height:40px!important;
  font-size:14px!important;
}
.assignment-summary.assignment-open-v1378 .save-assignment{
  height:38px!important;
  font-size:13px!important;
}
.priced-items-box,.quote-start-box,.quote-state-box,.record-lock-switch,.summary-delete-btn{
  min-height:112px!important;
  height:100%!important;
  margin:0!important;
  border-radius:13px!important;
  box-sizing:border-box!important;
  box-shadow:0 2px 7px rgba(15,23,42,.04)!important;
}
.priced-items-box{
  width:auto!important;
  padding:10px 7px!important;
}
.priced-items-box small{font-size:10px!important;line-height:1.25!important}
.priced-items-box b{font-size:19px!important}
.quote-start-box{
  width:auto!important;
  padding:10px 12px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:4px!important;
}
.quote-start-box small{
  font-size:10px!important;
  line-height:1.2!important;
  white-space:normal!important;
  text-align:center!important;
}
.quote-start-box b{
  font-size:16px!important;
  line-height:1.2!important;
  white-space:nowrap!important;
}
.quote-start-box em{
  display:block!important;
  font-size:11px!important;
  line-height:1.2!important;
  color:#765100!important;
  font-style:normal!important;
  font-weight:850!important;
  white-space:nowrap!important;
}
.quote-state-box{
  width:auto!important;
  padding:10px 12px!important;
  display:grid!important;
  grid-template-rows:auto 1fr 1fr!important;
  gap:7px!important;
  align-content:center!important;
}
.quote-state-box>small{
  font-size:10px!important;
  white-space:nowrap!important;
  overflow:visible!important;
  text-align:center!important;
}
.quote-state-box label{
  display:flex!important;
  align-items:center!important;
  gap:7px!important;
  width:100%!important;
  min-width:0!important;
  font-size:12px!important;
  line-height:1.2!important;
  white-space:normal!important;
  overflow:visible!important;
}
.quote-state-box label span{
  overflow:visible!important;
  text-overflow:clip!important;
  white-space:normal!important;
}
.quote-state-box input{width:17px!important;height:17px!important;flex:0 0 auto!important}
.record-lock-switch,.summary-delete-btn{
  width:auto!important;
  min-width:0!important;
  padding:9px 7px!important;
}
@media(max-width:1550px){
  .record-summary{
    grid-template-columns:minmax(450px,1.5fr) 230px 82px 245px 168px 84px 72px!important;
  }
}
@media(max-width:1320px){
  .record-summary{
    grid-template-columns:minmax(420px,1.45fr) 220px 82px 230px 165px 82px 72px!important;
    gap:7px!important;
  }
  .quote-start-box b{font-size:14px!important}
}
@media(max-width:1120px){
  .record-summary{
    grid-template-columns:1fr 220px 82px 230px!important;
  }
  .quote-state-box,.record-lock-switch,.summary-delete-btn{grid-row:2!important}
  .quote-state-box{grid-column:2!important}
  .record-lock-switch{grid-column:3!important}
  .summary-delete-btn{grid-column:4!important}
}


/* V13.7.9 - Giao việc cùng hàng trạng thái; các khung con đồng đều */
.record-summary{
  grid-template-columns:minmax(600px,1.75fr) 92px 300px 210px 90px 78px!important;
  gap:9px!important;
  min-height:132px!important;
  padding:10px 12px!important;
  align-items:stretch!important;
}
.record-summary>.summary-main{
  min-width:0!important;
  height:100%!important;
}
.record-summary>.summary-stats{display:contents!important}
.record-meta-line{
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  flex-wrap:nowrap!important;
  gap:7px!important;
  margin-top:5px!important;
  overflow:visible!important;
}
.record-meta-line>.processing-status{
  flex:0 1 auto!important;
  min-width:0!important;
}
.assignment-summary.assignment-inline{
  position:relative!important;
  display:inline-flex!important;
  flex:0 0 auto!important;
  width:auto!important;
  height:auto!important;
  min-height:0!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
}
.assignment-trigger-inline{
  display:inline-grid!important;
  grid-template-columns:auto minmax(45px,110px) auto!important;
  width:auto!important;
  height:30px!important;
  min-height:30px!important;
  padding:4px 9px!important;
  border:1px solid #e5c77a!important;
  border-radius:999px!important;
  background:#fff8df!important;
  box-shadow:none!important;
  font-size:11px!important;
  line-height:1!important;
}
.assignment-trigger-inline span{
  font-size:11px!important;
  text-transform:none!important;
}
.assignment-trigger-inline b{
  font-size:11px!important;
  max-width:110px!important;
}
.assignment-summary.assignment-open-v1378 .assignment-summary-body{
  top:calc(100% + 6px)!important;
  left:0!important;
  right:auto!important;
  width:300px!important;
  min-width:300px!important;
}
.priced-items-box,.quote-start-box,.quote-state-box,.record-lock-switch,.summary-delete-btn{
  min-height:112px!important;
  height:112px!important;
  border-radius:13px!important;
  box-sizing:border-box!important;
  margin:0!important;
}
.quote-time-range{
  width:auto!important;
  padding:9px 13px!important;
  display:grid!important;
  grid-template-rows:auto auto auto auto!important;
  align-content:center!important;
  gap:4px!important;
}
.quote-time-range>small{
  font-size:10px!important;
  font-weight:900!important;
  text-transform:uppercase!important;
  text-align:center!important;
}
.quote-time-row{
  display:grid!important;
  grid-template-columns:58px 1fr!important;
  align-items:center!important;
  gap:8px!important;
  width:100%!important;
}
.quote-time-row span{
  font-size:11px!important;
  color:#64748b!important;
  font-weight:800!important;
  text-align:left!important;
}
.quote-time-row b{
  font-size:13px!important;
  line-height:1.15!important;
  text-align:right!important;
  white-space:nowrap!important;
}
.quote-time-range em{
  margin-top:2px!important;
  padding-top:4px!important;
  border-top:1px dashed #d8b957!important;
  font-size:11px!important;
  font-weight:900!important;
  text-align:center!important;
  color:#8a5200!important;
  white-space:nowrap!important;
}
.quote-state-box{
  width:auto!important;
  padding:10px 13px!important;
}
.quote-state-box label{
  font-size:12px!important;
  white-space:nowrap!important;
}
@media(max-width:1500px){
  .record-summary{
    grid-template-columns:minmax(500px,1.55fr) 88px 275px 195px 86px 74px!important;
  }
}
@media(max-width:1220px){
  .record-summary{
    grid-template-columns:minmax(460px,1.45fr) 88px 265px 190px!important;
  }
  .record-lock-switch,.summary-delete-btn{grid-row:2!important}
  .record-lock-switch{grid-column:3!important}
  .summary-delete-btn{grid-column:4!important}
}
@media(max-width:850px){
  .record-meta-line{flex-wrap:wrap!important}
  .assignment-summary.assignment-inline{width:auto!important}
  .record-summary{grid-template-columns:1fr!important}
  .record-summary>.summary-stats{display:grid!important;grid-template-columns:1fr 1fr!important}
}


/* V13.7.10 - Nội dung khung thời gian theo trạng thái thực tế */
.quote-time-range{
  display:grid!important;
  grid-template-rows:auto auto auto auto auto auto!important;
  align-content:center!important;
  justify-items:center!important;
  gap:2px!important;
  min-height:126px!important;
  height:126px!important;
  padding:8px 12px!important;
  border-radius:13px!important;
}
.quote-time-range>small{
  font-size:10px!important;
  line-height:1.15!important;
  font-weight:950!important;
  text-transform:uppercase!important;
  letter-spacing:.15px!important;
  color:#52657a!important;
  text-align:center!important;
}
.quote-main-time,.quote-end-time{
  font-size:15px!important;
  line-height:1.18!important;
  font-weight:950!important;
  color:#111827!important;
  white-space:nowrap!important;
}
.quote-status-highlight{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:23px!important;
  padding:4px 10px!important;
  margin:2px 0 3px!important;
  border-radius:999px!important;
  font-size:11px!important;
  line-height:1.15!important;
  font-style:normal!important;
  font-weight:950!important;
  white-space:nowrap!important;
  border:1px solid transparent!important;
}
.quote-phase-upcoming .quote-status-highlight{
  background:#e8f2ff!important;
  border-color:#8fc1f3!important;
  color:#075a9c!important;
}
.quote-phase-live .quote-status-highlight{
  background:#dcfce7!important;
  border-color:#73d69a!important;
  color:#116530!important;
  box-shadow:0 0 0 2px rgba(22,163,74,.08)!important;
}
.quote-phase-ended .quote-status-highlight{
  background:#f3f4f6!important;
  border-color:#cbd5e1!important;
  color:#64748b!important;
}
.quote-end-label{
  width:100%!important;
  padding-top:4px!important;
  margin-top:1px!important;
  border-top:1px dashed #d8b957!important;
  font-size:10px!important;
  line-height:1.15!important;
  font-weight:900!important;
  color:#6f5b25!important;
  text-align:center!important;
}
.quote-end-remaining{
  font-size:11px!important;
  line-height:1.15!important;
  font-style:normal!important;
  font-weight:900!important;
  color:#8a5200!important;
  white-space:nowrap!important;
}
.record-summary{
  min-height:146px!important;
}
.priced-items-box,.quote-time-range,.quote-state-box,.record-lock-switch,.summary-delete-btn{
  min-height:126px!important;
  height:126px!important;
}


/* V13.7.11 - Giao việc dùng select native; các khung con cao sát viền và căn giữa */
.record-summary{
  min-height:170px!important;
  padding:8px 12px!important;
  align-items:stretch!important;
}
.record-summary>.summary-main{
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  min-height:150px!important;
}
.record-summary>.summary-stats{display:contents!important}

.assignment-native-wrap{
  display:inline-flex!important;
  align-items:center!important;
  gap:6px!important;
  position:relative!important;
  z-index:50!important;
  min-width:0!important;
  max-width:290px!important;
  pointer-events:auto!important;
}
.assignment-native-label{
  display:inline-flex!important;
  align-items:center!important;
  gap:6px!important;
  min-width:0!important;
  height:32px!important;
  padding:3px 5px 3px 10px!important;
  border:1px solid #e4c470!important;
  border-radius:999px!important;
  background:#fff7dc!important;
  color:#684500!important;
  font-size:11px!important;
  font-weight:900!important;
  cursor:pointer!important;
  pointer-events:auto!important;
}
.assignment-native-label>span{
  flex:0 0 auto!important;
  white-space:nowrap!important;
}
.assignment-native-select{
  position:relative!important;
  z-index:60!important;
  display:block!important;
  width:150px!important;
  max-width:150px!important;
  height:26px!important;
  padding:2px 24px 2px 7px!important;
  border:0!important;
  border-radius:999px!important;
  background:#fff!important;
  color:#172033!important;
  font-size:11px!important;
  font-weight:850!important;
  cursor:pointer!important;
  pointer-events:auto!important;
  outline:none!important;
}
.assignment-native-select:focus{
  box-shadow:0 0 0 3px rgba(37,99,235,.18)!important;
}
.assignment-native-readonly{
  display:inline-flex!important;
  align-items:center!important;
  min-height:30px!important;
  padding:5px 10px!important;
  border:1px solid #e4c470!important;
  border-radius:999px!important;
  background:#fff7dc!important;
  color:#684500!important;
  font-size:11px!important;
  font-weight:850!important;
}
.assignment-save-status{
  font-size:10px!important;
  font-weight:900!important;
  color:#16723b!important;
  white-space:nowrap!important;
}

.priced-items-box,.quote-time-range,.quote-state-box,.record-lock-switch,.summary-delete-btn{
  min-height:150px!important;
  height:150px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  box-sizing:border-box!important;
  margin:0!important;
  border-radius:14px!important;
}
.quote-time-range{
  display:grid!important;
  grid-template-rows:auto auto auto auto auto auto!important;
  align-content:center!important;
  justify-items:center!important;
  min-height:150px!important;
  height:150px!important;
}
.quote-state-box{
  gap:10px!important;
  padding:14px!important;
}
.quote-state-box label{
  justify-content:flex-start!important;
  width:100%!important;
}
.record-lock-switch{
  gap:8px!important;
}
.summary-delete-btn{
  text-align:center!important;
}
.record-summary{
  grid-template-columns:minmax(620px,1.75fr) 92px 310px 220px 92px 80px!important;
  gap:9px!important;
}
@media(max-width:1500px){
  .record-summary{
    grid-template-columns:minmax(500px,1.55fr) 88px 285px 205px 88px 76px!important;
  }
}
@media(max-width:1220px){
  .record-summary{
    grid-template-columns:minmax(460px,1.45fr) 88px 275px 195px!important;
  }
}
@media(max-width:850px){
  .record-summary{grid-template-columns:1fr!important}
  .record-summary>.summary-main{min-height:auto!important}
  .priced-items-box,.quote-time-range,.quote-state-box,.record-lock-switch,.summary-delete-btn{
    min-height:110px!important;height:110px!important;
  }
}


/* V13.7.12 - Bố cục thẻ BG chuyên nghiệp, các khung con kéo sát viền dưới */
details.record > summary.record-summary{
  display:grid!important;
  grid-template-columns:minmax(560px,1.15fr) minmax(760px,1fr)!important;
  column-gap:14px!important;
  align-items:stretch!important;
  min-height:196px!important;
  padding:10px 12px!important;
  box-sizing:border-box!important;
}

details.record > summary.record-summary > .summary-main{
  display:flex!important;
  flex-direction:column!important;
  justify-content:space-between!important;
  align-self:stretch!important;
  min-width:0!important;
  min-height:174px!important;
  padding:2px 4px 1px!important;
  box-sizing:border-box!important;
}

details.record > summary.record-summary > .summary-stats{
  display:grid!important;
  grid-template-columns:90px minmax(285px,1.55fr) minmax(205px,1.08fr) 88px 76px!important;
  gap:9px!important;
  align-items:stretch!important;
  align-self:stretch!important;
  min-width:0!important;
  min-height:174px!important;
  height:auto!important;
  box-sizing:border-box!important;
}

details.record > summary.record-summary > .summary-stats > .priced-items-box,
details.record > summary.record-summary > .summary-stats > .quote-time-range,
details.record > summary.record-summary > .summary-stats > .quote-state-box,
details.record > summary.record-summary > .summary-stats > .record-lock-switch,
details.record > summary.record-summary > .summary-stats > .summary-delete-btn{
  align-self:stretch!important;
  width:100%!important;
  min-width:0!important;
  min-height:174px!important;
  height:100%!important;
  margin:0!important;
  padding:14px 10px!important;
  box-sizing:border-box!important;
  border-radius:14px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
  box-shadow:0 2px 8px rgba(15,23,42,.055)!important;
}

details.record > summary.record-summary > .summary-stats > .quote-time-range{
  display:grid!important;
  grid-template-rows:auto auto auto auto auto auto!important;
  align-content:center!important;
  justify-items:center!important;
  gap:5px!important;
  padding:13px 15px!important;
}

details.record > summary.record-summary > .summary-stats > .quote-time-range > small{
  font-size:11px!important;
  line-height:1.25!important;
  margin:0!important;
}

details.record > summary.record-summary > .summary-stats > .quote-time-range .quote-main-time,
details.record > summary.record-summary > .summary-stats > .quote-time-range .quote-end-time{
  font-size:16px!important;
  line-height:1.25!important;
  margin:0!important;
}

details.record > summary.record-summary > .summary-stats > .quote-time-range .quote-status-highlight{
  min-height:25px!important;
  padding:5px 11px!important;
  margin:1px 0 4px!important;
  font-size:11px!important;
  line-height:1.2!important;
}

details.record > summary.record-summary > .summary-stats > .quote-time-range .quote-end-label{
  padding-top:7px!important;
  margin-top:1px!important;
  font-size:11px!important;
  line-height:1.2!important;
}

details.record > summary.record-summary > .summary-stats > .quote-time-range .quote-end-remaining{
  font-size:11px!important;
  line-height:1.2!important;
}

details.record > summary.record-summary > .summary-stats > .priced-items-box small,
details.record > summary.record-summary > .summary-stats > .quote-state-box > small{
  font-size:11px!important;
  line-height:1.25!important;
  text-align:center!important;
}

details.record > summary.record-summary > .summary-stats > .priced-items-box b{
  margin-top:7px!important;
  font-size:21px!important;
  line-height:1.1!important;
}

details.record > summary.record-summary > .summary-stats > .quote-state-box{
  gap:14px!important;
  padding:15px 14px!important;
}

details.record > summary.record-summary > .summary-stats > .quote-state-box label{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  width:100%!important;
  gap:8px!important;
  font-size:12px!important;
  line-height:1.25!important;
  white-space:normal!important;
}

details.record > summary.record-summary > .summary-stats > .quote-state-box input{
  width:18px!important;
  height:18px!important;
  flex:0 0 18px!important;
}

details.record > summary.record-summary > .summary-stats > .record-lock-switch{
  gap:10px!important;
}

details.record > summary.record-summary > .summary-stats > .record-lock-switch small,
details.record > summary.record-summary > .summary-stats > .summary-delete-btn{
  font-size:12px!important;
  font-weight:900!important;
}

details.record > summary.record-summary .record-meta-line{
  margin-top:auto!important;
  padding-top:8px!important;
}

@media(max-width:1450px){
  details.record > summary.record-summary{
    grid-template-columns:minmax(480px,1fr) minmax(700px,1.1fr)!important;
  }
  details.record > summary.record-summary > .summary-stats{
    grid-template-columns:84px minmax(260px,1.45fr) minmax(190px,1fr) 84px 72px!important;
    gap:7px!important;
  }
}

@media(max-width:1180px){
  details.record > summary.record-summary{
    grid-template-columns:1fr!important;
    row-gap:10px!important;
  }
  details.record > summary.record-summary > .summary-main{
    min-height:auto!important;
  }
  details.record > summary.record-summary > .summary-stats{
    min-height:150px!important;
  }
  details.record > summary.record-summary > .summary-stats > .priced-items-box,
  details.record > summary.record-summary > .summary-stats > .quote-time-range,
  details.record > summary.record-summary > .summary-stats > .quote-state-box,
  details.record > summary.record-summary > .summary-stats > .record-lock-switch,
  details.record > summary.record-summary > .summary-stats > .summary-delete-btn{
    min-height:150px!important;
  }
}

@media(max-width:760px){
  details.record > summary.record-summary > .summary-stats{
    grid-template-columns:1fr 1fr!important;
    height:auto!important;
  }
  details.record > summary.record-summary > .summary-stats > .quote-time-range{
    grid-column:1/-1!important;
  }
}

/* V13.7.13 - HSMT copy/count + collapse controls + responsive toàn Dashboard */
.record-collapse-toggle,.hsmt-copy-link-btn,.hsmt-workspace-toggle{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  min-height:30px!important;padding:5px 10px!important;border:1px solid #9fc9ea!important;
  border-radius:8px!important;background:#eef7ff!important;color:#075b94!important;
  font-size:11px!important;font-weight:900!important;line-height:1!important;cursor:pointer!important;
  white-space:nowrap!important;text-decoration:none!important;
}
.record-collapse-toggle{border-color:#c9c4ef!important;background:#f5f3ff!important;color:#4d3d91!important}
.record-collapse-toggle:hover,.hsmt-copy-link-btn:hover,.hsmt-workspace-toggle:hover{filter:brightness(.97)}
.hsmt-code-actions{display:flex!important;align-items:center!important;gap:7px!important;flex-wrap:wrap!important}
.hsmt-item-count{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:4px!important;margin-top:5px!important;padding:4px 8px!important;border-radius:999px!important;background:#eef5fb!important;border:1px solid #c8ddeb!important;color:#38566d!important;font-size:11px!important;font-weight:800!important}
.hsmt-item-count b{font-size:12px!important;color:#0b5e91!important}
.hsmt-content.hsmt-workspace-collapsed{display:none!important}

/* Desktop HSMT cân khung */
.hsmt-dashboard-open{align-items:stretch!important}
.hsmt-dashboard-main,.hsmt-dashboard-price,.hsmt-dashboard-open .deadline-box,.hsmt-expand-label.hsmt-card-box{
  min-height:118px!important;height:100%!important;box-sizing:border-box!important
}
.hsmt-dashboard-price,.hsmt-dashboard-open .deadline-box,.hsmt-expand-label.hsmt-card-box{
  display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;text-align:center!important
}

/* Mobile/tablet toàn dashboard */
@media(max-width:1024px){
  body{overflow-x:hidden!important}
  main,.container,.dashboard-wrap{max-width:100%!important;width:100%!important;padding-left:10px!important;padding-right:10px!important;box-sizing:border-box!important}
  .filterbar,.filters,.dashboard-filters,.source-filter,.uploadbar,.pipeline-export-bar{
    display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important
  }
  .filterbar>* ,.filters>* ,.dashboard-filters>*{min-width:0!important;width:100%!important}
  details.record>summary.record-summary{
    grid-template-columns:1fr!important;min-height:auto!important;padding:10px!important;row-gap:10px!important
  }
  details.record>summary.record-summary>.summary-main{min-height:auto!important}
  details.record>summary.record-summary>.summary-stats{
    display:grid!important;grid-template-columns:90px minmax(230px,1.4fr) minmax(185px,1fr) 84px 72px!important;
    min-height:136px!important;overflow-x:auto!important;padding-bottom:2px!important
  }
  details.record>summary.record-summary>.summary-stats>*{min-height:136px!important;height:136px!important}
  .record-meta-line{flex-wrap:wrap!important;white-space:normal!important}
  .assignment-native-wrap{max-width:100%!important}
  .hsmt-dashboard-open{
    grid-template-columns:minmax(0,1fr) 180px 220px 105px!important;gap:8px!important;padding-right:10px!important
  }
  .hsmt-dashboard-select{position:absolute!important;right:12px!important;top:8px!important}
  .tablewrap,.table-scroll,.items-table-wrap{overflow-x:auto!important;-webkit-overflow-scrolling:touch!important}
}
@media(max-width:700px){
  body{font-size:14px!important}
  .topbar,.nav,.tabs{overflow-x:auto!important;white-space:nowrap!important;-webkit-overflow-scrolling:touch!important}
  .filterbar,.filters,.dashboard-filters,.source-filter,.uploadbar,.pipeline-export-bar{grid-template-columns:1fr!important}
  details.record>summary.record-summary{padding:9px!important}
  details.record>summary.record-summary>.summary-main .project-name{font-size:16px!important;line-height:1.3!important}
  .code-admin-edit,.code-with-copy,.hsmt-code-actions{display:flex!important;flex-wrap:wrap!important;gap:6px!important}
  .record-code-input{width:min(100%,220px)!important}
  details.record>summary.record-summary>.summary-stats{
    grid-template-columns:1fr 1fr!important;overflow:visible!important;min-height:auto!important
  }
  details.record>summary.record-summary>.summary-stats>.priced-items-box,
  details.record>summary.record-summary>.summary-stats>.record-lock-switch,
  details.record>summary.record-summary>.summary-stats>.summary-delete-btn{
    min-height:92px!important;height:92px!important
  }
  details.record>summary.record-summary>.summary-stats>.quote-time-range,
  details.record>summary.record-summary>.summary-stats>.quote-state-box{
    grid-column:1/-1!important;min-height:126px!important;height:auto!important
  }
  .record-meta-line>.processing-status{max-width:100%!important;white-space:normal!important}
  .assignment-native-label{max-width:100%!important}
  .assignment-native-select{width:130px!important;max-width:45vw!important}
  .hsmt-dashboard-open{
    display:grid!important;grid-template-columns:1fr!important;gap:7px!important;padding:8px!important
  }
  .hsmt-dashboard-main,.hsmt-dashboard-price,.hsmt-dashboard-open .deadline-box,.hsmt-expand-label.hsmt-card-box{
    min-height:auto!important;height:auto!important;padding:10px!important
  }
  .hsmt-dashboard-main{align-items:flex-start!important;text-align:left!important}
  .hsmt-dashboard-price,.hsmt-dashboard-open .deadline-box{min-height:90px!important}
  .hsmt-expand-label.hsmt-card-box{min-height:44px!important}
  .hsmt-code-actions{width:100%!important}
  .hsmt-active-title{display:grid!important;grid-template-columns:1fr!important;gap:8px!important}
  .hsmt-waiting-toolbar input{width:100%!important}
  .panel{padding:10px!important}
  button,.btn,select,input,textarea{max-width:100%!important}
}
@media(max-width:420px){
  details.record>summary.record-summary>.summary-stats{grid-template-columns:1fr!important}
  details.record>summary.record-summary>.summary-stats>*{grid-column:1!important;width:100%!important}
  .assignment-native-wrap{width:100%!important}
  .assignment-native-label{width:100%!important;justify-content:space-between!important}
  .assignment-native-select{flex:1 1 auto!important;width:auto!important;max-width:none!important}
}

/* V13.7.14 - Thu nhỏ card thật sự, chỉ còn 1 dòng tên hồ sơ */

/* BG Trực tuyến */
details.record.record-card-collapsed>summary.record-summary{
  display:flex!important;
  align-items:center!important;
  min-height:48px!important;
  height:48px!important;
  padding:6px 10px!important;
  gap:8px!important;
}
details.record.record-card-collapsed>summary.record-summary>.summary-main{
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:10px!important;
  min-height:0!important;
  height:auto!important;
  width:100%!important;
  overflow:hidden!important;
}
details.record.record-card-collapsed>summary.record-summary>.summary-main>.project-name{
  display:block!important;
  flex:1 1 auto!important;
  min-width:0!important;
  margin:0!important;
  font-size:14px!important;
  line-height:1.2!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
details.record.record-card-collapsed>summary.record-summary>.summary-main>.investor-name,
details.record.record-card-collapsed>summary.record-summary>.summary-main>.dashboard-inline-price,
details.record.record-card-collapsed>summary.record-summary>.summary-main>.record-meta-line,
details.record.record-card-collapsed>summary.record-summary>.summary-stats{
  display:none!important;
}
details.record.record-card-collapsed>summary.record-summary .code-admin-edit,
details.record.record-card-collapsed>summary.record-summary .code-with-copy{
  display:flex!important;align-items:center!important;gap:5px!important;flex:0 0 auto!important;margin:0!important
}
details.record.record-card-collapsed>summary.record-summary .save-record-code,
details.record.record-card-collapsed>summary.record-summary .copy-record-link{
  display:none!important;
}
details.record.record-card-collapsed>summary.record-summary .record-code-input{
  width:155px!important;height:30px!important
}
details.record.record-card-collapsed>summary.record-summary .record-collapse-toggle{
  display:inline-flex!important;height:30px!important;min-height:30px!important
}

/* HSMT - mọi card đều có nút thu nhỏ ngoài Dashboard */
.hsmt-card-collapse-toggle{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  min-height:30px!important;padding:5px 10px!important;border:1px solid #c9c4ef!important;
  border-radius:8px!important;background:#f5f3ff!important;color:#4d3d91!important;
  font-size:11px!important;font-weight:900!important;line-height:1!important;cursor:pointer!important;white-space:nowrap!important
}
.hsmt-dashboard-card.hsmt-card-collapsed{
  min-height:0!important
}
.hsmt-dashboard-card.hsmt-card-collapsed .hsmt-dashboard-open{
  display:flex!important;align-items:center!important;gap:8px!important;
  min-height:48px!important;height:48px!important;padding:6px 10px!important
}
.hsmt-dashboard-card.hsmt-card-collapsed .hsmt-dashboard-main{
  display:flex!important;flex-direction:row!important;align-items:center!important;gap:9px!important;
  min-height:0!important;height:auto!important;width:100%!important;padding:0!important;border:0!important;background:transparent!important
}
.hsmt-dashboard-card.hsmt-card-collapsed .hsmt-dashboard-main .project-name{
  display:block!important;flex:1 1 auto!important;min-width:0!important;margin:0!important;
  font-size:14px!important;line-height:1.2!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important
}
.hsmt-dashboard-card.hsmt-card-collapsed .hsmt-dashboard-main .investor-name,
.hsmt-dashboard-card.hsmt-card-collapsed .hsmt-dashboard-main .record-meta-line,
.hsmt-dashboard-card.hsmt-card-collapsed .hsmt-dashboard-price,
.hsmt-dashboard-card.hsmt-card-collapsed .deadline-box,
.hsmt-dashboard-card.hsmt-card-collapsed .hsmt-expand-label{
  display:none!important
}
.hsmt-dashboard-card.hsmt-card-collapsed .hsmt-code-actions{
  flex:0 0 auto!important;flex-wrap:nowrap!important
}
.hsmt-dashboard-card.hsmt-card-collapsed .hsmt-copy-link-btn{
  display:none!important
}

/* Mobile: collapsed card vẫn 1 dòng, nút không che tên */
@media(max-width:700px){
  details.record.record-card-collapsed>summary.record-summary,
  .hsmt-dashboard-card.hsmt-card-collapsed .hsmt-dashboard-open{
    min-height:46px!important;height:auto!important;padding:6px 8px!important
  }
  details.record.record-card-collapsed>summary.record-summary>.summary-main,
  .hsmt-dashboard-card.hsmt-card-collapsed .hsmt-dashboard-main{
    display:grid!important;grid-template-columns:auto minmax(0,1fr)!important;gap:6px!important
  }
  details.record.record-card-collapsed>summary.record-summary>.summary-main>.project-name,
  .hsmt-dashboard-card.hsmt-card-collapsed .hsmt-dashboard-main .project-name{
    font-size:13px!important
  }
  details.record.record-card-collapsed>summary.record-summary .code-admin-edit,
  details.record.record-card-collapsed>summary.record-summary .code-with-copy,
  .hsmt-dashboard-card.hsmt-card-collapsed .hsmt-code-actions{
    max-width:100%!important
  }
}

/* V13.7.15 - persistent collapse, không tự bung khi đổi tab/reload */
details.record.record-card-collapsed{
  overflow:hidden!important;
}
details.record.record-card-collapsed>summary.record-summary{
  display:flex!important;
  align-items:center!important;
  min-height:48px!important;
  height:48px!important;
  padding:6px 10px!important;
  cursor:default!important;
}
details.record.record-card-collapsed>summary.record-summary>.summary-main{
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  gap:8px!important;
  width:100%!important;
  min-height:0!important;
  height:auto!important;
  overflow:hidden!important;
}
details.record.record-card-collapsed>summary.record-summary>.summary-stats,
details.record.record-card-collapsed>summary.record-summary>.summary-main>.investor-name,
details.record.record-card-collapsed>summary.record-summary>.summary-main>.dashboard-inline-price,
details.record.record-card-collapsed>summary.record-summary>.summary-main>.record-meta-line{
  display:none!important;
}
details.record.record-card-collapsed>summary.record-summary>.summary-main>.project-name{
  display:block!important;
  order:2!important;
  flex:1 1 auto!important;
  min-width:0!important;
  margin:0!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  font-size:14px!important;
}
details.record.record-card-collapsed>summary.record-summary>.summary-main>.code{
  order:1!important;
  flex:0 0 auto!important;
}
details.record.record-card-collapsed>summary.record-summary .record-collapse-toggle{
  display:inline-flex!important;
}
details.record.record-card-collapsed>summary.record-summary .save-record-code,
details.record.record-card-collapsed>summary.record-summary .copy-record-link{
  display:none!important;
}
/* nếu details đang open thì phần nội dung vẫn bị ẩn khi card ở trạng thái thu gọn */
details.record.record-card-collapsed>[class]:not(summary),
details.record.record-card-collapsed>section,
details.record.record-card-collapsed>div:not(.record-summary){
  display:none!important;
}

/* HSMT collapsed giữ một dòng bất kể chuyển tab/reload */
.hsmt-dashboard-card.hsmt-card-collapsed .hsmt-dashboard-open{
  min-height:48px!important;height:48px!important;overflow:hidden!important
}
.hsmt-dashboard-card.hsmt-card-collapsed .hsmt-dashboard-main{
  min-height:0!important;height:auto!important;overflow:hidden!important
}
.hsmt-dashboard-card.hsmt-card-collapsed .project-name{
  white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important
}

/* ==========================================================
   V5.4.4 - 2-row quote time + visible Lock/Delete controls
   ========================================================== */
details.record>summary.record-summary{
  padding:8px 11px!important;
}
details.record>summary.record-summary>.summary-main{
  min-height:104px!important;
  height:104px!important;
}
details.record>summary.record-summary>.summary-stats{
  grid-template-columns:78px 390px 190px 128px!important;
  min-height:104px!important;
  height:104px!important;
  gap:7px!important;
}
details.record>summary.record-summary>.summary-stats>.priced-items-box,
details.record>summary.record-summary>.summary-stats>.quote-time-range,
details.record>summary.record-summary>.summary-stats>.quote-state-box,
details.record>summary.record-summary>.summary-stats>.summary-admin-actions{
  min-height:104px!important;
  height:104px!important;
}

/* Time: exactly 2 horizontal rows */
details.record .quote-time-range{
  display:grid!important;
  grid-template-rows:1fr 1fr!important;
  padding:7px 10px!important;
  min-width:390px!important;
  align-content:stretch!important;
}
details.record .quote-two-row{
  display:grid!important;
  grid-template-columns:58px minmax(135px,1fr) 62px minmax(105px,auto)!important;
  align-items:center!important;
  gap:6px!important;
  border-bottom:1px dashed rgba(150,110,30,.24)!important;
  min-height:0!important;
}
details.record .quote-two-row:last-child{border-bottom:0!important}
details.record .quote-row-label,
details.record .quote-inline-label{
  font-size:10px!important;
  color:#6d603c!important;
  font-weight:800!important;
  white-space:nowrap!important;
}
details.record .quote-main-time,
details.record .quote-end-time{
  font-size:13px!important;
  line-height:1.1!important;
  font-weight:900!important;
  white-space:nowrap!important;
}
details.record .quote-status-highlight,
details.record .quote-end-remaining{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  font-style:normal!important;
  font-size:10px!important;
  line-height:1.1!important;
  font-weight:900!important;
  white-space:nowrap!important;
  padding:4px 7px!important;
  border-radius:999px!important;
}

/* Lock/Delete: one frame, two readable rows */
details.record .summary-admin-actions{
  display:grid!important;
  grid-template-columns:1fr!important;
  grid-template-rows:1fr 1fr!important;
  gap:5px!important;
  min-width:128px!important;
  padding:5px!important;
  background:#f8fbfc!important;
  border:1px solid #d5e0e6!important;
  border-radius:11px!important;
}
details.record .summary-admin-actions .record-lock-switch,
details.record .summary-admin-actions .summary-delete-btn{
  width:100%!important;
  min-width:0!important;
  height:auto!important;
  min-height:0!important;
  margin:0!important;
  border-radius:7px!important;
}
details.record .summary-admin-actions .record-lock-switch{
  display:grid!important;
  grid-template-columns:34px 1fr!important;
  grid-template-rows:1fr!important;
  align-items:center!important;
  gap:7px!important;
  padding:5px 8px!important;
  background:#edf4f7!important;
  border:1px solid #d3e0e7!important;
}
details.record .summary-admin-actions .record-lock-switch .switch-track{
  transform:scale(.82)!important;
  transform-origin:left center!important;
  margin:0!important;
}
details.record .summary-admin-actions .record-lock-text{
  display:block!important;
  font-size:10px!important;
  line-height:1.1!important;
  font-weight:900!important;
  color:#4b6576!important;
  white-space:nowrap!important;
}
details.record .summary-admin-actions .summary-delete-btn{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:5px 8px!important;
  background:#f8dddd!important;
  color:#982f2f!important;
  border:1px solid #e8b9b9!important;
  font-size:10px!important;
  font-weight:900!important;
}
details.record .summary-admin-actions .summary-delete-btn:hover{
  background:#f2caca!important;
}

/* Compact state box to match reduced card height */
details.record>summary.record-summary>.summary-stats>.quote-state-box{
  padding:7px 10px!important;
  gap:6px!important;
}
details.record>summary.record-summary>.summary-stats>.quote-state-box>small{
  font-size:9px!important;
}
details.record>summary.record-summary>.summary-stats>.quote-state-box label{
  font-size:10px!important;
}

/* If title wraps, allow card to grow only as needed */
details.record>summary.record-summary>.summary-main>.project-name{
  font-size:16px!important;
  line-height:1.16!important;
  margin:0!important;
}
@media(max-width:1500px){
 details.record>summary.record-summary>.summary-stats{
   grid-template-columns:72px 355px 180px 122px!important;
 }
 details.record .quote-time-range{min-width:355px!important}
 details.record .quote-two-row{
   grid-template-columns:54px minmax(125px,1fr) 56px minmax(95px,auto)!important;
 }
}

/* ==========================================================
   V5.4.5 - Compact rounded HSMT cards
   ========================================================== */

/* Mỗi HSMT là một card bo tròn rõ ràng */
details.record{
  margin:8px 12px!important;
  border:1px solid #d7e1e7!important;
  border-radius:14px!important;
  background:#fff!important;
  box-shadow:0 2px 8px rgba(20,55,75,.06)!important;
  overflow:hidden!important;
}
details.record[open]{
  box-shadow:0 5px 16px rgba(20,55,75,.10)!important;
}

/* Thu chiều cao summary xuống, loại khoảng trắng dư phía dưới */
details.record>summary.record-summary{
  min-height:0!important;
  height:auto!important;
  padding:7px 10px!important;
  align-items:center!important;
}
details.record>summary.record-summary>.summary-main{
  min-height:86px!important;
  height:86px!important;
  padding:0 3px!important;
  gap:2px!important;
}
details.record>summary.record-summary>.summary-main>.project-name{
  font-size:15px!important;
  line-height:1.16!important;
  margin:0!important;
}
details.record>summary.record-summary .summary-inline-meta{
  margin-top:1px!important;
  gap:5px!important;
}
details.record>summary.record-summary .summary-inline-meta .investor-name,
details.record>summary.record-summary .summary-inline-meta .dashboard-inline-price{
  min-height:25px!important;
  height:25px!important;
  padding:2px 7px!important;
  font-size:10.5px!important;
}
details.record>summary.record-summary .record-meta-line{
  min-height:24px!important;
  height:24px!important;
  margin-top:auto!important;
  padding-top:2px!important;
}

/* Khối bên phải đồng bộ chiều cao 86px */
details.record>summary.record-summary>.summary-stats{
  min-height:86px!important;
  height:86px!important;
  grid-template-columns:74px 390px 190px 132px!important;
  gap:7px!important;
}
details.record>summary.record-summary>.summary-stats>.priced-items-box,
details.record>summary.record-summary>.summary-stats>.quote-time-range,
details.record>summary.record-summary>.summary-stats>.quote-state-box,
details.record>summary.record-summary>.summary-stats>.summary-admin-actions{
  min-height:86px!important;
  height:86px!important;
  border-radius:10px!important;
}

/* Khung thời gian 2 dòng giữ nguyên nhưng co chiều dọc */
details.record .quote-time-range{
  padding:5px 9px!important;
}
details.record .quote-two-row{
  min-height:36px!important;
}
details.record .quote-main-time,
details.record .quote-end-time{
  font-size:12.5px!important;
}
details.record .quote-status-highlight,
details.record .quote-end-remaining{
  font-size:9.5px!important;
  padding:3px 7px!important;
}

/* Trạng thái báo giá gọn hơn */
details.record>summary.record-summary>.summary-stats>.quote-state-box{
  padding:5px 9px!important;
  gap:4px!important;
}
details.record>summary.record-summary>.summary-stats>.quote-state-box>small{
  font-size:8.5px!important;
}
details.record>summary.record-summary>.summary-stats>.quote-state-box label{
  font-size:9.5px!important;
  line-height:1.1!important;
}

/* Khóa/Mở + Xóa: kéo vào trong để luôn thấy viền phải */
details.record>summary.record-summary>.summary-stats>.summary-admin-actions{
  min-width:132px!important;
  width:132px!important;
  margin-right:4px!important;
  padding:4px!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
}
details.record .summary-admin-actions .record-lock-switch,
details.record .summary-admin-actions .summary-delete-btn{
  min-height:0!important;
  height:36px!important;
  padding:3px 7px!important;
}
details.record .summary-admin-actions .record-lock-switch{
  grid-template-columns:30px 1fr!important;
  gap:5px!important;
}
details.record .summary-admin-actions .record-lock-switch .switch-track{
  transform:scale(.72)!important;
}
details.record .summary-admin-actions .record-lock-text,
details.record .summary-admin-actions .summary-delete-btn{
  font-size:9.5px!important;
}

/* Bảo đảm không bị chạm sát mép phải màn hình */
details.record>summary.record-summary{
  padding-right:14px!important;
}
details.record>summary.record-summary>.summary-stats{
  padding-right:2px!important;
}

/* Card compact hơn nữa khi màn hình rộng */
@media(min-width:1500px){
  details.record{
    margin-top:6px!important;
    margin-bottom:6px!important;
  }
  details.record>summary.record-summary>.summary-main,
  details.record>summary.record-summary>.summary-stats{
    min-height:82px!important;
    height:82px!important;
  }
  details.record>summary.record-summary>.summary-stats>*{
    min-height:82px!important;
    height:82px!important;
  }
}

/* ==========================================================
   V5.4.7 - CLEAN COLLAPSED MODE
   Expanded mode intentionally stays V5.4.5.
   ========================================================== */

/* Expanded: dedicated collapsed row is always hidden. */
details.record .collapsed-summary-line{
  display:none!important;
}

/* Collapsed card: one clean row only; absolutely no duplicate text. */
details.record.record-card-collapsed{
  margin:6px 12px!important;
  border:1px solid #d7e1e7!important;
  border-radius:12px!important;
  background:#fff!important;
  box-shadow:0 2px 7px rgba(20,55,75,.055)!important;
  overflow:hidden!important;
}
details.record.record-card-collapsed>summary.record-summary{
  display:block!important;
  min-height:0!important;
  height:auto!important;
  padding:7px 9px!important;
}
details.record.record-card-collapsed>summary.record-summary>.summary-main,
details.record.record-card-collapsed>summary.record-summary>.summary-stats{
  display:none!important;
}

/* Hide every expanded-body direct child while card is collapsed. */
details.record.record-card-collapsed>summary.record-summary~*{
  display:none!important;
}

details.record.record-card-collapsed .collapsed-summary-line{
  display:grid!important;
  grid-template-columns:
    155px
    minmax(300px,1.55fr)
    minmax(235px,1fr)
    auto
    auto
    auto
    70px!important;
  gap:7px!important;
  align-items:center!important;
  width:100%!important;
  min-height:38px!important;
}

details.record.record-card-collapsed .collapsed-summary-line>span{
  display:flex!important;
  align-items:center!important;
  min-width:0!important;
  min-height:31px!important;
  padding:4px 8px!important;
  border:1px solid #d9e3e9!important;
  border-radius:8px!important;
  background:#f9fbfc!important;
  color:#26485c!important;
  font-size:11.5px!important;
  line-height:1.15!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}

details.record.record-card-collapsed .collapsed-ib{
  font-size:13px!important;
  font-weight:900!important;
  color:#075f99!important;
  background:#f3faff!important;
  border-color:#b9d8ea!important;
}
details.record.record-card-collapsed .collapsed-project{
  font-size:12px!important;
  font-weight:850!important;
  color:#132630!important;
}
details.record.record-card-collapsed .collapsed-investor strong,
details.record.record-card-collapsed .collapsed-price strong,
details.record.record-card-collapsed .collapsed-start strong,
details.record.record-card-collapsed .collapsed-remain strong{
  flex:none!important;
  margin-right:4px!important;
  color:#58707f!important;
}

details.record.record-card-collapsed .collapsed-price{
  background:#fff3c8!important;
  border-color:#e9bc44!important;
  color:#8b5500!important;
  font-weight:850!important;
}
details.record.record-card-collapsed .collapsed-start{
  background:#fff8df!important;
  border-color:#e8ca72!important;
  color:#6f5000!important;
  font-weight:800!important;
}
details.record.record-card-collapsed .collapsed-remain{
  background:#eaf5ff!important;
  border-color:#9ecdf0!important;
  color:#075d98!important;
  font-weight:850!important;
}
details.record.record-card-collapsed .collapsed-remain em{
  font-style:normal!important;
  font-weight:900!important;
  color:#075d98!important;
}

details.record.record-card-collapsed .collapsed-open-btn{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:70px!important;
  min-width:70px!important;
  height:31px!important;
  padding:4px 8px!important;
  border:1px solid #c7b9ef!important;
  border-radius:8px!important;
  background:#f4f1ff!important;
  color:#4c3690!important;
  font-size:11px!important;
  font-weight:900!important;
}

/* Normal V5.4.5: protect text from overlapping when viewport narrows. */
details.record:not(.record-card-collapsed)>summary.record-summary{
  overflow:hidden!important;
}
details.record:not(.record-card-collapsed) .quote-two-row>*{
  min-width:0!important;
}
details.record:not(.record-card-collapsed) .quote-main-time,
details.record:not(.record-card-collapsed) .quote-end-time,
details.record:not(.record-card-collapsed) .quote-status-highlight,
details.record:not(.record-card-collapsed) .quote-end-remaining{
  white-space:nowrap!important;
}
details.record:not(.record-card-collapsed) .summary-admin-actions{
  margin-right:8px!important;
}

@media(max-width:1500px){
  details.record.record-card-collapsed .collapsed-summary-line{
    grid-template-columns:
      140px minmax(250px,1.35fr) minmax(200px,1fr) auto auto auto 66px!important;
    gap:6px!important;
  }
  details.record.record-card-collapsed .collapsed-summary-line>span{
    font-size:10.5px!important;
  }
  details.record.record-card-collapsed .collapsed-open-btn{
    width:66px!important;min-width:66px!important;
  }
}

/* ==========================================================
   V5.4.8 - OPEN DEFAULT + STRONGER CARD BORDERS
   ========================================================== */

/* Outer HSMT card: clearer visual separation */
details.record{
  margin:8px 12px!important;
  border:1.5px solid #b9cbd6!important;
  border-radius:14px!important;
  background:#ffffff!important;
  box-shadow:0 2px 9px rgba(24,58,77,.07)!important;
  overflow:hidden!important;
}
details.record:hover{
  border-color:#9fb8c7!important;
  box-shadow:0 3px 12px rgba(24,58,77,.09)!important;
}
details.record[open]{
  border-color:#a9bfcc!important;
  box-shadow:0 4px 14px rgba(24,58,77,.10)!important;
}

/* Give the summary breathing room from the outer border */
details.record>summary.record-summary{
  padding:8px 14px!important;
  column-gap:12px!important;
  box-sizing:border-box!important;
}

/* Inner blocks: consistent border, radius, spacing, no touching outer edge */
details.record>summary.record-summary>.summary-stats{
  gap:8px!important;
  padding-right:4px!important;
  box-sizing:border-box!important;
}
details.record>summary.record-summary>.summary-stats>.priced-items-box,
details.record>summary.record-summary>.summary-stats>.quote-time-range,
details.record>summary.record-summary>.summary-stats>.quote-state-box,
details.record>summary.record-summary>.summary-stats>.summary-admin-actions{
  border:1px solid #c7d7e0!important;
  border-radius:11px!important;
  box-sizing:border-box!important;
  box-shadow:0 1px 3px rgba(24,58,77,.035)!important;
}

/* Time block keeps its highlight but with cleaner inner boundary */
details.record>summary.record-summary>.summary-stats>.quote-time-range{
  border-color:#e5c35f!important;
  background:#fff9e8!important;
}

/* Quote status block */
details.record>summary.record-summary>.summary-stats>.quote-state-box{
  background:#f7fbfd!important;
}

/* Priced / HM block */
details.record>summary.record-summary>.summary-stats>.priced-items-box{
  background:#f6fafc!important;
}

/* Lock/Delete group: narrower, centered inside, never touches right border */
details.record>summary.record-summary>.summary-stats>.summary-admin-actions{
  margin-right:8px!important;
  padding:5px!important;
  background:#f8fbfc!important;
}
details.record .summary-admin-actions .record-lock-switch,
details.record .summary-admin-actions .summary-delete-btn{
  border-radius:8px!important;
}

/* Main left information area: subtle internal alignment */
details.record>summary.record-summary>.summary-main{
  padding-right:4px!important;
}
details.record>summary.record-summary .summary-inline-meta{
  gap:7px!important;
}
details.record>summary.record-summary .summary-inline-meta .investor-name,
details.record>summary.record-summary .summary-inline-meta .dashboard-inline-price{
  border-width:1px!important;
  border-radius:8px!important;
}

/* Collapsed mode also retains stronger rounded card */
details.record.record-card-collapsed{
  border:1.5px solid #b9cbd6!important;
  border-radius:12px!important;
  box-shadow:0 2px 8px rgba(24,58,77,.06)!important;
}
details.record.record-card-collapsed>summary.record-summary{
  padding:7px 12px!important;
}
details.record.record-card-collapsed .collapsed-summary-line{
  gap:8px!important;
}
details.record.record-card-collapsed .collapsed-summary-line>span{
  border-color:#c8d7df!important;
  background:#fbfdfe!important;
}

/* Responsive: preserve right breathing room */
@media(max-width:1500px){
  details.record>summary.record-summary{
    padding-left:11px!important;
    padding-right:13px!important;
  }
  details.record>summary.record-summary>.summary-stats{
    gap:7px!important;
    padding-right:3px!important;
  }
  details.record>summary.record-summary>.summary-stats>.summary-admin-actions{
    margin-right:6px!important;
  }
}

/* ===== V5.5.0 THAM KHẢO TỔNG ===== */
.bidref-batch-panel{
 margin:8px 12px 12px!important;padding:10px 12px!important;
 border:1.5px solid #9fc3d7!important;border-radius:13px!important;
 background:#f7fbfd!important;box-shadow:0 2px 8px rgba(20,70,95,.06)!important;
}
.bidref-batch-main{display:flex!important;align-items:center!important;gap:12px!important;flex-wrap:wrap!important}
.bidref-batch-run{
 background:#0d6e4f!important;color:#fff!important;border:0!important;border-radius:9px!important;
 padding:9px 15px!important;font-weight:900!important;font-size:12px!important;
}
.bidref-batch-run:disabled{opacity:.55!important;cursor:wait!important}
.bidref-batch-all-label{
 display:inline-flex!important;align-items:center!important;gap:6px!important;
 padding:7px 10px!important;border:1px solid #c5d7e1!important;border-radius:8px!important;background:#fff!important;font-size:11px!important
}
.bidref-batch-hint{font-size:10px!important;color:#647b89!important}
.bidref-batch-status{margin-top:9px!important;padding-top:9px!important;border-top:1px solid #d5e2e9!important}
.bidref-batch-status-head{display:flex!important;justify-content:space-between!important;gap:12px!important;font-size:11px!important}
.bidref-batch-status-text{font-weight:900!important;color:#0b5b83!important}
.bidref-batch-progress{height:8px!important;margin:7px 0!important;border-radius:999px!important;background:#dce8ee!important;overflow:hidden!important}
.bidref-batch-progress span{display:block!important;height:100%!important;width:0;background:#16835f!important;transition:width .25s ease!important}
.bidref-batch-detail{font-size:10.5px!important;color:#526b79!important}
.bidref-batch-panel.is-done{border-color:#82c6a9!important;background:#f3fbf7!important}
.bidref-batch-panel.is-error{border-color:#e3aaa5!important;background:#fff6f5!important}
.bidref-batch-record-label{
 display:inline-flex!important;align-items:center!important;gap:3px!important;margin-left:5px!important;
 padding:4px 6px!important;border:1px solid #cbdbe3!important;border-radius:7px!important;
 background:#f8fbfc!important;color:#4f6978!important;font-size:9px!important;font-weight:800!important
}
.bidref-batch-record{width:13px!important;height:13px!important;margin:0!important}

/* ===== V5.5.1 PAGE SIZE ===== */
.dashboard-page-size{display:flex!important;justify-content:flex-end!important;align-items:center!important;margin:7px 14px 4px!important}
.dashboard-page-size label{display:inline-flex!important;align-items:center!important;gap:6px!important;padding:6px 9px!important;border:1px solid #c8d8e1!important;border-radius:8px!important;background:#f8fbfc!important;color:#476170!important;font-size:10.5px!important;font-weight:800!important}
.dashboard-page-size select{height:28px!important;min-width:70px!important;padding:2px 7px!important;border:1px solid #b9ccd7!important;border-radius:7px!important;background:#fff!important;font-weight:900!important}

/* ===== V5.5.2 CHECK KHO NCC ===== */
.catalog-check-record{background:#7559b8!important;color:#fff!important;border:0!important;border-radius:9px!important;padding:8px 12px!important;font-weight:900!important}
.catalog-check-record:disabled{opacity:.6!important}
body.catalog-modal-open{overflow:hidden!important}
.catalog-check-modal{position:fixed!important;inset:0!important;z-index:100000!important;background:rgba(14,28,39,.58)!important;padding:20px!important;display:flex!important;align-items:center!important;justify-content:center!important}
.catalog-check-dialog{width:min(1560px,97vw)!important;height:min(900px,94vh)!important;background:#fff!important;border-radius:14px!important;overflow:hidden!important;box-shadow:0 22px 60px rgba(0,0,0,.25)!important;display:flex!important;flex-direction:column!important}
.catalog-check-header{display:flex!important;justify-content:space-between!important;align-items:flex-start!important;gap:20px!important;padding:15px 18px!important;background:#164f70!important;color:#fff!important}
.catalog-check-header h2{margin:0 0 4px!important;font-size:18px!important}
.catalog-check-header p{margin:0!important;font-size:11px!important;color:#e1eff6!important}
.catalog-check-kpis{display:flex!important;gap:7px!important;margin-top:8px!important}
.catalog-check-kpis span{padding:4px 8px!important;border-radius:999px!important;background:#2a6d91!important;font-size:10px!important;font-weight:800!important}
.catalog-modal-close{background:#fff!important;color:#294759!important;border:0!important;border-radius:8px!important;padding:8px 13px!important;font-weight:900!important}
.catalog-check-body{padding:12px!important;overflow:auto!important;background:#f5f8fa!important}
.catalog-check-item{background:#fff!important;border:1px solid #ccdae2!important;border-radius:10px!important;margin-bottom:11px!important;overflow:hidden!important}
.catalog-check-item-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;padding:9px 11px!important;background:#eaf3f8!important;border-bottom:1px solid #d4e1e8!important}
.catalog-check-item-head>div:last-child{display:flex!important;align-items:center!important;gap:7px!important}
.catalog-match-ok,.catalog-match-empty{padding:4px 7px!important;border-radius:999px!important;font-size:9px!important;font-weight:900!important}
.catalog-match-ok{background:#dff4e8!important;color:#17643f!important}
.catalog-match-empty{background:#f4eeee!important;color:#8c4d4d!important}
.catalog-go-item{border:1px solid #9ebdcd!important;border-radius:7px!important;background:#fff!important;color:#24556f!important;padding:5px 8px!important;font-weight:800!important;font-size:9px!important}
.catalog-check-tablewrap{overflow:auto!important}
.catalog-check-tablewrap table{width:100%!important;border-collapse:collapse!important;table-layout:fixed!important}
.catalog-check-tablewrap th{background:#f3f7f9!important;padding:7px!important;font-size:9px!important;text-align:left!important;border-bottom:1px solid #d6e1e7!important}
.catalog-check-tablewrap td{padding:7px!important;font-size:10px!important;vertical-align:top!important;border-bottom:1px solid #e6edf1!important}
.catalog-check-tablewrap th:nth-child(1){width:42px!important}
.catalog-check-tablewrap th:nth-child(2){width:120px!important}
.catalog-check-tablewrap th:nth-child(4){width:130px!important}
.catalog-check-tablewrap th:nth-child(5){width:135px!important}
.catalog-check-tablewrap th:nth-child(6){width:180px!important}
.catalog-check-tablewrap th:nth-child(7){width:175px!important}
.catalog-score{display:inline-block!important;background:#eef7ff!important;color:#176a9a!important;border-radius:999px!important;padding:3px 6px!important;font-weight:900!important}
.catalog-no-match{text-align:center!important;color:#8a6b6b!important;background:#fff9f8!important;padding:12px!important}
.catalog-row-flash{animation:catalogFlash 2.2s ease}
@keyframes catalogFlash{0%,100%{background:transparent}20%,65%{background:#fff4ad}}


/* V5.2.2 refinement 2026-08-13: dashboard hierarchy + time + upload filter */
.record-summary .summary-main{min-width:0!important;overflow:visible!important}
.record-summary .package-title-row{display:grid;grid-template-columns:96px minmax(0,1fr);gap:10px;align-items:start;margin:5px 0 7px;min-width:0}
.record-summary .package-title-row>small{font-size:10px;font-weight:800;color:#637b8b;letter-spacing:.04em;padding-top:3px}
.record-summary .project-name{font-size:15px!important;line-height:1.28!important;font-weight:800!important;color:#0e2d40!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important;min-width:0}
.record-summary .summary-inline-meta{display:flex!important;flex-wrap:wrap!important;gap:7px!important;align-items:center!important;overflow:visible!important}
.record-summary .investor-name,.record-summary .dashboard-inline-price{display:inline-flex!important;align-items:center;gap:4px;max-width:100%;white-space:normal!important}
.record-summary .investor-name{font-size:12px!important}.record-summary .investor-name b{color:#b3261e!important}
.record-meta-line{display:flex!important;align-items:center!important;gap:10px!important;flex-wrap:wrap!important;margin-top:6px!important;min-height:24px!important}
.record-upload-time{font-size:11px;color:#607889;background:#f5f8fa;border:1px solid #d8e4ea;border-radius:999px;padding:3px 8px;white-space:nowrap}
.assignment-native-wrap,.record-last-save,.record-meta-separator{display:none!important}
.summary-stats{gap:9px!important;align-items:stretch!important}
.quote-start-box.quote-time-range{min-width:410px!important;padding:9px 12px!important;overflow:visible!important}
.quote-two-row{display:grid!important;grid-template-columns:64px minmax(150px,1fr) minmax(150px,auto)!important;gap:12px!important;align-items:center!important;min-height:40px!important;overflow:visible!important}
.quote-two-row+.quote-two-row{border-top:1px dashed #efd48d!important}
.quote-row-label{font-size:11px!important;font-weight:800!important;color:#6c5530!important;white-space:nowrap!important}
.quote-main-time,.quote-end-time{font-size:16px!important;white-space:nowrap!important;color:#0c2435!important}
.quote-status-highlight,.quote-end-remaining{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-width:145px!important;max-width:none!important;padding:5px 10px!important;border-radius:999px!important;font-size:11px!important;font-weight:800!important;white-space:nowrap!important;overflow:visible!important;text-overflow:clip!important;margin:0!important}
.quote-inline-label{display:none!important}
.summary-admin-actions{width:132px!important;min-width:132px!important;padding:7px!important;gap:7px!important;box-sizing:border-box!important}
.record-lock-switch{display:none!important}
.record-lock-check{display:flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;min-height:38px!important;border:1px solid #bfd1dc!important;border-radius:9px!important;background:#f7fafc!important;color:#344f60!important;font-weight:800!important;font-size:12px!important;cursor:pointer!important}
.record-lock-check input{width:17px;height:17px;margin:0}
.summary-delete-btn{min-height:38px!important;background:#fee6e6!important;color:#a52323!important;border:1px solid #f4baba!important;border-radius:9px!important;font-weight:800!important}
.record-filter{display:flex!important;align-items:flex-end!important;gap:12px!important;flex-wrap:wrap!important}
.upload-date-filter{display:flex;align-items:flex-end;gap:7px;flex-wrap:wrap;padding-left:4px}
.upload-date-filter label{display:grid;gap:4px}.upload-date-filter label b{font-size:11px;color:#526b7a}
.upload-date-filter input[type=date]{height:38px;box-sizing:border-box;border:1px solid #ccdbe3;border-radius:8px;padding:0 8px;background:#fff;color:#17384b}
.filter-date-btn,.clear-date-filter{height:38px;display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;border-radius:8px;padding:0 11px;font-weight:800;font-size:12px;text-decoration:none}
.filter-date-btn{background:#155d82;color:#fff;border:0}.clear-date-filter{background:#f4f7f9;color:#496373;border:1px solid #ccdbe3}
/* quá hạn: mặc định có thể thu gọn bằng nút; compact line rõ và chỉ một hàng */
.record-card-collapsed .collapsed-summary-line{display:grid!important;grid-template-columns:145px minmax(260px,1.4fr) minmax(230px,1fr) 160px 200px auto!important;gap:8px!important;align-items:center!important;min-height:44px!important;padding:5px 8px!important}
.record-card-collapsed .collapsed-summary-line>span{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media(max-width:1250px){.quote-start-box.quote-time-range{min-width:360px!important}.quote-two-row{grid-template-columns:58px minmax(135px,1fr) minmax(130px,auto)!important;gap:8px!important}.quote-main-time,.quote-end-time{font-size:14px!important}.quote-status-highlight,.quote-end-remaining{min-width:125px!important}.record-summary .package-title-row{grid-template-columns:1fr}.record-summary .package-title-row>small{display:none}}
@media(max-width:760px){.record-summary .project-name{font-size:14px!important}.quote-start-box.quote-time-range{min-width:0!important;width:100%!important}.quote-two-row{grid-template-columns:58px 1fr!important;gap:5px 8px!important}.quote-status-highlight,.quote-end-remaining{grid-column:2;justify-self:start;min-width:0!important}.upload-date-filter{width:100%}.record-card-collapsed .collapsed-summary-line{display:flex!important;flex-wrap:wrap!important}.record-card-collapsed .collapsed-project{width:100%}}

/* Dashboard refinement 2026-08-13: assignment only inside Processing status */
.record-summary{
  grid-template-columns:minmax(430px,1.25fr) minmax(700px,1fr)!important;
  gap:14px!important;
  align-items:stretch!important;
  overflow:hidden!important;
}
.record-summary>.summary-main{min-height:96px!important;height:auto!important;padding:2px 8px 2px 2px!important}
.record-summary>.assignment-summary,
.record-summary .processing-status,
.record-summary .record-last-save,
.record-summary .record-meta-separator{display:none!important}
.record-summary .record-meta-line{min-height:20px!important;margin-top:3px!important}
.record-summary .record-upload-time{padding:3px 8px!important;background:#f7fafc!important}
.record-summary>.summary-stats{
  display:grid!important;
  grid-template-columns:90px minmax(330px,1.45fr) minmax(200px,.9fr) 132px!important;
  gap:9px!important;
  width:100%!important;
  height:auto!important;
  min-height:96px!important;
  align-items:stretch!important;
  padding:0!important;
}
.record-summary>.summary-stats>div,
.record-summary>.summary-stats>label,
.record-summary>.summary-stats>button{
  height:auto!important;
  min-height:96px!important;
  padding:10px!important;
  border-radius:12px!important;
  box-sizing:border-box!important;
}
.record-summary .quote-start-box.quote-time-range{min-width:0!important;padding:8px 12px!important}
.record-summary .quote-two-row{grid-template-columns:62px minmax(135px,1fr) minmax(125px,auto)!important;gap:8px!important;min-height:39px!important}
.record-summary .quote-state-box{padding:10px 12px!important;gap:8px!important}
.record-summary .quote-state-box>small{font-size:10px!important;letter-spacing:.03em!important}
.record-summary .quote-state-box label{font-size:11px!important;gap:7px!important}
.record-summary .summary-admin-actions{width:132px!important;min-width:132px!important;min-height:96px!important;height:auto!important;margin:0!important;padding:8px!important;gap:8px!important}
.record-summary .summary-admin-actions .record-lock-check,
.record-summary .summary-admin-actions .summary-delete-btn{min-height:38px!important;height:38px!important}

.compact-processing-panel{border:1px solid #c9d9e3!important;border-radius:12px!important;background:#f8fbfd!important;overflow:hidden!important}
.compact-processing-panel>summary{padding:11px 14px!important;background:#eef5f9!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important}
.compact-processing-panel .compact-processing-body{
  display:grid!important;
  grid-template-columns:minmax(240px,1fr) auto minmax(260px,340px)!important;
  align-items:center!important;
  gap:14px!important;
  padding:13px 14px!important;
  background:#fff!important;
}
.compact-processing-panel:not([open]) .compact-processing-body{display:none!important}
.processing-lock-state{min-width:0!important;color:#405a69!important;font-size:12px!important}
.processing-lock-action{display:flex!important;align-items:center!important;justify-content:flex-start!important}
.processing-assignment{display:grid!important;grid-template-columns:auto minmax(150px,1fr)!important;align-items:center!important;gap:8px 10px!important;margin:0!important}
.processing-assignment>span{font-size:11px!important;font-weight:900!important;text-transform:uppercase!important;color:#5b7180!important;white-space:nowrap!important}
.processing-assignment select{height:36px!important;width:100%!important;min-width:0!important;padding:0 9px!important;border:1px solid #bfcfd9!important;border-radius:8px!important;background:#fff!important;font-size:12px!important;font-weight:700!important}
.processing-assignment .assignment-save-status{grid-column:2!important;min-height:0!important;font-size:10px!important;color:#087443!important}
@media(max-width:1500px){
  .record-summary{grid-template-columns:1fr!important}
  .record-summary>.summary-stats{grid-column:auto!important;grid-template-columns:96px minmax(330px,1.5fr) minmax(220px,1fr) 132px!important}
}
@media(max-width:900px){
  .record-summary>.summary-stats{grid-template-columns:1fr 1fr!important}
  .record-summary .summary-admin-actions{width:100%!important;min-width:0!important}
  .compact-processing-panel .compact-processing-body{grid-template-columns:1fr!important}
  .processing-assignment{grid-template-columns:90px minmax(0,1fr)!important}
}
@media(max-width:620px){
  .record-summary>.summary-stats{grid-template-columns:1fr!important}
  .record-summary .quote-two-row{grid-template-columns:58px 1fr!important}
  .record-summary .quote-status-highlight,.record-summary .quote-end-remaining{grid-column:2!important;justify-self:start!important}
}

/* Dashboard layout hotfix 2026-08-13: readable metadata, time and admin actions */
details.record:not(.record-card-collapsed)>summary.record-summary{
  grid-template-columns:minmax(560px,1.2fr) minmax(760px,1fr)!important;
  min-height:142px!important;
  height:auto!important;
  padding:12px 16px!important;
  overflow:visible!important;
}
details.record:not(.record-card-collapsed)>summary.record-summary>.summary-main{
  min-height:116px!important;
  height:auto!important;
  overflow:visible!important;
  justify-content:flex-start!important;
}
details.record:not(.record-card-collapsed) .package-title-row{margin:5px 0 8px!important}
details.record:not(.record-card-collapsed) .summary-inline-meta{
  display:flex!important;
  visibility:visible!important;
  flex-wrap:wrap!important;
  gap:7px!important;
  min-height:28px!important;
  overflow:visible!important;
}
details.record:not(.record-card-collapsed) .investor-name,
details.record:not(.record-card-collapsed) .dashboard-inline-price{
  display:inline-flex!important;
  visibility:visible!important;
  width:auto!important;
  max-width:100%!important;
  min-height:27px!important;
  padding:4px 9px!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
}
details.record:not(.record-card-collapsed)>summary.record-summary>.summary-stats{
  grid-template-columns:90px minmax(390px,1.55fr) minmax(210px,.9fr) 145px!important;
  min-height:116px!important;
  height:auto!important;
  overflow:visible!important;
}
details.record:not(.record-card-collapsed)>summary.record-summary>.summary-stats>div,
details.record:not(.record-card-collapsed)>summary.record-summary>.summary-stats>label,
details.record:not(.record-card-collapsed)>summary.record-summary>.summary-stats>button{
  min-height:116px!important;
  height:auto!important;
  overflow:visible!important;
}
details.record:not(.record-card-collapsed) .quote-start-box.quote-time-range{
  display:grid!important;
  align-content:center!important;
  min-width:390px!important;
  padding:10px 13px!important;
  overflow:visible!important;
}
details.record:not(.record-card-collapsed) .quote-two-row{
  display:grid!important;
  grid-template-columns:58px minmax(155px,1fr) minmax(150px,auto)!important;
  gap:10px!important;
  align-items:center!important;
  min-height:47px!important;
  overflow:visible!important;
}
details.record:not(.record-card-collapsed) .quote-main-time,
details.record:not(.record-card-collapsed) .quote-end-time{
  position:static!important;
  display:block!important;
  min-width:0!important;
  font-size:15px!important;
  line-height:1.2!important;
  white-space:nowrap!important;
}
details.record:not(.record-card-collapsed) .quote-status-highlight,
details.record:not(.record-card-collapsed) .quote-end-remaining{
  position:static!important;
  inset:auto!important;
  transform:none!important;
  float:none!important;
  display:inline-flex!important;
  justify-self:end!important;
  min-width:0!important;
  max-width:100%!important;
  margin:0!important;
  padding:5px 9px!important;
  font-size:10px!important;
  line-height:1.15!important;
  white-space:nowrap!important;
  overflow:visible!important;
}
details.record:not(.record-card-collapsed) .summary-admin-actions{
  display:grid!important;
  grid-template-columns:1fr!important;
  grid-template-rows:1fr 1fr!important;
  width:145px!important;
  min-width:145px!important;
  min-height:116px!important;
  height:auto!important;
  gap:8px!important;
  padding:8px!important;
  margin:0!important;
  overflow:visible!important;
}
details.record:not(.record-card-collapsed) .summary-admin-actions .record-lock-check,
details.record:not(.record-card-collapsed) .summary-admin-actions .summary-delete-btn{
  width:100%!important;
  min-width:0!important;
  min-height:42px!important;
  height:auto!important;
  padding:7px 8px!important;
  white-space:nowrap!important;
  overflow:visible!important;
  font-size:11px!important;
}
@media(max-width:1600px){
 details.record:not(.record-card-collapsed)>summary.record-summary{grid-template-columns:1fr!important}
 details.record:not(.record-card-collapsed)>summary.record-summary>.summary-stats{grid-template-columns:96px minmax(390px,1.5fr) minmax(230px,1fr) 145px!important}
}
@media(max-width:950px){
 details.record:not(.record-card-collapsed)>summary.record-summary>.summary-stats{grid-template-columns:1fr 1fr!important}
 details.record:not(.record-card-collapsed) .quote-start-box.quote-time-range{min-width:0!important}
 details.record:not(.record-card-collapsed) .summary-admin-actions{width:100%!important;min-width:0!important}
}
@media(max-width:650px){
 details.record:not(.record-card-collapsed)>summary.record-summary>.summary-stats{grid-template-columns:1fr!important}
 details.record:not(.record-card-collapsed) .quote-two-row{grid-template-columns:58px minmax(0,1fr)!important}
 details.record:not(.record-card-collapsed) .quote-status-highlight,
 details.record:not(.record-card-collapsed) .quote-end-remaining{grid-column:2!important;justify-self:start!important;white-space:normal!important}
}

/* Final compact dashboard: giữ kích thước card cũ, chỉ sửa metadata/time/admin */
details.record:not(.record-card-collapsed)>summary.record-summary{
  display:grid!important;
  grid-template-columns:minmax(560px,1.05fr) minmax(760px,1.15fr)!important;
  gap:12px!important;
  min-height:116px!important;
  height:auto!important;
  padding:9px 14px!important;
  align-items:stretch!important;
  overflow:hidden!important;
}
details.record:not(.record-card-collapsed)>summary.record-summary>.summary-main{
  min-width:0!important;
  min-height:98px!important;
  height:auto!important;
  padding:0 4px!important;
  overflow:hidden!important;
}
details.record:not(.record-card-collapsed) .package-title-row{margin:3px 0 5px!important}
details.record:not(.record-card-collapsed) .project-name{
  font-size:14px!important;
  line-height:1.22!important;
  display:-webkit-box!important;
  -webkit-line-clamp:2!important;
  -webkit-box-orient:vertical!important;
  overflow:hidden!important;
}
details.record:not(.record-card-collapsed) .summary-inline-meta{
  display:flex!important;
  visibility:visible!important;
  flex-wrap:wrap!important;
  gap:5px!important;
  min-height:25px!important;
  margin-top:1px!important;
  overflow:hidden!important;
}
details.record:not(.record-card-collapsed) .investor-name,
details.record:not(.record-card-collapsed) .dashboard-inline-price{
  display:inline-flex!important;
  visibility:visible!important;
  width:auto!important;
  max-width:100%!important;
  min-height:24px!important;
  padding:3px 8px!important;
  font-size:11px!important;
  line-height:1.2!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
details.record:not(.record-card-collapsed) .record-meta-line{display:none!important}
details.record:not(.record-card-collapsed)>summary.record-summary>.summary-stats{
  display:grid!important;
  grid-template-columns:78px minmax(365px,1.55fr) minmax(190px,.9fr) 126px!important;
  gap:8px!important;
  min-width:0!important;
  min-height:98px!important;
  height:auto!important;
  padding:0!important;
  align-items:stretch!important;
  overflow:hidden!important;
}
details.record:not(.record-card-collapsed)>summary.record-summary>.summary-stats>div,
details.record:not(.record-card-collapsed)>summary.record-summary>.summary-stats>label,
details.record:not(.record-card-collapsed)>summary.record-summary>.summary-stats>button{
  min-width:0!important;
  min-height:98px!important;
  height:98px!important;
  padding:7px!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
}
details.record:not(.record-card-collapsed) .quote-start-box.quote-time-range{
  display:grid!important;
  align-content:center!important;
  min-width:0!important;
  width:auto!important;
  padding:6px 10px!important;
  overflow:hidden!important;
}
details.record:not(.record-card-collapsed) .quote-two-row{
  display:grid!important;
  grid-template-columns:55px minmax(135px,1fr) minmax(125px,auto)!important;
  gap:7px!important;
  align-items:center!important;
  min-width:0!important;
  min-height:42px!important;
  overflow:hidden!important;
}
details.record:not(.record-card-collapsed) .quote-row-label{font-size:10px!important}
details.record:not(.record-card-collapsed) .quote-main-time,
details.record:not(.record-card-collapsed) .quote-end-time{
  position:static!important;
  display:block!important;
  min-width:0!important;
  margin:0!important;
  font-size:13px!important;
  line-height:1.15!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
details.record:not(.record-card-collapsed) .quote-status-highlight,
details.record:not(.record-card-collapsed) .quote-end-remaining{
  position:static!important;
  inset:auto!important;
  transform:none!important;
  float:none!important;
  display:inline-flex!important;
  justify-self:end!important;
  min-width:0!important;
  max-width:100%!important;
  margin:0!important;
  padding:4px 7px!important;
  font-size:9px!important;
  line-height:1.1!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
details.record:not(.record-card-collapsed) .quote-state-box{padding:7px 9px!important;gap:5px!important}
details.record:not(.record-card-collapsed) .quote-state-box>small{font-size:9px!important}
details.record:not(.record-card-collapsed) .quote-state-box label{font-size:10px!important;overflow:visible!important}
details.record:not(.record-card-collapsed) .summary-admin-actions{
  display:grid!important;
  grid-template-columns:1fr!important;
  grid-template-rows:1fr 1fr!important;
  width:126px!important;
  min-width:126px!important;
  min-height:98px!important;
  height:98px!important;
  gap:6px!important;
  padding:6px!important;
  margin:0!important;
  overflow:hidden!important;
}
details.record:not(.record-card-collapsed) .summary-admin-actions .record-lock-check,
details.record:not(.record-card-collapsed) .summary-admin-actions .summary-delete-btn{
  width:100%!important;
  min-width:0!important;
  min-height:39px!important;
  height:39px!important;
  padding:5px 6px!important;
  font-size:10px!important;
  white-space:nowrap!important;
  overflow:visible!important;
}
@media(max-width:1450px){
 details.record:not(.record-card-collapsed)>summary.record-summary{grid-template-columns:1fr!important;overflow:visible!important}
 details.record:not(.record-card-collapsed)>summary.record-summary>.summary-stats{grid-template-columns:78px minmax(365px,1.55fr) minmax(200px,1fr) 126px!important}
}
@media(max-width:850px){
 details.record:not(.record-card-collapsed)>summary.record-summary>.summary-stats{grid-template-columns:1fr 1fr!important}
 details.record:not(.record-card-collapsed) .summary-admin-actions{width:100%!important;min-width:0!important}
}
@media(max-width:560px){
 details.record:not(.record-card-collapsed)>summary.record-summary>.summary-stats{grid-template-columns:1fr!important}
 details.record:not(.record-card-collapsed) .quote-two-row{grid-template-columns:52px minmax(0,1fr)!important}
 details.record:not(.record-card-collapsed) .quote-status-highlight,
 details.record:not(.record-card-collapsed) .quote-end-remaining{grid-column:2!important;justify-self:start!important}
}

/* Final width correction: thu khung trạng thái, chừa mép phải và hiện đủ badge */
details.record:not(.record-card-collapsed)>summary.record-summary>.summary-stats{
  grid-template-columns:76px minmax(350px,1.6fr) 160px 118px!important;
  column-gap:7px!important;
  padding-right:5px!important;
}
details.record:not(.record-card-collapsed) .quote-two-row{
  grid-template-columns:52px minmax(130px,1fr) minmax(145px,auto)!important;
  gap:6px!important;
}
details.record:not(.record-card-collapsed) .quote-status-highlight,
details.record:not(.record-card-collapsed) .quote-end-remaining{
  width:auto!important;
  min-width:0!important;
  max-width:none!important;
  padding:4px 6px!important;
  font-size:8.5px!important;
  white-space:nowrap!important;
  overflow:visible!important;
  text-overflow:clip!important;
}
details.record:not(.record-card-collapsed) .quote-state-box{
  width:160px!important;
  min-width:160px!important;
  padding:7px!important;
}
details.record:not(.record-card-collapsed) .summary-admin-actions{
  width:118px!important;
  min-width:118px!important;
  margin-right:5px!important;
}
details.record:not(.record-card-collapsed) .summary-admin-actions .record-lock-check,
details.record:not(.record-card-collapsed) .summary-admin-actions .summary-delete-btn{
  font-size:9.5px!important;
  padding-left:4px!important;
  padding-right:4px!important;
}
@media(max-width:1450px){
 details.record:not(.record-card-collapsed)>summary.record-summary>.summary-stats{
   grid-template-columns:76px minmax(350px,1.6fr) 160px 118px!important;
 }
}
.record-kind-label{display:inline-flex;align-items:center;justify-content:center;align-self:flex-start;min-height:30px;padding:4px 10px;border-radius:8px;font-size:11px;font-weight:900;white-space:nowrap;margin-right:7px;border:1px solid #83b9dc;background:#eaf6ff;color:#075b91}.record-kind-label.compact{border-color:#d4a94a;background:#fff6d9;color:#805500}

/* === V13.7.18 STABLE BG ONLINE: ONLY FILTER + COMPACT NOTE === */
.record-filter{gap:10px!important;flex-wrap:wrap!important}.record-filter>label{min-width:150px!important}.record-filter>label select{min-width:150px!important;max-width:230px!important;height:36px!important;padding:7px 9px!important}
.dashboard-quote-note-compact{display:grid!important;grid-template-columns:68px minmax(180px,1fr) 54px!important;gap:5px!important;align-items:center!important;width:min(100%,700px)!important;margin-top:5px!important;padding:4px 5px!important;border:1px solid #d3dfe7!important;border-radius:7px!important;background:#f7fafc!important;box-sizing:border-box!important}
.dashboard-quote-note-compact>span{color:#526b7d!important;font-size:10px!important;font-weight:900!important;white-space:nowrap!important}
.dashboard-quote-note-compact .dashboard-quote-note-input{width:100%!important;min-width:0!important;height:27px!important;margin:0!important;padding:4px 7px!important;border:1px solid #c7d5df!important;border-radius:6px!important;background:#fff!important;color:#17384f!important;font:11px Arial,sans-serif!important;box-sizing:border-box!important}
.dashboard-quote-note-compact .save-dashboard-quote-note{width:54px!important;min-width:54px!important;height:27px!important;min-height:27px!important;margin:0!important;padding:3px 6px!important;border-radius:6px!important;background:#123f63!important;color:#fff!important;font-size:10px!important;font-weight:900!important}
.dashboard-quote-note-compact.has-note{background:#665b49!important;border-color:#7e6e55!important}.dashboard-quote-note-compact.has-note>span{color:#fff2c7!important}.dashboard-quote-note-compact.has-note .dashboard-quote-note-input{background:#fff8de!important;border-color:#d7bd74!important;color:#3e3115!important;font-weight:700!important}
details.record.record-has-dashboard-note{border-color:#826f4d!important;box-shadow:0 0 0 2px rgba(103,83,49,.14),0 3px 12px rgba(24,58,77,.08)!important}details.record.record-has-dashboard-note>summary.record-summary{background:#eee8dc!important}
@media(max-width:850px){.dashboard-quote-note-compact{grid-template-columns:1fr!important;width:100%!important}.dashboard-quote-note-compact .save-dashboard-quote-note{width:100%!important;max-width:none!important}.record-filter>label{width:100%!important}.record-filter>label select{width:100%!important;max-width:none!important}}


/* =========================================================
   V13.7.19 - READY TO QUOTE / CẦN CHÀO GIÁ
   Không dùng ::before làm grid-item nên không bể layout.
   ========================================================= */
details.record.record-ready-to-quote{
  position:relative!important;
  border:2px solid #e39a12!important;
  background:#fffdf7!important;
  box-shadow:0 0 0 3px rgba(227,154,18,.10),0 6px 18px rgba(36,57,73,.08)!important;
}
details.record.record-ready-to-quote>summary.record-summary{
  background:linear-gradient(90deg,#fff8df 0,#fffdf8 32%,#fff 100%)!important;
}
details.record.record-ready-to-quote::after{
  content:"";
  position:absolute;
  left:0;top:12px;bottom:12px;
  width:4px;
  border-radius:0 5px 5px 0;
  background:#e39a12;
  pointer-events:none;
}
.record-ready-badge{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  align-self:flex-start!important;
  width:auto!important;
  max-width:max-content!important;
  min-height:22px!important;
  margin:0 0 1px 0!important;
  padding:4px 9px!important;
  border-radius:999px!important;
  background:#e98b00!important;
  color:#fff!important;
  font-size:9px!important;
  line-height:1!important;
  font-weight:900!important;
  letter-spacing:.03em!important;
  white-space:nowrap!important;
  box-shadow:0 2px 7px rgba(164,98,0,.16)!important;
}
/* Badge nằm trong cột thông tin, tuyệt đối không tham gia grid ngoài */
.record-ready-to-quote .summary-main{
  position:relative!important;
}
.record-ready-to-quote .quote-state-box{
  background:#fff8df!important;
  border-color:#e6b85c!important;
}
.record-ready-to-quote .ready-quote-toggle{
  accent-color:#d98500!important;
}
.record-ready-to-quote .dashboard-quote-note-compact{
  border-color:#e5cf99!important;
}
.record-just-promoted{
  animation:qiReadyPromote 1.05s ease-out;
}
@keyframes qiReadyPromote{
  0%{transform:translateY(-7px);box-shadow:0 0 0 5px rgba(227,154,18,.22),0 10px 28px rgba(36,57,73,.14)}
  100%{transform:none}
}

/* Bảo đảm layout summary không bị pseudo badge cũ can thiệp */
.record-attention>.record-summary:before{display:none!important;content:none!important}
.record.record-attention{border-width:1px!important;box-shadow:none!important;background:inherit!important}

/* Card Cần chào giá vẫn dùng đúng layout production */
details.record.record-ready-to-quote>summary.record-summary{
  display:grid!important;
}
details.record.record-ready-to-quote>summary.record-summary>.summary-main,
details.record.record-ready-to-quote>summary.record-summary>.summary-stats,
details.record.record-ready-to-quote>summary.record-summary>.assignment-summary{
  min-width:0!important;
}

/* Khi đã chào giá thì không còn kiểu nhấn Cần chào giá */
details.record[data-ready="1"]:has(.quote-sent-toggle:checked){
  border-color:#cbd9e3!important;
  background:#fff!important;
  box-shadow:0 3px 12px rgba(24,58,77,.06)!important;
}
details.record[data-ready="1"]:has(.quote-sent-toggle:checked)>summary.record-summary{
  background:#fff!important;
}


/* V13.7.20 – User/NCC/mail/sort polish */
.user-create-form{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px!important;align-items:end}
.user-create-form label{display:grid;gap:5px}
.user-create-form input,.user-create-form select{height:38px;padding:8px 10px;border:1px solid #c4d6e2;border-radius:8px}
.dashboard-quote-note-input:focus{outline:2px solid rgba(18,63,99,.18)!important;border-color:#7aa7c5!important}
.supplier option{font-size:12px}
.record[data-overdue="1"]:not([data-force-open="1"]){opacity:.92}
.record[data-overdue="1"]>.record-summary{background:#f6f7f8!important}
\n/* V13.7.21 keyword sync */\n.keyword-sync-panel summary{font-weight:900}.keyword-sync-panel .uploadbar{align-items:end}.keyword-sync-result{display:flex;gap:10px;flex-wrap:wrap}.keyword-sync-result>span{padding:6px 9px;border-radius:999px;background:#eef5f8;border:1px solid #c8d9e3}.keyword-sync-panel .subtab-help{max-width:620px}\n
/* V13.7.22 – Ghi chú BG giữ focus ổn định */
.dashboard-quote-note-input{touch-action:manipulation}
.dashboard-quote-note-input:focus{
  outline:2px solid rgba(20,91,136,.18)!important;
  border-color:#6b9fbe!important;
  box-shadow:0 0 0 2px rgba(20,91,136,.06)!important;
}


/* =========================================================
   V13.7.23 – GHI CHÚ BG RA NGOÀI <summary>
   Fix dứt điểm Space làm đóng/mở <details>.
   ========================================================= */
details.record > .dashboard-quote-note-outside{
  display:grid!important;
  grid-template-columns:72px minmax(220px,1fr) 58px!important;
  gap:6px!important;
  align-items:center!important;
  margin:0 12px 8px 12px!important;
  padding:5px 6px!important;
  min-height:39px!important;
  border:1px solid #d3dfe7!important;
  border-radius:8px!important;
  background:#f7fafc!important;
  box-sizing:border-box!important;
}
details.record > .dashboard-quote-note-outside > span{
  color:#526b7d!important;
  font-size:10px!important;
  font-weight:900!important;
  white-space:nowrap!important;
}
details.record > .dashboard-quote-note-outside .dashboard-quote-note-input{
  width:100%!important;
  min-width:0!important;
  height:29px!important;
  margin:0!important;
  padding:4px 8px!important;
  border:1px solid #c7d5df!important;
  border-radius:6px!important;
  background:#fff!important;
  color:#17384f!important;
  font:11px Arial,sans-serif!important;
  box-sizing:border-box!important;
}
details.record > .dashboard-quote-note-outside .dashboard-quote-note-input:focus{
  outline:2px solid rgba(20,91,136,.18)!important;
  border-color:#6b9fbe!important;
  box-shadow:0 0 0 2px rgba(20,91,136,.06)!important;
}
details.record > .dashboard-quote-note-outside .save-dashboard-quote-note{
  width:58px!important;
  min-width:58px!important;
  height:29px!important;
  min-height:29px!important;
  margin:0!important;
  padding:3px 6px!important;
  border-radius:6px!important;
  background:#123f63!important;
  color:#fff!important;
  font-size:10px!important;
  font-weight:900!important;
}
details.record > .dashboard-quote-note-outside.has-note{
  background:#665b49!important;
  border-color:#7e6e55!important;
}
details.record > .dashboard-quote-note-outside.has-note > span{color:#fff2c7!important}
details.record > .dashboard-quote-note-outside.has-note .dashboard-quote-note-input{
  background:#fff8de!important;
  border-color:#d7bd74!important;
  color:#3e3115!important;
  font-weight:700!important;
}

/* Ngăn style note cũ trong summary tác động nếu cache CSS còn */
.record-summary .dashboard-quote-note-compact{display:none!important}

@media(max-width:850px){
 details.record > .dashboard-quote-note-outside{
   grid-template-columns:1fr!important;
   margin:0 8px 8px 8px!important;
 }
 details.record > .dashboard-quote-note-outside .save-dashboard-quote-note{
   width:100%!important;
   max-width:none!important;
 }
}


/* =========================================================
   V13.7.24 – NOTE PREVIEW TRÊN DASHBOARD
   Ghi chú vẫn edit ngoài <summary>, nhưng preview nằm trong summary
   nên HSMT thu nhỏ vẫn nhìn thấy ngay.
   ========================================================= */
.dashboard-note-preview{
  display:none;
  align-items:center;
  gap:7px;
  width:min(100%,760px);
  min-width:0;
  margin:2px 0 3px 0;
  padding:5px 8px;
  border:1px solid #dfae42;
  border-left:4px solid #d77d00;
  border-radius:7px;
  background:#fff1c9;
  box-sizing:border-box;
  color:#5b3a00;
  box-shadow:0 2px 6px rgba(132,84,0,.08);
}
.dashboard-note-preview.is-visible{display:flex!important}
.dashboard-note-preview-label{
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:20px;
  padding:3px 6px;
  border-radius:5px;
  background:#a95d00;
  color:#fff;
  font-size:9px;
  line-height:1;
  font-weight:900;
  letter-spacing:.04em;
  white-space:nowrap;
}
.dashboard-note-preview-text{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:#5b3a00;
  font-size:11px;
  line-height:1.25;
  font-weight:800;
}

/* Card có note: nhận biết ngay cả khi chưa mở */
details.record.record-has-dashboard-note{
  border-color:#c68616!important;
  box-shadow:0 0 0 2px rgba(198,134,22,.12),0 4px 14px rgba(24,58,77,.08)!important;
}
details.record.record-has-dashboard-note>summary.record-summary{
  background:linear-gradient(90deg,#fff7dc 0,#fffdf6 42%,#fff 100%)!important;
}
details.record.record-has-dashboard-note>summary.record-summary .summary-main{
  position:relative;
}
details.record.record-has-dashboard-note>summary.record-summary .summary-main:after{
  content:"";
  position:absolute;
  left:-7px;
  top:0;
  bottom:0;
  width:3px;
  border-radius:3px;
  background:#d77d00;
}

/* Nếu vừa Cần chào giá vừa có Ghi chú: vẫn giữ note rõ, không phá layout */
details.record.record-ready-to-quote.record-has-dashboard-note .dashboard-note-preview{
  background:#fff0bc;
  border-color:#d89a1f;
}

/* Mobile */
@media(max-width:850px){
 .dashboard-note-preview{
   width:100%;
 }
 .dashboard-note-preview-text{
   white-space:normal;
   display:-webkit-box;
   -webkit-box-orient:vertical;
   -webkit-line-clamp:2;
   overflow:hidden;
 }
}

/* V13.7.25 - Badge CẦN CHÀO GIÁ + GHI CHÚ BG inline, căn trái */
.summary-alert-row{
 display:flex!important;align-items:center!important;justify-content:flex-start!important;
 flex-wrap:wrap!important;gap:7px!important;width:100%!important;min-width:0!important;
 margin:3px 0 4px!important;text-align:left!important;
}
.summary-alert-row .record-ready-badge{flex:0 0 auto!important;margin:0!important}
.summary-alert-row .dashboard-note-preview{
 display:none!important;flex:0 1 auto!important;width:auto!important;max-width:680px!important;
 min-width:0!important;min-height:24px!important;margin:0!important;padding:3px 7px!important;
 border:1px solid #dfae42!important;border-left:3px solid #d77d00!important;border-radius:6px!important;
 background:#fff1c9!important;box-shadow:none!important;align-items:center!important;gap:6px!important;
 text-align:left!important;
}
.summary-alert-row .dashboard-note-preview.is-visible{display:inline-flex!important}
.summary-alert-row .dashboard-note-preview-label{
 flex:0 0 auto!important;min-height:18px!important;padding:2px 5px!important;
 border-radius:4px!important;font-size:8px!important;line-height:1!important;
}
.summary-alert-row .dashboard-note-preview-text{
 min-width:0!important;max-width:540px!important;font-size:10px!important;line-height:1.15!important;
 text-align:left!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;
}
@media(max-width:850px){
 .summary-alert-row{gap:5px!important}
 .summary-alert-row .dashboard-note-preview{max-width:100%!important}
 .summary-alert-row .dashboard-note-preview-text{max-width:calc(100vw - 210px)!important}
}


/* =========================================================
   V13.7.26 – CẦN CHÀO GIÁ + GHI CHÚ BG BẮT BUỘC 1 HÀNG
   ========================================================= */
.summary-alert-inline-v26{
 display:flex!important;
 flex-direction:row!important;
 align-items:center!important;
 justify-content:flex-start!important;
 flex-wrap:nowrap!important;
 gap:8px!important;
 width:100%!important;
 min-width:0!important;
 margin:3px 0 4px 0!important;
 padding:0!important;
 text-align:left!important;
}
.summary-alert-inline-v26>.record-ready-badge{
 flex:0 0 auto!important;
 align-self:center!important;
 margin:0!important;
}
.dashboard-note-inline-v26{
 display:none!important;
 flex:0 1 auto!important;
 align-items:center!important;
 justify-content:flex-start!important;
 gap:6px!important;
 min-width:0!important;
 max-width:620px!important;
 height:24px!important;
 padding:3px 8px!important;
 margin:0!important;
 border:1px solid #dfa127!important;
 border-left:3px solid #c66f00!important;
 border-radius:6px!important;
 background:#fff0bf!important;
 color:#5b3a00!important;
 box-sizing:border-box!important;
 white-space:nowrap!important;
 overflow:hidden!important;
 vertical-align:middle!important;
}
.dashboard-note-inline-v26.is-visible{
 display:inline-flex!important;
}
.dashboard-note-inline-v26>b{
 flex:0 0 auto!important;
 display:inline-flex!important;
 align-items:center!important;
 height:17px!important;
 padding:2px 5px!important;
 margin:0!important;
 border-radius:4px!important;
 background:#a95d00!important;
 color:#fff!important;
 font-size:8px!important;
 line-height:1!important;
 font-weight:900!important;
 letter-spacing:.03em!important;
 white-space:nowrap!important;
}
.dashboard-note-inline-text-v26{
 display:block!important;
 flex:1 1 auto!important;
 min-width:0!important;
 max-width:500px!important;
 overflow:hidden!important;
 text-overflow:ellipsis!important;
 white-space:nowrap!important;
 text-align:left!important;
 font-size:10px!important;
 line-height:1.1!important;
 font-weight:800!important;
 color:#5b3a00!important;
}

/* Vô hiệu hóa hoàn toàn block preview cũ nếu CSS cache còn rule */
.summary-alert-inline-v26 .dashboard-note-preview,
.summary-alert-row{ }

/* Card có note không tự tạo thêm khoảng trống */
details.record.record-has-dashboard-note>summary.record-summary .summary-main{
 gap:4px!important;
}

@media(max-width:1050px){
 .summary-alert-inline-v26{flex-wrap:wrap!important}
 .dashboard-note-inline-v26{max-width:100%!important}
 .dashboard-note-inline-text-v26{max-width:calc(100vw - 260px)!important}
}

/* V13.7.31 - Giao hàng theo Phạm vi cung cấp MSC */
.pricing-simple-item .col-delivery{width:155px}
.pricing-simple-item .delivery-cell{min-width:145px;background:#f6fbff}
.delivery-cell .delivery-time{width:100%;box-sizing:border-box;font-weight:700;text-align:center;border:1px solid #9dc5df;background:#fff;color:#123f63}
.delivery-cell small{display:block;margin-top:5px;text-align:center;color:#607d94;font-size:10px;font-weight:700}
.compact-view .pricing-simple-item .col-delivery{width:135px!important}
.compact-view .delivery-cell{min-width:125px!important}
.email-notice-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.email-notice-kpis>div{border:1px solid #d8e3e9;border-radius:12px;padding:16px;background:#f9fbfc}.email-notice-kpis b{display:block;font-size:25px;color:#0d5b82}.email-notice-kpis span{font-size:12px;color:#627887}.email-notice-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;align-items:end}.email-notice-form>label{display:block;margin:12px 0}.email-cc-users{margin:14px 0;padding:12px;border:1px solid #dce6eb;border-radius:10px}.email-cc-users>div{display:flex;gap:8px 16px;flex-wrap:wrap;margin-top:8px}.email-cc-users label{display:flex;align-items:center;gap:6px}.email-cc-users small{color:#78909c}.email-send-actions{display:flex;gap:10px;flex-wrap:wrap}.cron-url-box{display:flex;gap:8px;align-items:center;background:#f4f7f9;border:1px solid #d8e3e9;border-radius:9px;padding:10px}.cron-url-box code{flex:1;overflow:auto;white-space:nowrap}.muted{color:#6a7d88}@media(max-width:900px){.email-notice-kpis,.email-notice-grid{grid-template-columns:1fr 1fr}}@media(max-width:560px){.email-notice-kpis,.email-notice-grid{grid-template-columns:1fr}.cron-url-box{display:block}.cron-url-box button{margin-top:8px}}


/* V14.0 — Global search / RQ / audit */
.dashboard-global-search{display:flex;align-items:center;gap:5px;margin-left:auto;margin-right:14px;min-width:280px;max-width:430px;flex:1}
.dashboard-global-search input{width:100%;min-width:0;background:#fff;border:1px solid #38505d;border-radius:8px;padding:8px 10px;font-size:12px;color:#18384f}
.dashboard-global-search button{border:0;border-radius:8px;background:#d5ff50;color:#173400;font-weight:900;padding:8px 10px;cursor:pointer}
.investor-dashboard-link{color:inherit;text-decoration:underline;text-decoration-color:#7ab1d0;text-underline-offset:2px}
.dashboard-note-author,.dashboard-note2-author{display:block;min-width:160px;color:#60788a;font-size:10px;font-weight:700}
.dashboard-quote-note-outside.admin-note2{background:#f5f0ff;border-color:#c8b5ef}
.dashboard-admin-note2-readonly{margin:8px 16px;padding:9px 12px;border-radius:8px;background:#f5f0ff;border:1px solid #d3c6ef;color:#3b2861}
.rq-upload-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.rq-upload-grid label{display:flex;flex-direction:column;gap:5px;font-size:12px}.rq-upload-grid .wide{grid-column:span 2}.rq-upload-grid input{padding:9px;border:1px solid #cbdbe7;border-radius:7px}.rq-upload-grid button{align-self:end}.rq-upload-hint{grid-column:1/-1;color:#647c8d}
@media(max-width:1100px){.dashboard-global-search{max-width:300px}.rq-upload-grid{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.dashboard-global-search{order:3;flex-basis:100%;max-width:none;margin:7px 0}.rq-upload-grid{grid-template-columns:1fr}.rq-upload-grid .wide{grid-column:auto}}

/* V14.1 report rules */
.pipeline-rule-highlight{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0;padding:11px 13px;border:2px solid #efc34a;border-radius:10px;background:#fff8d9;color:#594500}.pipeline-rule-highlight b{color:#8a5b00;margin-right:4px}.pipeline-rule-highlight span{background:#fff;border:1px solid #efd58a;border-radius:999px;padding:5px 9px;font-size:11px;font-weight:750}.pipeline-export-bar{display:flex;gap:10px;align-items:end;flex-wrap:wrap}.pipeline-export-bar label{display:grid;gap:4px}.pipeline-export-bar select{padding:8px;border:1px solid #cbdbe7;border-radius:7px}

/* V14.2 — Report rules, note ownership, price version history */
.pipeline-rule-highlight{display:flex;align-items:flex-start;gap:14px;background:#fff7d6;border:2px solid #e9b83f;border-radius:12px;padding:12px 15px;margin:10px 0 14px;color:#4f3a00}
.pipeline-rule-highlight>b{white-space:nowrap;background:#8a6100;color:#fff;border-radius:8px;padding:7px 10px;font-size:12px}
.pipeline-rule-highlight ul{margin:0;padding-left:20px;display:grid;gap:5px}.pipeline-rule-highlight li{line-height:1.45}.pipeline-export-bar small{display:block;color:#5f7485;font-weight:700;max-width:680px}
.dashboard-quote-note-outside.note-readonly{background:#f5f6f7;border-color:#d8e0e6}.dashboard-quote-note-outside.note-readonly input{background:#eef1f3;color:#4b5963;cursor:not-allowed}.dashboard-quote-note-outside.note-readonly .dashboard-note-author{color:#8a5b00}
.price-version-panel{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 16px 10px;padding:9px 11px;border:1px solid #cedce7;border-radius:10px;background:#f8fbfd}.price-version-panel .load-price-versions{font-weight:900}.price-version-owner{font-size:12px;color:#4b6577;font-weight:800}.price-version-history{flex-basis:100%;display:grid;gap:7px}.price-version-entry{border:1px solid #d7e3eb;border-radius:8px;background:#fff;padding:7px 9px}.price-version-entry summary{cursor:pointer;color:#123f63}.price-version-entry>div{display:grid;gap:6px;padding-top:7px}.price-version-entry>div>span{margin-right:15px}.price-version-items{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:5px}.price-version-items>div{display:flex;justify-content:space-between;gap:8px;border-top:1px dashed #dde6ec;padding-top:5px;font-size:11px}.price-version-items span{color:#62798a;white-space:nowrap}.price-version-empty{color:#687f91;font-style:italic}
@media(max-width:850px){.pipeline-rule-highlight{display:block}.pipeline-rule-highlight>b{display:inline-block;margin-bottom:8px}.price-version-items{grid-template-columns:1fr}}


/* =========================================================
   V14.3 — MENU / REPORT / NOTE / VERSION UI
   ========================================================= */

/* Giữ toàn bộ header Admin/User trên một hàng ở desktop */
@media(min-width:1181px){
 .dashboard-header{
   display:grid!important;
   grid-template-columns:235px minmax(650px,1fr) minmax(245px,330px) auto!important;
   align-items:center!important;
   gap:8px!important;
   padding:0 12px!important;
   min-height:82px!important;
 }
 .dashboard-main-nav{
   display:grid!important;
   grid-template-columns:repeat(6,minmax(100px,1fr))!important;
   min-width:0!important;
 }
 .dashboard-nav-item{
   margin:8px 2px!important;
   padding:9px 9px!important;
 }
 .dashboard-nav-item b{font-size:13px!important}
 .dashboard-nav-item small{font-size:9px!important}
 .dashboard-global-search{margin:0!important;min-width:0!important;max-width:none!important}
 .dashboard-account{grid-column:auto!important;padding-bottom:0!important;margin-left:0!important}
}
@media(max-width:1180px){
 .dashboard-header{display:flex!important;flex-wrap:wrap!important;align-items:center!important}
 .dashboard-brand{min-width:210px}
 .dashboard-main-nav{order:3;width:100%;overflow-x:auto;display:flex!important}
 .dashboard-nav-item{min-width:135px!important}
 .dashboard-global-search{margin-left:auto!important;max-width:330px!important}
 .dashboard-account{margin-left:auto!important}
}

/* Ghi chú sáng, dễ đọc */
details.record > .dashboard-quote-note-outside,
details.record > .dashboard-quote-note-outside.has-note{
 background:#fff9e8!important;
 border-color:#e8c66d!important;
 color:#3d331f!important;
 box-shadow:none!important;
}
details.record > .dashboard-quote-note-outside > span,
details.record > .dashboard-quote-note-outside.has-note > span{
 color:#6e5200!important;
}
details.record > .dashboard-quote-note-outside .dashboard-quote-note-input,
details.record > .dashboard-quote-note-outside.has-note .dashboard-quote-note-input{
 background:#fff!important;
 color:#1c2f3b!important;
 border-color:#d9c27a!important;
 font-weight:650!important;
}
details.record > .dashboard-quote-note-outside.note-readonly,
details.record > .dashboard-quote-note-outside.note-readonly.has-note{
 background:#f7f8f9!important;
 border-color:#d6dfe5!important;
}
details.record > .dashboard-quote-note-outside.note-readonly input{
 background:#fff!important;
 color:#394b57!important;
 opacity:1!important;
}
.dashboard-note-author,.dashboard-note2-author{
 color:#6a7780!important;
 font-size:10px!important;
 font-weight:800!important;
}
.dashboard-quote-note-outside.admin-note2,
.dashboard-quote-note-outside.admin-note2.has-note{
 background:#f4f0ff!important;
 border-color:#c9b8ee!important;
}
.dashboard-quote-note-outside.admin-note2>span{color:#5a3b97!important}

/* Lịch sử giá ngay sát trước bảng hạng mục */
.price-version-panel{
 margin:12px 0 8px!important;
 padding:10px 12px!important;
 background:#edf7ff!important;
 border:1px solid #b9d9ec!important;
 border-left:4px solid #1578aa!important;
 border-radius:9px!important;
}
.price-version-panel .load-price-versions{
 background:#155d82!important;color:#fff!important;border-color:#155d82!important;
}
.price-version-owner{color:#244b62!important}

/* Report mặc định đóng; khi mở hiển thị nguyên tắc + checkbox user rõ */
.pipeline-report-panel>summary{font-weight:900!important}
.pipeline-user-pick{min-width:360px;max-width:720px;padding:9px 11px;border:1px solid #d4e0e7;border-radius:9px;background:#f8fbfd}
.pipeline-user-pick>b{display:block;margin-bottom:6px;color:#18384f}
.pipeline-user-pick-list{display:flex;gap:7px;flex-wrap:wrap}
.pipeline-user-pick-list label{display:flex;align-items:center;gap:5px;border:1px solid #cddae3;border-radius:999px;padding:6px 9px;background:#fff;font-weight:800;font-size:11px}
.pipeline-user-pick small{display:block;margin-top:6px;color:#60778a}

/* User management */
.user-permission-grid .permission-table th,.user-permission-grid .permission-table td{vertical-align:middle}
.subtab-permissions h4{margin-top:15px;color:#17384f}

.dashboard-note-author,.dashboard-note2-author{grid-column:1/-1!important;padding:1px 2px 0!important}
.dashboard-quote-note-outside .save-dashboard-admin-note2{min-width:64px;height:29px;border:0;border-radius:6px;background:#6848a8;color:#fff;font-size:10px;font-weight:900;cursor:pointer}

/* =========================================================
   V14.4 — compact report + YCBG upload + permissions
   ========================================================= */
.pipeline-report-panel{padding:0!important;overflow:hidden}
.pipeline-report-panel>summary{padding:11px 15px!important;font-size:14px!important}
.pipeline-report-compact{padding:9px 12px 11px;background:#fbfdff}
.pipeline-rule-mini{font-size:11px;line-height:1.4;color:#5b4b19;background:#fff8dd;border:1px solid #ead17b;border-radius:7px;padding:6px 9px;margin-bottom:8px}
.pipeline-export-bar.compact{display:flex!important;align-items:flex-end!important;gap:10px!important;flex-wrap:wrap!important;padding:0!important;border:0!important;background:transparent!important}
.pipeline-export-bar.compact>label{min-width:155px;display:grid;gap:4px;font-size:10px;color:#60788a}
.pipeline-export-bar.compact select{height:35px;padding:6px 9px;border:1px solid #cbd9e2;border-radius:7px;background:#fff}
.pipeline-user-pick.compact{display:flex!important;align-items:center!important;gap:8px!important;flex:1!important;min-width:360px!important;max-width:none!important;padding:5px 8px!important}
.pipeline-user-pick.compact>span{font-size:10px;font-weight:900;color:#4a6271;white-space:nowrap}
.pipeline-user-pick.compact .pipeline-user-pick-list{gap:5px!important}
.pipeline-user-pick.compact .pipeline-user-pick-list label{padding:4px 7px!important;font-size:10px!important}
.pipeline-current-user{display:flex;align-items:center;gap:8px;padding:6px 9px;border:1px solid #d5e0e7;border-radius:7px;background:#fff}
.pipeline-current-user small{color:#6b8190}
.pipeline-export-bar.compact button{height:35px;padding:0 14px!important;white-space:nowrap}

.permission-table th,.permission-table td{text-align:center}
.permission-table th:first-child,.permission-table td:first-child{text-align:left}

.rq-upload-grid label small{font-size:10px;color:#647b8a;line-height:1.35}
.rq-upload-grid input[type=file]{background:#fff}

@media(max-width:900px){
 .pipeline-export-bar.compact{align-items:stretch!important}
 .pipeline-user-pick.compact{min-width:100%!important;display:block!important}
 .pipeline-user-pick.compact>span{display:block;margin-bottom:5px}
}

/* =========================================================
   V14.5 — FAST RECORD / NOTE / YCBG / SEARCH
   ========================================================= */
.record-lazy-open{display:flex;align-items:center;gap:10px;padding:10px 14px;background:#f8fbfd;border-top:1px solid #dfe8ee}.record-lazy-open small{color:#6b8190}.record-open-work{background:#115f86!important;color:#fff!important;text-decoration:none!important}.collapsed-open-btn{text-decoration:none!important}

/* Note #1/#2: không chèn chữ, label/input/button rõ theo hàng */
details.record>.dashboard-quote-note-outside{display:grid!important;grid-template-columns:92px minmax(260px,1fr) 76px!important;gap:7px 9px!important;align-items:center!important;padding:8px 10px!important;margin:6px 8px!important;min-height:0!important}
details.record>.dashboard-quote-note-outside>span{grid-column:1!important;font-size:11px!important;font-weight:900!important;white-space:nowrap!important;align-self:center!important}
details.record>.dashboard-quote-note-outside>input{grid-column:2!important;width:100%!important;height:34px!important;min-width:0!important;padding:6px 9px!important;font-size:12px!important;line-height:1.25!important;border-radius:6px!important;box-sizing:border-box!important}
details.record>.dashboard-quote-note-outside>button{grid-column:3!important;width:100%!important;height:34px!important;padding:0 7px!important;margin:0!important;white-space:nowrap!important}
details.record>.dashboard-quote-note-outside>.dashboard-note-author,
details.record>.dashboard-quote-note-outside>.dashboard-note2-author{grid-column:1/-1!important;margin:0!important;padding:0 2px!important;line-height:1.25!important;font-size:10px!important;color:#657986!important;white-space:normal!important}
.dashboard-admin-note2-readonly{font-size:11px!important;line-height:1.4!important}

/* YCBG upload compact, đồng đều */
.source-upload-panel .rq-upload-grid{display:grid!important;grid-template-columns:1.35fr .75fr .8fr .9fr!important;gap:9px 10px!important;padding:10px 12px 12px!important;align-items:end!important}
.source-upload-panel .rq-upload-grid label{display:grid!important;gap:4px!important;font-size:11px!important;font-weight:750!important;color:#263f50!important;min-width:0!important}
.source-upload-panel .rq-upload-grid label.wide{grid-column:span 2!important}
.source-upload-panel .rq-upload-grid input{height:36px!important;padding:6px 9px!important;font-size:12px!important;border-radius:7px!important;box-sizing:border-box!important;min-width:0!important;width:100%!important}
.source-upload-panel .rq-upload-grid input[type=file]{padding:5px 7px!important;background:#fff!important}
.source-upload-panel .rq-upload-grid label small{font-size:9.5px!important;font-weight:500!important;color:#6a7e8b!important;line-height:1.25!important}
.source-upload-panel .rq-upload-grid button{height:36px!important;max-width:220px!important;padding:0 14px!important;align-self:end!important}
.source-upload-panel .rq-upload-hint{grid-column:1/-1!important;font-size:10px!important;color:#60798a!important;margin-top:-2px!important}

/* Report compact hơn nữa */
.pipeline-report-compact{padding:6px 9px 8px!important}.pipeline-rule-mini{margin-bottom:5px!important;padding:5px 8px!important}.pipeline-export-bar.compact{gap:7px!important}.pipeline-user-pick.compact{padding:4px 6px!important;min-width:300px!important}.pipeline-user-pick.compact .pipeline-user-pick-list label{padding:3px 6px!important}

/* Search tags */
.qi-search-tag{display:inline-block;border-radius:999px;padding:3px 7px;font-size:10px;font-weight:900;margin-right:6px;background:#eef4f8;color:#254b63}.qi-search-tag.hsmt{background:#e4f7ed;color:#176b45}.qi-search-tag.online{background:#fff1d8;color:#8a5a00}.qi-search-tag.rq{background:#f1eaff;color:#6336a8}
@media(max-width:900px){details.record>.dashboard-quote-note-outside{grid-template-columns:1fr!important}details.record>.dashboard-quote-note-outside>span,details.record>.dashboard-quote-note-outside>input,details.record>.dashboard-quote-note-outside>button{grid-column:1!important}.source-upload-panel .rq-upload-grid{grid-template-columns:1fr!important}.source-upload-panel .rq-upload-grid label.wide{grid-column:auto!important}}


/* =========================================================
   QI DASHBOARD V14.7 — MOBILE UI
   Presentation-only overrides. Desktop structure untouched.
   ========================================================= */

@media (max-width:820px){

  /* ---- Base / spacing ---- */
  html{scroll-behavior:smooth}
  body{overflow-x:hidden!important;background:#f5f7f8!important}
  main{
    width:100%!important;
    max-width:none!important;
    padding:10px!important;
    margin:0!important;
  }
  .panel,.record{
    margin:9px 0!important;
    border-radius:12px!important;
    box-shadow:0 2px 8px rgba(20,48,67,.055)!important;
  }
  .panel{padding:11px!important}
  .pagehead{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:6px!important;
    align-items:start!important;
    margin-bottom:8px!important;
  }
  .pagehead h1{font-size:22px!important;line-height:1.15!important;margin:0!important}
  .pagehead p{font-size:12px!important;line-height:1.45!important}
  h2{font-size:17px!important}

  /* ---- Header: compact but complete ---- */
  .dashboard-header{
    position:sticky!important;
    top:0!important;
    z-index:900!important;
    display:grid!important;
    grid-template-columns:1fr auto!important;
    grid-template-areas:
      "brand account"
      "search search"
      "nav nav"!important;
    gap:7px!important;
    min-height:0!important;
    padding:7px 8px 6px!important;
    align-items:center!important;
    background:#111!important;
  }
  .dashboard-brand{
    grid-area:brand!important;
    min-width:0!important;
    width:max-content!important;
    padding:0!important;
    gap:7px!important;
  }
  .dashboard-brand-logo{width:38px!important;height:38px!important;border-radius:8px!important}
  .dashboard-brand span b{font-size:15px!important;white-space:nowrap!important}
  .dashboard-brand span small{display:none!important}

  .dashboard-account{
    grid-area:account!important;
    display:flex!important;
    justify-content:flex-end!important;
    align-items:center!important;
    gap:5px!important;
    margin:0!important;
    padding:0!important;
    min-width:0!important;
  }
  .dashboard-account .account-name{
    padding:5px 6px!important;
    font-size:10px!important;
    max-width:110px!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }
  .dashboard-account .account-name small{display:none!important}
  .dashboard-account .logout-link{
    padding:6px 8px!important;
    font-size:10px!important;
    white-space:nowrap!important;
  }
  .admin-menu>summary{
    padding:6px 8px!important;
    font-size:10px!important;
    white-space:nowrap!important;
  }
  .admin-menu>div{
    right:0!important;
    left:auto!important;
    min-width:190px!important;
    z-index:950!important;
  }

  .dashboard-global-search{
    grid-area:search!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    margin:0!important;
    display:grid!important;
    grid-template-columns:1fr auto!important;
    gap:5px!important;
  }
  .dashboard-global-search input{
    height:36px!important;
    padding:7px 9px!important;
    font-size:12px!important;
    border-radius:8px!important;
  }
  .dashboard-global-search button{
    height:36px!important;
    min-width:54px!important;
    padding:0 10px!important;
    font-size:11px!important;
  }

  .dashboard-main-nav{
    grid-area:nav!important;
    display:flex!important;
    width:100%!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    overscroll-behavior-x:contain!important;
    scroll-snap-type:x proximity!important;
    gap:5px!important;
    padding:1px 0 3px!important;
    -webkit-overflow-scrolling:touch!important;
    scrollbar-width:none!important;
  }
  .dashboard-main-nav::-webkit-scrollbar{display:none!important}
  .dashboard-nav-item{
    flex:0 0 auto!important;
    min-width:106px!important;
    margin:0!important;
    padding:7px 9px!important;
    border-radius:9px!important;
    scroll-snap-align:center!important;
    text-align:center!important;
  }
  .dashboard-nav-item b{font-size:11.5px!important;line-height:1.1!important}
  .dashboard-nav-item small{display:none!important}

  /* ---- Activity strip ---- */
  .admin-activity-panel{
    margin:6px 8px!important;
    border-radius:9px!important;
  }
  .admin-activity-panel>summary{
    padding:8px 10px!important;
    font-size:11px!important;
  }
  .admin-activity-panel>summary small{display:none!important}
  .activity-chip{
    grid-template-columns:90px 1fr!important;
    gap:5px!important;
    padding:6px!important;
    font-size:10px!important;
  }
  .activity-chip small{grid-column:2!important;font-size:9px!important}

  /* ---- Generic controls ---- */
  .actions,.toolbar,.filters,.uploadbar{
    flex-wrap:wrap!important;
    gap:7px!important;
  }
  .btn,button{
    min-height:34px!important;
    padding:7px 10px!important;
    font-size:11px!important;
    border-radius:8px!important;
  }
  input,select,textarea{
    font-size:16px!important; /* avoid iOS/Android auto zoom */
  }
  textarea{min-height:70px!important}
  details>summary{touch-action:manipulation}

  /* ---- Record summary (BG Trực tuyến / HSMT / RQ / DN) ---- */
  .record{overflow:visible!important}
  .record>summary,
  .record-summary{
    padding:10px!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
    align-items:stretch!important;
  }
  .summary-main{
    min-width:0!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:7px!important;
  }
  .summary-main .code,
  .summary-main .code-admin-edit{
    width:100%!important;
    max-width:none!important;
    display:flex!important;
    flex-wrap:wrap!important;
    gap:5px!important;
    align-items:center!important;
  }
  .code-admin-edit input,
  .record-code-input{
    flex:1 1 150px!important;
    width:auto!important;
    min-width:0!important;
    height:35px!important;
  }
  .summary-main .package-name,
  .summary-main .summary-package-name{
    font-size:15px!important;
    line-height:1.35!important;
  }
  .summary-admin-actions,
  .summary-right,
  .sumright{
    width:100%!important;
    display:flex!important;
    flex-wrap:wrap!important;
    justify-content:flex-start!important;
    align-items:center!important;
    gap:6px!important;
  }
  .summary-admin-actions label,
  .summary-right label{margin:0!important}
  .recordbody{
    padding:10px!important;
    overflow:visible!important;
  }

  /* ---- Dashboard quote note ---- */
  details.record>.dashboard-quote-note-outside{
    margin:7px 0!important;
    padding:8px!important;
    grid-template-columns:1fr auto!important;
    gap:6px!important;
    border-radius:8px!important;
  }
  details.record>.dashboard-quote-note-outside>span{
    grid-column:1/-1!important;
    font-size:10px!important;
  }
  details.record>.dashboard-quote-note-outside>input{
    grid-column:1!important;
    width:100%!important;
    min-width:0!important;
    height:36px!important;
    font-size:12px!important;
  }
  details.record>.dashboard-quote-note-outside>button{
    grid-column:2!important;
    min-width:58px!important;
    height:36px!important;
  }
  details.record>.dashboard-quote-note-outside .dashboard-note-author,
  details.record>.dashboard-quote-note-outside .dashboard-note2-author{
    grid-column:1/-1!important;
    font-size:9.5px!important;
    line-height:1.35!important;
  }

  /* ---- Information cards ---- */
  .info-grid,
  .customer-info-grid,
  .quote-info-grid,
  .grid2{
    grid-template-columns:1fr 1fr!important;
    gap:7px!important;
  }
  .info-grid>div,
  .customer-info-grid>div{
    padding:8px!important;
    min-width:0!important;
  }
  .info-grid .wide,.grid2 .full{grid-column:1/-1!important}

  /* ---- Pricing table: full detail, touch-friendly horizontal scroll ---- */
  .tablewrap,
  .recordbody>.tablewrap{
    width:calc(100vw - 20px)!important;
    max-width:100%!important;
    overflow-x:auto!important;
    overflow-y:visible!important;
    -webkit-overflow-scrolling:touch!important;
    overscroll-behavior-x:contain!important;
    border:1px solid #dce5ea!important;
    border-radius:9px!important;
    background:#fff!important;
  }
  .pricing{
    min-width:1420px!important;
    font-size:11px!important;
  }
  .pricing th,.pricing td{
    padding:6px!important;
    line-height:1.3!important;
  }
  .pricing thead th{
    position:sticky!important;
    top:0!important;
    z-index:5!important;
  }
  .pricing textarea{
    width:270px!important;
    min-height:68px!important;
    font-size:12px!important;
  }
  .pricing input,.pricing select{
    min-height:34px!important;
    font-size:12px!important;
  }
  .recordbody>.top-scroll{
    display:block!important;
    height:14px!important;
    margin:4px 0!important;
  }

  /* ---- Price version immediately visible, compact ---- */
  .price-version-panel{
    margin:8px 0!important;
    padding:8px!important;
    font-size:10.5px!important;
  }
  .price-version-panel>div:first-child{
    display:flex!important;
    flex-wrap:wrap!important;
    gap:6px!important;
  }

  /* ---- TBMT Cloud ---- */
  .tbmt-cloud-title{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:7px!important;
  }
  .tbmt-sync-info{
    width:100%!important;
    text-align:left!important;
    padding:8px 10px!important;
  }
  .tbmt-agent-panel{
    padding:9px!important;
    gap:7px!important;
  }
  .tbmt-agent-actions{
    width:100%!important;
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:6px!important;
  }
  .tbmt-search-row{
    grid-template-columns:1fr!important;
    gap:6px!important;
  }
  .tbmt-filter-lines{
    gap:9px!important;
    padding-top:7px!important;
  }
  .tbmt-filter-lines>div{
    width:100%!important;
    gap:5px!important;
  }
  .tbmt-filter-lines button{
    padding:6px 9px!important;
    font-size:10px!important;
  }
  .tbmt-local-kpis{
    grid-template-columns:1fr 1fr!important;
    gap:6px!important;
  }
  .tbmt-local-kpis>div{padding:9px!important}
  .tbmt-local-kpis b{font-size:20px!important}
  .tbmt-list-panel{overflow:visible!important}
  .tbmt-table-wrap{
    width:100%!important;
    max-height:none!important;
    overflow-x:auto!important;
    -webkit-overflow-scrolling:touch!important;
    border-radius:8px!important;
  }
  .tbmt-cloud-table{
    min-width:1320px!important;
    font-size:10.5px!important;
  }
  .tbmt-cloud-table th,.tbmt-cloud-table td{padding:7px 6px!important}
  .tbmt-tools-stack .tool-btn{padding:7px 5px!important;font-size:10px!important}

  /* ---- RQ / YCBG upload ---- */
  .source-upload-panel{padding:0!important}
  .source-upload-panel>summary{padding:10px 12px!important;font-size:12px!important}
  .source-upload-panel .rq-upload-grid{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:7px!important;
    padding:9px!important;
  }
  .source-upload-panel .rq-upload-grid label,
  .source-upload-panel .rq-upload-grid label.wide{
    grid-column:1!important;
    font-size:11px!important;
  }
  .source-upload-panel .rq-upload-grid input{
    height:38px!important;
    font-size:13px!important;
  }
  .source-upload-panel .rq-upload-grid button{
    width:100%!important;
    max-width:none!important;
    height:38px!important;
  }

  /* ---- Pipeline report ---- */
  .pipeline-report-panel>summary{padding:10px 12px!important}
  .pipeline-report-compact{padding:7px!important}
  .pipeline-export-bar.compact{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:7px!important;
    align-items:stretch!important;
  }
  .pipeline-user-pick.compact{
    min-width:0!important;
    width:100%!important;
    display:block!important;
  }
  .pipeline-user-pick-list{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:5px!important;
  }
  .pipeline-user-pick-list label{
    min-width:0!important;
    padding:5px 7px!important;
    justify-content:flex-start!important;
  }
  .pipeline-export-bar.compact button{width:100%!important}

  /* ---- Search results / cards ---- */
  .v14-search-results{grid-template-columns:1fr!important;gap:7px!important}
  .v14-search-card{padding:10px!important}
  .v14-search-title{font-size:14px!important}
  .v14-search-form{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:6px!important;
  }

  /* ---- User management ---- */
  .permission-table,
  .users-table{
    min-width:720px!important;
  }
  .user-permission-grid,
  .tablewrap:has(.permission-table){
    overflow-x:auto!important;
    -webkit-overflow-scrolling:touch!important;
  }
  .subtab-permissions{
    grid-template-columns:1fr!important;
  }

  /* ---- Modal / quotation ---- */
  .modalbox{
    width:calc(100vw - 20px)!important;
    min-width:0!important;
    max-height:88vh!important;
    overflow:auto!important;
    padding:15px!important;
  }
  .quotation-sheet{
    width:100%!important;
    min-height:0!important;
    padding:16px!important;
    box-shadow:none!important;
  }
  .quote-actions{
    flex-wrap:wrap!important;
    margin:8px!important;
  }

  /* ---- Safe bottom breathing room ---- */
  body:after{content:"";display:block;height:max(12px,env(safe-area-inset-bottom))}
}

@media (max-width:480px){
  main{padding:7px!important}
  .dashboard-header{padding:6px!important}
  .dashboard-brand-logo{width:34px!important;height:34px!important}
  .dashboard-brand span b{font-size:13px!important}
  .dashboard-account .account-name{max-width:82px!important}
  .dashboard-nav-item{min-width:94px!important;padding:7px 8px!important}
  .dashboard-nav-item b{font-size:10.5px!important}

  .panel{padding:9px!important}
  .record>summary,.record-summary{padding:8px!important}
  .recordbody{padding:8px!important}

  .info-grid,
  .customer-info-grid,
  .quote-info-grid,
  .grid2{grid-template-columns:1fr!important}
  .info-grid .wide,.grid2 .full{grid-column:1!important}

  .tbmt-local-kpis{grid-template-columns:1fr 1fr!important}
  .tbmt-local-kpis small{font-size:9.5px!important}

  .pipeline-user-pick-list{grid-template-columns:1fr!important}

  details.record>.dashboard-quote-note-outside{
    grid-template-columns:1fr!important;
  }
  details.record>.dashboard-quote-note-outside>input,
  details.record>.dashboard-quote-note-outside>button{
    grid-column:1!important;
    width:100%!important;
  }
}

/* V14.8 — Email notice options */
.email-content-options{margin:10px 0;padding:10px 12px;border:1px solid #d9e5ec;border-radius:9px;background:#f8fbfd}
.email-content-options>b{display:block;margin-bottom:7px;color:#17384f}
.email-content-options .switch-line{display:flex;align-items:flex-start;gap:7px;margin:7px 0}
.email-content-options .switch-line small{display:block;color:#687f90;font-size:10px;margin-left:4px}
@media(max-width:820px){
 .email-content-options{padding:9px}
 .email-content-options .switch-line{font-size:12px;line-height:1.4}
 .email-send-actions{display:grid!important;grid-template-columns:1fr!important;gap:6px!important}
 .email-send-actions form,.email-send-actions button{width:100%!important}
}

/* V14.8.1 — Gửi ngay theo checkbox */
.email-send-selected{display:grid;gap:12px}
.email-send-checks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.email-send-checks>label{display:flex;align-items:flex-start;gap:8px;padding:11px 12px;border:1px solid #d5e1e8;border-radius:10px;background:#f9fbfd;cursor:pointer}
.email-send-checks>label:has(input:checked){border-color:#8fc4df;background:#eef8fd}
.email-send-checks input{margin-top:2px;width:18px;height:18px}
.email-send-checks span{display:grid;gap:3px;min-width:0}
.email-send-checks b{color:#17384f}
.email-send-checks small{color:#6a8090;line-height:1.35}
.email-send-selected-btn{width:max-content;min-width:220px}
@media(max-width:820px){
 .email-send-checks{grid-template-columns:1fr!important}
 .email-send-checks>label{padding:10px!important}
 .email-send-selected-btn{width:100%!important;min-width:0!important;height:44px!important}
}

/* V14.8.9 — chọn user cho báo cáo tiến độ email */
.email-staff-picker{margin:8px 0 4px 28px;padding:10px 11px;border:1px solid #d5e2e9;border-radius:9px;background:#fff}
.email-staff-picker.is-disabled{opacity:.55;background:#f5f7f8}
.email-staff-picker-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px;color:#17384f}
.email-staff-picker-head span{display:flex;gap:5px}
.email-staff-picker-head button{min-height:28px!important;padding:4px 8px!important;border:1px solid #c9d8e1;background:#f7fafc;color:#28485c;font-size:10px!important}
.email-staff-picker-list{display:flex;flex-wrap:wrap;gap:7px}
.email-staff-picker-list label{display:flex;align-items:center;gap:6px;padding:6px 9px;border:1px solid #cedde5;border-radius:999px;background:#f8fbfd;font-size:11px;font-weight:800}
.email-staff-picker>small{display:block;margin-top:7px;color:#6a8090;font-size:10px}
@media(max-width:820px){
 .email-staff-picker{margin-left:0!important;padding:9px!important}
 .email-staff-picker-head{align-items:flex-start;flex-direction:column}
 .email-staff-picker-list{display:grid!important;grid-template-columns:1fr 1fr!important}
 .email-staff-picker-list label{border-radius:8px!important;min-width:0!important}
}
@media(max-width:480px){.email-staff-picker-list{grid-template-columns:1fr!important}}

/* V14.8.10 — nhóm ngành + số ngày thống kê email */
.email-staff-days{display:flex!important;align-items:center;gap:8px;margin-top:10px!important;font-size:11px;font-weight:800;color:#29495d}
.email-staff-days input{width:82px!important;min-width:82px!important;padding:6px 8px!important;margin:0!important}
.email-staff-days span{font-weight:600;color:#6a8090}
@media(max-width:480px){.email-staff-days{flex-wrap:wrap}.email-staff-days input{width:74px!important}}

/* V14.9.4 · Bid precheck + Price Memory */
.bidref-preview-modal,.price-history-offer-modal{position:fixed;inset:0;background:rgba(15,23,42,.48);z-index:2147483000;display:none;align-items:center;justify-content:center;padding:24px}.bidref-preview-modal{display:flex}.bidref-preview-box,.price-history-offer-box{background:#fff;border-radius:16px;box-shadow:0 24px 70px rgba(15,23,42,.28);width:min(1080px,96vw);max-height:88vh;overflow:auto;padding:22px;position:relative}.bidref-preview-close,.price-history-offer-close{position:absolute;right:14px;top:12px;border:0;background:#eef2f7;color:#334155;width:36px;height:36px;border-radius:10px;font-size:24px}.bidref-preview-stats{display:grid;grid-template-columns:repeat(5,minmax(120px,1fr));gap:10px;margin:15px 0}.bidref-preview-stats span{border:1px solid #dbe4ee;border-radius:12px;padding:12px;background:#f8fafc}.bidref-preview-stats span.ok{background:#ecfdf5;border-color:#a7f3d0}.bidref-preview-stats b{display:block;font-size:25px}.bidref-preview-stats small{color:#64748b}.bidref-preview-columns{display:grid;grid-template-columns:1fr 1fr;gap:14px}.bidref-preview-list{border:1px solid #e2e8f0;border-radius:12px;max-height:310px;overflow:auto}.bidref-preview-list>div{padding:9px 11px;border-bottom:1px solid #eef2f7}.bidref-preview-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:16px}.price-history-offer{margin-top:5px;background:#0f766e!important;color:#fff!important;border:0!important;border-radius:8px!important;padding:5px 8px!important;font-size:11px!important;font-weight:800}.price-history-offer-modal.show{display:flex}.price-history-offer-title{color:#475569;margin:4px 0 12px}.price-history-offer-row{border:1px solid #dbe4ee;border-radius:12px;padding:12px;margin:8px 0;display:grid;grid-template-columns:1fr auto;gap:4px 12px;align-items:center}.price-history-offer-row>div{display:flex;gap:14px;align-items:center}.price-history-offer-row b{color:#0f5f86;font-size:18px}.price-history-offer-row span{font-weight:700}.price-history-offer-row small{color:#64748b}.price-history-offer-row button{grid-column:2;grid-row:1/3}.price-history-empty{padding:18px;border:1px dashed #cbd5e1;border-radius:12px;color:#64748b}@media(max-width:820px){.bidref-preview-stats{grid-template-columns:repeat(2,1fr)}.bidref-preview-columns{grid-template-columns:1fr}.price-history-offer-row{grid-template-columns:1fr}.price-history-offer-row button{grid-column:1;grid-row:auto}}

/* V14.9.5 Smart Offer */
.buy-cell .price-history-offer{display:block;width:100%;margin-top:7px!important;padding:7px 8px!important;background:#0f766e!important;color:#fff!important}
.price-history-scan-note{background:#f0f9ff;border:1px solid #bae6fd;color:#075985;border-radius:10px;padding:9px 11px;margin:10px 0;font-size:12px;font-weight:700}
.price-offer-section-title{font-size:13px;margin:14px 0 6px;color:#334155;text-transform:uppercase;letter-spacing:.03em}
.price-history-offer-row.exact{border-color:#86efac;background:#f0fdf4}
.price-history-offer-row.similar{border-color:#dbe4ee;background:#fff}
.price-offer-main{display:flex!important;align-items:center!important;gap:10px!important;flex-wrap:wrap}
.price-offer-main em{font-style:normal;font-size:11px;font-weight:800;color:#7c3aed;background:#f5f3ff;border-radius:999px;padding:3px 7px}
.price-offer-meta{display:flex!important;flex-direction:column!important;gap:2px!important}
.price-offer-meta small{color:#64748b}

/* V14.9.6 Price Memory Cache */
.price-history-cache-actions{display:flex;align-items:center;gap:10px;margin:8px 0 12px}.price-history-cache-actions small{color:#64748b}.price-history-full-sync{border:1px solid #cbd5e1!important;background:#fff!important;color:#475569!important;border-radius:8px!important;padding:6px 10px!important;font-size:11px!important;font-weight:800}.price-history-full-sync:hover{background:#f8fafc!important}

/* V14.9.6.1 — Offer button locked to Giá nhập cell */
.buy-cell{vertical-align:top!important}
.buy-price-stack{display:flex!important;flex-direction:column!important;gap:6px!important;width:100%!important}
.buy-price-stack .buy{width:100%!important;box-sizing:border-box!important}
.buy-price-stack .price-history-offer{
 display:block!important;
 position:static!important;
 float:none!important;
 width:100%!important;
 margin:0!important;
 padding:6px 8px!important;
 background:#0f766e!important;
 color:#fff!important;
 border:0!important;
 border-radius:8px!important;
 font-size:11px!important;
 line-height:1.25!important;
 font-weight:800!important;
 white-space:nowrap!important;
}
.buy-cell>.input-vat-controls{margin-top:6px!important}

/* V14.10.0 · DN NCC Quote workflow */
.dn-ncc-upload{display:grid!important;grid-template-columns:minmax(320px,1.4fr) minmax(220px,.8fr) minmax(260px,1fr) auto auto!important;gap:10px!important;align-items:end!important}
.dn-ncc-upload label{min-width:0!important}
.dn-ncc-upload label>input:not([type=file]){width:100%!important;box-sizing:border-box!important}
.dn-ncc-upload .upload-file small{display:block;margin-top:5px;color:#64748b;font-size:11px;line-height:1.35}
@media(max-width:1100px){.dn-ncc-upload{grid-template-columns:1fr 1fr!important}.dn-ncc-upload .upload-file{grid-column:1/-1!important}}
@media(max-width:820px){.dn-ncc-upload{grid-template-columns:1fr!important}.dn-ncc-upload>*{grid-column:auto!important}}

/* =========================================================
   V14.10.3.1 — DN MULTI NCC
   Chỉ bổ sung UI Add NCC, không thay đổi layout Dashboard cũ.
   ========================================================= */
.dn-add-ncc-panel{
  margin:10px 0;
  border:1px solid #b9d7c9;
  border-radius:12px;
  background:#f4fbf7;
  overflow:hidden;
}
.dn-add-ncc-panel>summary{
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:center;
  padding:11px 13px;
  cursor:pointer;
  color:#145c45;
  font-weight:900;
}
.dn-add-ncc-panel>summary small{
  font-weight:600;
  color:#5f7c70;
}
.dn-add-ncc-body{
  padding:0 13px 13px;
}
.dn-add-ncc-form{
  display:grid;
  grid-template-columns:minmax(280px,1.3fr) minmax(220px,.8fr) auto;
  gap:9px;
  align-items:end;
}
.dn-add-ncc-form label{min-width:0}
.dn-add-ncc-form input{
  width:100%;
  box-sizing:border-box;
}
.dn-add-ncc-form button{
  min-height:40px;
  background:#147a59;
  color:#fff;
  border:0;
  border-radius:9px;
  font-weight:900;
  padding:8px 13px;
}
.dn-supplier-chips{
  display:flex;
  gap:6px;
  align-items:center;
  flex-wrap:wrap;
  margin:0 0 9px;
  font-size:12px;
}
.dn-supplier-chips span{
  background:#fff;
  border:1px solid #abd1bf;
  color:#145c45;
  border-radius:999px;
  padding:4px 8px;
  font-weight:800;
}
.dn-add-ncc-note{
  display:block;
  margin-top:7px;
  color:#64748b;
}
@media(max-width:820px){
  .dn-add-ncc-panel>summary{
    align-items:flex-start;
    flex-direction:column;
  }
  .dn-add-ncc-form{
    grid-template-columns:1fr;
  }
}


/* V14.10.4 — source route / merge price / add items from supplier */
.quote-merge-badge{display:block;margin-top:4px;padding:2px 4px;border-radius:5px;background:#e8f2ff;color:#145b8d;font-size:8px;font-weight:900;text-align:center}
.quote-merge-selected{background:#eaf4ff!important;color:#145b8d!important;border-color:#afd0e8!important}
.quote-unmerge-selected{background:#fff7e8!important;color:#8b5b09!important;border-color:#e8c98e!important}
.open-add-ncc{background:#edf9f3!important;color:#146347!important;border-color:#b9d7c9!important}
.quote-merged-price{vertical-align:middle!important;font-weight:800!important;background:#fffdf7!important}

/* V14.10.6 — SL/Cái + SL/Bộ for DN merge */
.pricing .col-merge-set-qty{width:72px}
.merge-set-qty-cell{min-width:68px;text-align:center}
.merge-set-qty{width:62px!important;text-align:center!important;font-weight:900!important;background:#f4fbf7!important;border-color:#add8c3!important}
.merge-set-qty-na{color:#94a3b8;font-weight:700}

/* V14.10.8 */
.pipeline-source-pick{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.pipeline-source-pick>span{font-weight:800}.pipeline-source-pick label{display:inline-flex;gap:4px;align-items:center}.quote-total-summary b{font-size:15px!important;white-space:nowrap}.summary-stats:has(.quote-total-summary){grid-template-columns:minmax(90px,.7fr) minmax(120px,1fr) minmax(0,2.3fr)!important}
@media(max-width:820px){.pipeline-source-pick{display:grid;grid-template-columns:1fr 1fr}.summary-stats:has(.quote-total-summary){grid-template-columns:1fr 1fr!important}.summary-stats:has(.quote-total-summary) .quote-time-range{grid-column:1/-1}}

/* V14.10.9 */
.non-auction-current-quote{margin:10px 0}
.non-auction-current-quote .step-price-table th:first-child{width:18%}
.dn-temp-revenue b{color:#0f638d}
@media(max-width:820px){
 .non-auction-current-quote .step-price-table{min-width:620px}
}

/* V14.10.10 — Report top-level user menu */
.report-page{padding:18px 22px 30px}
.report-main-card{max-width:1280px;margin:0 auto;padding:18px}
.report-export-form h3{margin:0 0 10px}
.report-source-grid{display:grid;grid-template-columns:repeat(3,minmax(220px,1fr));gap:10px}
.report-source-grid>label{display:flex;gap:10px;align-items:flex-start;border:1px solid #d7e3ec;border-radius:12px;background:#fbfdff;padding:13px;cursor:pointer}
.report-source-grid input{margin-top:3px}
.report-source-grid span{display:flex;flex-direction:column;gap:3px}
.report-source-grid small,.report-note,.report-user-self span{color:#60798a}
.report-filter-row{margin:16px 0;display:flex;gap:12px}.report-filter-row label{display:flex;gap:8px;align-items:center;font-weight:800}
.report-filter-row select{min-width:220px}
.report-user-section{border-top:1px solid #e5edf3;padding-top:15px}
.report-user-actions{display:flex;gap:7px;margin-bottom:8px}.report-user-actions button{border:1px solid #c7d6e2;background:#fff;border-radius:8px;padding:6px 10px;font-weight:800}
.report-user-list{display:grid;grid-template-columns:repeat(3,minmax(220px,1fr));gap:8px}
.report-user-list label{display:flex;align-items:flex-start;gap:8px;border:1px solid #e0e7ed;border-radius:9px;padding:8px 10px}
.report-user-list span{display:flex;flex-direction:column}.report-user-list small{color:#7b8994}
.report-user-self{display:flex;flex-direction:column;gap:4px;background:#f4f8fb;border:1px solid #d9e5ed;padding:12px;border-radius:10px}
.report-submit{margin-top:16px}.report-submit button{background:#0f638d;color:#fff;border:0;border-radius:10px;padding:11px 18px;font-weight:900}
@media(max-width:820px){.report-page{padding:10px}.report-source-grid,.report-user-list{grid-template-columns:1fr}.report-main-card{padding:12px}}

/* V14.10.11 — User dropdown + online report */
.user-account-menu{position:relative}
.user-account-menu>summary{list-style:none;cursor:pointer;border:1px solid #3b3b3b;border-radius:13px;padding:8px 12px;min-width:95px;display:flex;flex-direction:column;line-height:1.05}
.user-account-menu>summary::-webkit-details-marker{display:none}
.user-account-menu>summary b{color:#fff;font-size:13px}.user-account-menu>summary small{color:#d8d8d8;font-size:10px;margin-top:3px}
.user-account-menu-pop{position:absolute;right:0;top:calc(100% + 7px);z-index:2000;min-width:235px;background:#fff;border:1px solid #dbe3e8;border-radius:12px;box-shadow:0 12px 30px rgba(0,0,0,.18);padding:7px}
.user-account-menu-pop a{display:flex!important;flex-direction:column!important;gap:2px!important;color:#142c3c!important;text-decoration:none!important;padding:9px 10px!important;border-radius:8px!important}
.user-account-menu-pop a:hover{background:#f0f7fb!important}.user-account-menu-pop small{color:#6f8290;font-size:10px}.user-account-menu-pop .user-menu-logout{color:#a82727!important;border-top:1px solid #edf1f4;margin-top:4px}
.report-page{padding:18px 22px 36px}.report-control-card{padding:12px 16px;margin-bottom:12px}.report-view-filter{display:flex;gap:12px;align-items:end;flex-wrap:wrap}.report-view-filter label{display:flex;flex-direction:column;gap:4px;font-weight:800}.report-view-filter select{min-width:200px}
.report-kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:0 0 12px}.report-kpi-grid>div{background:#fff;border:1px solid #d9e5ec;border-radius:13px;padding:15px}.report-kpi-grid small{display:block;color:#668091;font-weight:800}.report-kpi-grid b{display:block;font-size:28px;color:#0f638d;margin:4px 0}.report-kpi-grid span{font-size:11px;color:#7a8b96}
.report-status-panel,.report-team-panel,.report-export-card{padding:16px;margin-bottom:12px}.report-section-head h2,.report-team-panel h2,.report-export-card h2{margin:0 0 4px}.report-section-head p,.report-team-panel p{margin:0 0 12px;color:#647b8a}
.report-source-status-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.report-source-status{border:1px solid #dce6ec;border-radius:12px;padding:12px;background:#fbfdff}.report-source-status>b{display:block;margin-bottom:9px}.report-source-status>div{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.report-source-status span{background:#f1f6f9;border-radius:8px;padding:8px;font-size:11px;color:#647987}.report-source-status strong{display:block;color:#17384f;font-size:18px;margin-top:3px}
.report-table-wrap{overflow:auto}.report-table-wrap table{width:100%;border-collapse:collapse}.report-table-wrap th,.report-table-wrap td{padding:9px 10px;border-bottom:1px solid #e5edf2;text-align:center}.report-table-wrap th:first-child,.report-table-wrap td:first-child{text-align:left}.report-table-wrap th{background:#f2f6f8}
.report-export-card .report-source-grid{margin:10px 0}.report-scope{display:flex;gap:8px;align-items:center;font-weight:800;margin:10px 0}.report-export-card>form>button{background:#0f638d;color:#fff;border:0;border-radius:9px;padding:10px 15px;font-weight:900}
@media(max-width:820px){.report-page{padding:10px}.report-kpi-grid,.report-source-status-grid{grid-template-columns:1fr 1fr}.user-account-menu-pop{position:fixed;right:10px;top:68px}.report-source-status>div{grid-template-columns:1fr 1fr 1fr}}

/* V14.11 */
.rq-upload-minimal{grid-template-columns:minmax(300px,1fr) minmax(400px,1.2fr)!important}.rq-upload-minimal button{align-self:end}
.dn-bundle-upload{flex-wrap:wrap;align-items:end}.dn-bundle-upload .upload-file{min-width:420px;flex:1}
.qi-chat-drawer{position:fixed;right:0;top:90px;bottom:18px;width:390px;z-index:5000;transition:transform .18s}.qi-chat-drawer.collapsed{transform:translateX(375px)}
.qi-chat-edge{position:absolute;left:-42px;top:42%;width:42px;height:95px;background:#151515;color:#fff;border-radius:12px 0 0 12px;padding:7px 4px}.qi-chat-edge b{position:absolute;top:2px;left:2px;background:#e53935;border-radius:999px;padding:2px 5px}
.qi-chat-panel{height:100%;display:grid;grid-template-rows:auto auto 1fr auto;background:#fff;border:1px solid #ccdbe4;border-radius:14px 0 0 14px;box-shadow:0 15px 40px #0002;overflow:hidden}.qi-chat-head{display:flex;justify-content:space-between;background:#123f63;color:#fff;padding:11px 13px}.qi-chat-head span{display:grid}.qi-chat-head small{opacity:.8}.qi-chat-close{background:transparent;font-size:22px;padding:2px 8px}
.qi-chat-users{display:flex;gap:5px;padding:8px;overflow:auto;border-bottom:1px solid #e3eaef}.qi-chat-users button{background:#edf3f7;color:#28495d;border-radius:999px;padding:6px 9px;white-space:nowrap}
.qi-chat-list{overflow:auto;background:#f5f8fa;padding:9px;display:flex;flex-direction:column;gap:7px}.qi-chat-msg{background:#fff;border-left:4px solid #64748b;border-radius:8px;padding:8px}.qi-chat-msg.user-0{border-left-color:#0f638d}.qi-chat-msg.user-1{border-left-color:#7c3aed}.qi-chat-msg.user-2{border-left-color:#059669}.qi-chat-msg.user-3{border-left-color:#d97706}.qi-chat-msg.user-4{border-left-color:#db2777}.qi-chat-msg.user-5{border-left-color:#4f46e5}.qi-chat-msg>div{display:flex;justify-content:space-between}.qi-chat-msg p{white-space:pre-wrap;margin:5px 0}.qi-chat-form{display:grid;grid-template-columns:1fr auto;gap:6px;padding:8px;border-top:1px solid #dce5eb}.qi-chat-form textarea{resize:none}
.crm-page{padding:18px 22px}.crm-subtabs{display:flex;gap:8px;margin:10px 0}.crm-subtabs a{padding:8px 13px;border:1px solid #cfdae2;border-radius:999px;text-decoration:none;color:#1f4258;font-weight:800}.crm-subtabs a.active{background:#123f63;color:#fff}.crm-toolbar{display:flex;justify-content:space-between;gap:10px}.crm-toolbar form{display:flex;gap:7px}.crm-toolbar form:first-child{flex:1}.crm-toolbar input{flex:1;min-width:320px}.crm-table td small{display:block;color:#718795}.crm-project{display:grid;grid-template-columns:130px 1fr 150px 90px;gap:8px;padding:6px;border-bottom:1px solid #e1e8ec}.crm-project em{text-align:right}
@media(max-width:820px){.rq-upload-minimal{grid-template-columns:1fr!important}.dn-bundle-upload .upload-file{min-width:100%}.qi-chat-drawer{width:min(92vw,390px)}.qi-chat-drawer.collapsed{transform:translateX(calc(100% - 14px))}.crm-toolbar{flex-direction:column}.crm-toolbar form{flex-wrap:wrap}.crm-toolbar input{min-width:0;width:100%}.crm-project{grid-template-columns:1fr}}

.dn-hidden-source-link{display:none!important}
details.record[data-source="DN"] .quote-start-box{display:none!important}

.live-notifications>summary{cursor:pointer;list-style:none}.live-notifications>summary::-webkit-details-marker{display:none}.live-notification-content{padding-top:8px}.dn-hidden-source-link{display:none!important}

/* ================= V14.11.2 Chat / CRM smooth UI ================= */
.chat-record-auto{margin-left:7px!important;background:#e8f2fb!important;color:#164d74!important;border:1px solid #bfd7e8!important;padding:6px 9px!important}
.qi-chat-drawer{width:420px;top:82px;bottom:12px}
.qi-chat-drawer.collapsed{transform:translateX(405px)}
.qi-chat-panel{grid-template-rows:auto auto auto auto auto auto 1fr auto auto auto}
.qi-chat-head-actions{display:flex!important;align-items:center;gap:4px}.qi-chat-settings{background:transparent!important;padding:4px 7px!important}
.qi-chat-ticker{overflow:hidden;background:#fff0c2;border-bottom:1px solid #efcd66;white-space:nowrap}
.qi-chat-ticker a{display:block;color:#684900;text-decoration:none;font-weight:800;padding:7px 0}
.qi-chat-ticker span{display:inline-block;padding-left:100%;animation:qiTicker 16s linear infinite}
@keyframes qiTicker{from{transform:translateX(0)}to{transform:translateX(-100%)}}
.qi-chat-modes{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:7px 9px;border-bottom:1px solid #e5edf2}
.qi-chat-modes button{background:#eef4f7!important;color:#38576a!important;border:1px solid #d7e2e9!important}.qi-chat-modes button.active{background:#123f63!important;color:#fff!important}
.qi-chat-users button{display:flex;align-items:center;gap:5px}.qi-chat-users button i{width:9px;height:9px;border-radius:999px;display:inline-block}
.qi-chat-color-picker{padding:9px 11px;background:#f8fafc;border-bottom:1px solid #e0e8ee}.qi-chat-color-picker>b{display:block;font-size:11px;margin-bottom:6px}.qi-chat-color-picker>div{display:flex;gap:7px}.qi-chat-color-picker [data-color]{width:24px;height:24px;padding:0!important;border-radius:999px!important;background:var(--swatch)!important;border:2px solid transparent!important}.qi-chat-color-picker [data-color].active{outline:3px solid #cbd5e1}.qi-chat-color-picker [data-color]:disabled{opacity:.22;cursor:not-allowed}
.qi-chat-context,.qi-chat-reply{display:flex;justify-content:space-between;align-items:center;gap:7px;padding:7px 10px;background:#eef7ff;border-bottom:1px solid #d2e5f4;color:#284f68;font-size:11px}.qi-chat-reply{background:#f5efff;color:#533a78}
.qi-chat-history{padding:5px 9px 0;background:#f5f8fa}.qi-chat-old>summary{cursor:pointer;color:#657786;font-size:11px;font-weight:800;padding:6px}.qi-chat-old>div{display:flex;flex-direction:column;gap:7px;padding-bottom:6px}
.qi-chat-msg{max-width:84%;align-self:flex-start;border-left-color:var(--user-chat-color)!important}.qi-chat-msg.mine{align-self:flex-end;border-left:0!important;border-right:4px solid var(--user-chat-color)!important;background:#eef8ff}.qi-chat-msg.deleted{opacity:.48;font-style:italic;background:#f1f3f5}.qi-chat-msg-meta>b{color:var(--user-chat-color)}
.qi-chat-quote{display:grid;border-left:3px solid #b9c9d4;background:#f1f5f7;border-radius:5px;padding:5px 7px;margin:4px 0;font-size:10px}.qi-chat-quote b{color:#36566a}.qi-chat-quote span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}
.qi-chat-msg-tools{display:flex;justify-content:flex-end;gap:4px;opacity:0;transition:opacity .12s}.qi-chat-msg:hover .qi-chat-msg-tools{opacity:1}.qi-chat-msg-tools button{background:transparent!important;color:#738492!important;padding:2px 5px!important;font-size:10px!important}
.qi-chat-icons{display:flex;gap:4px;padding:5px 9px;border-top:1px solid #e5edf2}.qi-chat-icons button{background:#f3f6f8!important;padding:4px 6px!important;font-size:15px!important}
.crm-toolbar{align-items:flex-end;flex-wrap:wrap}.crm-toolbar form:first-child{display:grid!important;grid-template-columns:minmax(280px,2fr) repeat(4,minmax(145px,1fr)) auto;gap:8px}.crm-toolbar select,.crm-toolbar input{min-width:0!important;width:100%}
.crm-table{table-layout:fixed;width:100%}.crm-table th:nth-child(1){width:24%}.crm-table th:nth-child(2){width:12%}.crm-table th:nth-child(3){width:12%}.crm-table th:nth-child(4){width:13%}.crm-table th:nth-child(5){width:16%}.crm-table th:nth-child(6){width:6%}.crm-table th:nth-child(7){width:10%}.crm-table th:nth-child(8){width:7%}
.crm-table td{vertical-align:middle;overflow-wrap:anywhere}.crm-table td.num,.crm-table td.money{text-align:right}.crm-project{grid-template-columns:120px minmax(260px,1fr) 140px 85px 90px;align-items:center}.crm-project button{padding:6px 9px!important}
@media(max-width:1050px){.crm-toolbar form:first-child{grid-template-columns:1fr 1fr 1fr}.crm-table{min-width:1100px}}
@media(max-width:820px){.qi-chat-drawer{width:min(94vw,420px)}.qi-chat-drawer.collapsed{transform:translateX(calc(100% - 15px))}.crm-toolbar form:first-child{grid-template-columns:1fr}.crm-project{grid-template-columns:1fr}}

/* ================= V14.11.3 stable layout ================= */
@media(min-width:1051px){
 .dashboard-header{display:grid!important;grid-template-columns:285px minmax(360px,1fr) auto!important;grid-template-areas:"brand search account" "nav nav nav"!important;gap:4px 14px!important;padding:7px 14px 6px!important;align-items:center!important;min-height:0!important}
 .dashboard-brand{grid-area:brand!important;padding:4px 0!important}.dashboard-global-search{grid-area:search!important;justify-self:end!important;width:min(620px,100%)!important;margin:0!important}.dashboard-account{grid-area:account!important;margin:0!important;padding:0!important;align-self:center!important}
 .dashboard-main-nav{grid-area:nav!important;display:flex!important;flex-wrap:nowrap!important;align-items:stretch!important;gap:5px!important;width:100%!important;overflow-x:auto!important;padding:1px 0 4px!important}.dashboard-main-nav::-webkit-scrollbar{height:3px}.dashboard-nav-item{flex:1 1 0!important;min-width:128px!important;max-width:210px!important;padding:7px 11px!important;border-radius:10px!important}.dashboard-nav-item b{font-size:13px!important}.dashboard-nav-item small{font-size:9px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
 .dashboard-brand-logo{width:50px!important;height:50px!important;flex-basis:50px!important}.dashboard-brand>span>b{font-size:18px!important}
}
.chat-permission-line{margin:10px 0;padding:10px 12px;border:1px solid #cfe0ea;border-radius:10px;background:#f3f9fc}.chat-permission-line label{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.chat-permission-line small{display:block;width:100%;padding-left:25px;color:#6b7d89}
.qi-chat-drawer{top:auto!important;bottom:14px!important;width:410px!important;height:min(660px,calc(100vh - 100px))!important}.qi-chat-drawer.collapsed{transform:translateX(395px)!important}.qi-chat-panel{grid-template-rows:auto auto auto auto auto auto 1fr auto auto!important;border-radius:16px 0 0 16px!important}.qi-chat-head>div:first-child{display:flex!important;flex-direction:column!important;gap:2px!important}.qi-chat-head b{font-size:17px!important}.qi-chat-head small{font-size:11px!important}.qi-chat-modes{grid-template-columns:1fr 1fr 1fr!important}.qi-chat-modes button[hidden]{display:none!important}.qi-chat-modes button.active{box-shadow:inset 0 0 0 2px rgba(255,255,255,.25)!important}.qi-chat-users{min-height:45px!important;max-height:92px!important;flex-wrap:wrap!important;align-content:flex-start!important}.qi-chat-users button.active{background:#123f63!important;color:#fff!important;box-shadow:0 0 0 2px #b9d7ea!important}.qi-chat-users button>b{background:#e43d3d;color:#fff;border-radius:999px;min-width:18px;height:18px;display:grid;place-items:center;font-size:10px}.qi-chat-private-state{padding:7px 10px;background:#eef8ff;color:#31566d;font-size:12px;border-bottom:1px solid #dbe8f0}.private-total{display:inline-grid!important;place-items:center!important;background:#e43d3d;color:#fff;border-radius:999px;min-width:18px;height:18px;font-style:normal;font-size:10px;margin-left:4px}.private-total[hidden]{display:none!important}
.qi-chat-list{min-height:120px!important;padding:10px!important}.qi-chat-form{grid-template-columns:1fr 70px!important;align-items:end!important;padding:8px 9px!important;background:#fff!important}.qi-chat-form textarea{height:54px!important;min-height:54px!important;max-height:100px!important;font-size:14px!important;line-height:1.35!important;padding:9px 10px!important;border-radius:12px!important}.qi-chat-form>button{height:54px!important;min-height:54px!important;padding:0 12px!important;border-radius:12px!important;font-size:14px!important}.qi-chat-icons{order:10!important;display:flex!important;gap:4px!important;overflow-x:auto!important;padding:6px 9px 8px!important;background:#fff!important}.qi-chat-icons button{flex:0 0 30px!important;width:30px!important;height:30px!important;padding:0!important;border-radius:999px!important;font-size:16px!important}.qi-chat-msg{font-size:13px!important}.qi-chat-msg p{font-size:14px!important;line-height:1.4!important}.qi-chat-msg-meta em{font-size:10px;color:#738492;font-style:normal}.qi-chat-open-link{display:inline-flex!important;align-items:center!important;gap:4px!important;margin-top:3px!important;padding:5px 8px!important;border-radius:8px!important;background:#e8f4ff!important;color:#165a86!important;font-weight:900!important;text-decoration:none!important}.chat-record-auto{font-size:11px!important}
.crm-source-line{display:block!important;margin-top:5px!important;color:#0f638d!important;font-weight:800!important}.crm-table th,.crm-table td{padding:10px 9px!important}.crm-table td>b{font-size:13px!important}
@media(max-width:820px){.qi-chat-drawer{width:min(94vw,410px)!important;height:min(640px,calc(100vh - 76px))!important}.qi-chat-drawer.collapsed{transform:translateX(calc(100% - 15px))!important}.qi-chat-modes{grid-template-columns:1fr 1fr 1fr!important}}


/* ================= V14.11.4 UI polish: CRM + Chat + record actions ================= */
/* Chat HS stays on the same action row as Thu nhỏ HS */
.record-summary .code .chat-record-auto,.record-summary .code-with-copy .chat-record-auto{display:inline-flex!important;vertical-align:middle!important;margin:0 0 0 7px!important;align-items:center!important;justify-content:center!important;white-space:nowrap!important}
.chat-record-auto{font-size:12px!important;font-weight:900!important;border-radius:9px!important;padding:7px 11px!important;line-height:1!important;box-shadow:none!important}
.chat-source-online{background:#e8f4ff!important;color:#0c5f91!important;border:1px solid #a8d2ec!important}
.chat-source-rq{background:#f1ecff!important;color:#6335a8!important;border:1px solid #cdbcf3!important}
.chat-source-dn{background:#eaf8ef!important;color:#17683a!important;border:1px solid #afe0c0!important}
.chat-source-hsmt{background:#fff1df!important;color:#9a5410!important;border:1px solid #efc489!important}

/* CRM: larger text, proportional columns, comfortable density */
.crm-page{font-size:15px!important}.crm-page h1{font-size:30px!important}.crm-page .pagehead p{font-size:15px!important}
.crm-toolbar input,.crm-toolbar select,.crm-toolbar button{font-size:14px!important;min-height:42px!important}
.crm-table{font-size:14px!important;table-layout:fixed!important}.crm-table th{font-size:13px!important;padding:12px 10px!important;line-height:1.25!important}.crm-table td{font-size:14px!important;padding:12px 10px!important;line-height:1.4!important}.crm-table td b{font-size:14px!important}.crm-table td small{font-size:12px!important;margin-top:3px!important}
.crm-table th:nth-child(1){width:23%!important}.crm-table th:nth-child(2){width:12%!important}.crm-table th:nth-child(3){width:13%!important}.crm-table th:nth-child(4){width:13%!important}.crm-table th:nth-child(5){width:16%!important}.crm-table th:nth-child(6){width:6%!important}.crm-table th:nth-child(7){width:10%!important}.crm-table th:nth-child(8){width:7%!important}
.crm-project{font-size:13px!important;min-height:42px!important}.crm-project b{font-size:13px!important}

/* Chat: professional compact panel, readable like Telegram/Viber */
.qi-chat-drawer{width:430px!important;height:min(610px,calc(100vh - 105px))!important;bottom:14px!important;top:auto!important}.qi-chat-drawer.collapsed{transform:translateX(415px)!important}
.qi-chat-panel{grid-template-rows:auto auto auto auto auto minmax(0,1fr) auto auto auto!important;border-radius:18px 0 0 18px!important;box-shadow:0 18px 48px rgba(16,47,68,.25)!important}
.qi-chat-head{padding:12px 14px!important}.qi-chat-head b{font-size:18px!important}.qi-chat-head small{font-size:12px!important}
.qi-chat-modes{gap:8px!important;padding:8px 10px!important}.qi-chat-modes button{font-size:14px!important;font-weight:900!important;min-height:40px!important;border-radius:12px!important}
.qi-chat-modes button[data-mode="group"]{background:#e9f4ff!important;color:#115b86!important;border-color:#b6d8ed!important}.qi-chat-modes button[data-mode="group"].active{background:#16648e!important;color:#fff!important}
.qi-chat-modes button[data-mode="private"]{background:#f2edff!important;color:#653ba1!important;border-color:#cfc1ef!important}.qi-chat-modes button[data-mode="private"].active{background:#6b45a4!important;color:#fff!important}
.qi-chat-modes button[data-mode="audit"]{background:#fff3df!important;color:#945516!important;border-color:#eec995!important}.qi-chat-modes button[data-mode="audit"].active{background:#a86420!important;color:#fff!important}
.qi-chat-users{padding:8px 10px!important;gap:7px!important;min-height:46px!important;max-height:88px!important}.qi-chat-users button{font-size:13px!important;font-weight:800!important;padding:7px 10px!important;border-radius:999px!important}
.qi-chat-private-state,.qi-chat-context,.qi-chat-reply{font-size:13px!important;padding:8px 11px!important}
.qi-chat-history{padding:4px 10px 0!important}.qi-chat-old>summary{font-size:13px!important;padding:7px 3px!important;color:#536b7a!important}
.qi-chat-list{min-height:0!important;padding:10px 12px!important;gap:9px!important;scroll-behavior:smooth!important}.qi-chat-msg{font-size:14px!important;padding:9px 10px!important;border-radius:12px!important;max-width:86%!important}.qi-chat-msg p{font-size:15px!important;line-height:1.45!important;margin:5px 0!important}.qi-chat-msg-meta b{font-size:13px!important}.qi-chat-msg-meta small{font-size:11px!important}.qi-chat-open-link{font-size:13px!important;padding:6px 9px!important}
.qi-chat-form{grid-template-columns:1fr 72px!important;gap:7px!important;padding:8px 10px 4px!important}.qi-chat-form textarea{height:58px!important;min-height:58px!important;font-size:15px!important;line-height:1.4!important;padding:9px 11px!important;border-radius:12px!important}.qi-chat-form>button{height:58px!important;font-size:15px!important;border-radius:12px!important}
.qi-chat-icons{padding:5px 10px 9px!important;gap:5px!important;overflow-x:auto!important}.qi-chat-icons button{flex:0 0 31px!important;width:31px!important;height:31px!important;font-size:17px!important;background:#f2f6f8!important;border:1px solid #e1e8ed!important}
.qi-chat-edge{font-size:14px!important;font-weight:900!important}
@media(max-width:820px){.qi-chat-drawer{width:min(95vw,430px)!important;height:min(600px,calc(100vh - 72px))!important}.qi-chat-drawer.collapsed{transform:translateX(calc(100% - 15px))!important}.crm-table{min-width:1080px!important}}
/* V14.11.4 final Chat layout: flex removes legacy grid row conflicts */
.qi-chat-panel{display:flex!important;flex-direction:column!important;grid-template-rows:none!important}
.qi-chat-head,.qi-chat-ticker,.qi-chat-modes,.qi-chat-users,.qi-chat-private-state,.qi-chat-color-picker,.qi-chat-context,.qi-chat-history,.qi-chat-reply,.qi-chat-form,.qi-chat-icons{flex:0 0 auto!important}
.qi-chat-list{flex:1 1 auto!important;min-height:120px!important;overflow-y:auto!important}
.qi-chat-icons{display:flex!important;flex-direction:row!important;align-items:center!important;white-space:nowrap!important}

/* V14.13.8 — textarea co giãn theo nội dung, không giữ khung cao cố định. */
<style>
.pricing textarea,.item-description,.proposal-description,.sale-note-cell textarea,.admin-note-cell textarea{
 height:auto!important;min-height:46px!important;max-height:420px;overflow-y:hidden;resize:vertical;line-height:1.4;
}
.original-description textarea{min-height:52px!important;max-height:420px}
.upload-history-panel summary{cursor:pointer}
.upload-history-panel table{min-width:980px}
.rq-upload-compact{flex-wrap:wrap}
.rq-upload-compact .upload-file{min-width:280px;flex:1}
</style>
