/* ID SOLUTECH customer quotation portal — login gate + one-screen dashboard (current quotation, history, unit price trend,
   printable quotation). All styles stay inside .idst-qp / .idst-qd and the #idst-quotation-portal Elementor container. */
.idst-qp{--qp-bg:#f3f4f7;--qp-card:#fff;--qp-text:#111827;--qp-sub:#6b7280;--qp-faint:#9aa3b2;--qp-border:#e6e9ee;--qp-soft:#f5f7fa;--qp-accent:#4f7be8;--qp-accent-soft:#e7eefc;--qp-ag:#5b6b86;--qp-pd:#b07a1f;--qp-au:#c9a227;--qp-proc:#2fa37a;--qp-margin:#c7cdd8;--qp-ok:#22a06b;--qp-down:#1f7a3f;--qp-up:#c73a2e;--qp-radius:16px;position:relative;width:100%;min-width:0;color:var(--qp-text);font-family:inherit;font-size:14px;line-height:1.5;letter-spacing:-.02em;font-variant-numeric:tabular-nums;text-align:left;isolation:isolate}
.idst-qp *,.idst-qp *:before,.idst-qp *:after{box-sizing:border-box}
.idst-qp [hidden]{display:none!important}
.idst-qp :is(h3,h4,p,dl,dd,dt,ul,li){margin:0;padding:0;color:inherit;list-style:none}
.idst-qp h3,.idst-qp h4{font-family:inherit;text-transform:none}
.idst-qp :is(button,input,select){font-family:inherit;letter-spacing:inherit;color:inherit;box-shadow:none;text-transform:none}
.idst-qp button{appearance:none;cursor:pointer;background:none;border:0;border-radius:0;margin:0;padding:0;min-height:0;text-align:left}
.idst-qp button:before,.idst-qp button:after{content:none}
.idst-qp button:disabled{cursor:default}
.idst-qp :is(button,input,select,tr,a,[tabindex]):focus-visible{outline:2px solid #111827;outline-offset:2px}
.idst-qp small{font-size:inherit}
.idst-qp__sr-only{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip-path:inset(50%)!important;white-space:nowrap!important}
.idst-qp__muted{color:var(--qp-sub)}
.idst-qp__kicker{font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--qp-faint)}
.idst-qp__card{background:var(--qp-card);border:1px solid var(--qp-border);border-radius:var(--qp-radius);padding:18px 20px;box-shadow:0 1px 2px #10182808,0 12px 32px -20px #10182830;min-width:0}
.idst-qp__card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:10px}
.idst-qp .idst-qp__card-title{font-size:16px;font-weight:700;line-height:1.35;letter-spacing:-.03em}
.idst-qp .idst-qp__card-sub{font-size:12px;line-height:1.5;color:var(--qp-sub);margin-top:3px}
.idst-qp .idst-qp__chip{display:inline-flex;align-items:center;gap:7px;padding:6px 12px;border-radius:999px;background:#fff;border:1px solid var(--qp-border);font-size:12px;line-height:1.4;font-weight:600;color:#374151;letter-spacing:0;white-space:nowrap;box-shadow:0 1px 2px #10182808}
.idst-qp .idst-qp__chip--muted{color:var(--qp-sub);font-weight:500}
.idst-qp .idst-qp__chip--sample{background:transparent;border-color:transparent;box-shadow:none;color:var(--qp-sub);font-weight:500;font-size:12.5px;letter-spacing:.02em;padding:7px 2px}
.idst-qp .idst-qp__chip--sample i{width:8px;height:8px;border-radius:50%;background:#e0a21b;flex:none}
.idst-qp__badge{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:999px;background:#f1f3f6;color:#374151;font-size:12px;font-weight:700;letter-spacing:0;white-space:nowrap;flex:none}
.idst-qp__badge--down{background:#e3f4ea;color:var(--qp-down)}.idst-qp__badge--up{background:#fdeceb;color:var(--qp-up)}

/* Top bar (raised into the heading row on desktop) */
.idst-qp__topbar{position:absolute;right:0;bottom:100%;margin-bottom:14px;display:flex;align-items:center;justify-content:flex-end;flex-wrap:nowrap;gap:10px 14px;max-width:none;white-space:nowrap;z-index:2}
@media(min-width:901px){.idst-qp[data-state=open] .idst-qp__chip--sample{display:none}}
.idst-qp__metals{display:flex;align-items:center;gap:6px}
.idst-qp .idst-qp__metal{display:inline-flex;align-items:center;gap:7px;height:36px;padding:0 9px 0 8px;border-radius:12px;background:#fff;border:1px solid var(--qp-border);box-shadow:0 1px 2px #10182808;white-space:nowrap;letter-spacing:0}
.idst-qp .idst-qp__metal i{width:22px;height:22px;border-radius:7px;display:inline-flex;align-items:center;justify-content:center;font-style:normal;font-size:10px;font-weight:800;color:#fff;letter-spacing:.02em}
.idst-qp .idst-qp__metal--ag i{background:var(--qp-ag)}.idst-qp .idst-qp__metal--pd i{background:var(--qp-pd)}.idst-qp .idst-qp__metal--au i{background:var(--qp-au)}
.idst-qp .idst-qp__metal strong{font-size:13.5px;font-weight:800;letter-spacing:-.02em}
.idst-qp .idst-qp__metal small{display:none;font-size:10px;color:var(--qp-faint);margin-left:1px}
.idst-qp .idst-qp__metal em{font-style:normal;font-size:11px;font-weight:700;padding:2px 5px;border-radius:6px;background:#f1f3f6;color:#374151}
.idst-qp .idst-qp__metal em.is-down{background:#e3f4ea;color:var(--qp-down)}.idst-qp .idst-qp__metal em.is-up{background:#fdeceb;color:var(--qp-up)}
.idst-qp__account{display:flex;align-items:center;gap:12px;padding:6px 8px 6px 6px;border-radius:14px;background:#111827;color:#fff;box-shadow:0 10px 24px -14px #11182799}
.idst-qp__account-avatar{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:10px;background:var(--qp-accent);color:#fff;font-weight:800;font-size:14px}
.idst-qp__account-copy{display:flex;flex-direction:column;line-height:1.2;white-space:nowrap}
.idst-qp__account-copy strong{font-size:13.5px;font-weight:700}
.idst-qp__account-copy small{font-size:11px;color:#9aa3b2;letter-spacing:0}
.idst-qp .idst-qp__logout{display:inline-flex;align-items:center;gap:6px;margin-left:4px;padding:7px 12px;border-radius:10px;background:#ffffff14;color:#e5e7eb;font-size:12px;font-weight:600;transition:background .15s}
.idst-qp .idst-qp__logout:hover{background:#ffffff26;color:#fff}
.idst-qp .idst-qp__logout svg{width:15px;height:15px}

/* Dashboard layout */
.idst-qp__dashboard{display:grid;grid-template-columns:300px minmax(0,1fr);gap:20px;align-items:stretch;transition:filter .35s ease,opacity .35s ease}
.idst-qp[data-state=locked] .idst-qp__dashboard{filter:blur(6px) saturate(.6);opacity:.55;pointer-events:none;user-select:none}
.idst-qp__side{display:flex;flex-direction:column;gap:6px;padding:14px 14px 12px;min-height:0}
.idst-qp__side-label{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--qp-faint);padding:6px 6px 2px;display:flex;justify-content:space-between;gap:8px}
.idst-qp__side-label span{font-weight:600;letter-spacing:0;text-transform:none;color:var(--qp-sub)}
.idst-qp__customer{display:flex;align-items:center;gap:12px;padding:12px 12px 14px;border-bottom:1px solid var(--qp-border);margin-bottom:4px}
.idst-qp__customer-avatar{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:12px;background:linear-gradient(135deg,#4f7be8,#2f5fd0);color:#fff;font-weight:800;font-size:17px;flex:none}
.idst-qp__customer-copy{display:flex;flex-direction:column;min-width:0;line-height:1.25}
.idst-qp__customer-copy strong{font-size:14.5px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.idst-qp__customer-copy small{font-size:11.5px;color:var(--qp-sub);letter-spacing:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.idst-qp__menu{display:flex;flex-direction:column;gap:4px}
.idst-qp .idst-qp__menu-item{position:relative;display:flex;align-items:center;gap:10px;width:100%;padding:8px 12px;border:1px solid var(--qp-border);border-radius:11px;background:#fff;box-shadow:0 1px 2px #1018280a;color:#374151;transition:background .15s,color .15s,border-color .15s,box-shadow .15s,transform .15s}
.idst-qp .idst-qp__menu-item svg{width:18px;height:18px;flex:none;opacity:.85}
.idst-qp .idst-qp__menu-item>span{display:flex;flex-direction:column;font-size:13.5px;font-weight:700;line-height:1.2;min-width:0}
.idst-qp .idst-qp__menu-item>span small{font-size:10.5px;font-weight:500;color:var(--qp-faint);letter-spacing:.02em;margin-top:2px}
.idst-qp .idst-qp__menu-item>b{margin-left:auto;font-size:11px;font-weight:700;color:var(--qp-sub);background:#f1f3f6;border-radius:999px;padding:1px 8px}
.idst-qp .idst-qp__menu-item:hover{border-color:#b8c0ca;box-shadow:0 6px 16px -8px #10182840;transform:translateY(-1px)}
.idst-qp .idst-qp__menu-item[aria-pressed=true]{background:#111827;border-color:#111827;color:#fff}
.idst-qp .idst-qp__menu-item[aria-pressed=true]>span small{color:#9aa3b2}
.idst-qp .idst-qp__menu-item[aria-pressed=true]>b{background:#ffffff22;color:#fff}
.idst-qp__month{display:grid;grid-template-columns:34px 1fr 34px;align-items:center;gap:6px;padding:0 2px}
.idst-qp .idst-qp__month button{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border:1px solid var(--qp-border);border-radius:10px;background:#fff;color:#374151;transition:border-color .15s,background .15s}
.idst-qp .idst-qp__month button:hover:not(:disabled){border-color:#b8c0ca;background:#f8f9fb}
.idst-qp .idst-qp__month button:disabled{opacity:.35}
.idst-qp .idst-qp__month button svg{width:16px;height:16px}
.idst-qp .idst-qp__month strong{text-align:center;font-size:14.5px;font-weight:700;letter-spacing:-.02em}
.idst-qp__months{display:flex;flex-wrap:wrap;gap:5px;padding:4px 2px 0}
.idst-qp .idst-qp__month-chip{padding:4px 10px;border:1px solid var(--qp-border);border-radius:999px;background:#fff;font-size:12px;font-weight:600;color:#374151;transition:background .15s,border-color .15s,color .15s}
.idst-qp .idst-qp__month-chip:hover{border-color:#b8c0ca}
.idst-qp .idst-qp__month-chip[aria-pressed=true]{background:#111827;border-color:#111827;color:#fff}
.idst-qp .idst-qp__month-chip.is-current:after{content:"";display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--qp-ok);margin-left:5px;vertical-align:middle}
.idst-qp__search{display:flex;align-items:center;gap:8px;padding:0 10px 0 12px;border:1px solid var(--qp-border);border-radius:11px;background:#fff;color:var(--qp-sub);transition:border-color .15s}
.idst-qp__search:focus-within{border-color:#111827;color:var(--qp-text)}
.idst-qp__search svg{width:16px;height:16px;flex:none}
.idst-qp .idst-qp__search input{flex:1;min-width:0;height:38px;border:0;background:transparent;padding:0;font-size:13px;color:var(--qp-text);outline:none}
.idst-qp .idst-qp__search input::placeholder{color:var(--qp-faint)}
.idst-qp .idst-qp__search input::-webkit-search-cancel-button{-webkit-appearance:none}
.idst-qp__basis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding:0 2px}
.idst-qp__basis-item{display:flex;flex-direction:column;gap:1px;padding:8px 10px;border-radius:11px;border:1px solid var(--qp-border);background:#fff;min-width:0;border-top-width:3px}
.idst-qp__basis-item--ag{border-top-color:var(--qp-ag)}.idst-qp__basis-item--pd{border-top-color:var(--qp-pd)}.idst-qp__basis-item--au{border-top-color:var(--qp-au)}
.idst-qp__basis-item span{font-size:10.5px;font-weight:700;color:var(--qp-sub);letter-spacing:.02em}
.idst-qp__basis-item strong{font-size:13px;font-weight:800;letter-spacing:-.02em;white-space:nowrap}
.idst-qp__basis-item small{font-size:10px;color:var(--qp-faint);letter-spacing:0;white-space:nowrap}
.idst-qp__basis-item small.is-down{color:var(--qp-down)}.idst-qp__basis-item small.is-up{color:var(--qp-up)}
.idst-qp__side-foot{margin-top:auto;padding:12px 6px 0;display:flex;flex-direction:column;gap:4px;font-size:12px;line-height:1.5;letter-spacing:0}
.idst-qp__side-foot>span:first-child{font-weight:700;color:var(--qp-text)}
.idst-qp__main{display:flex;flex-direction:column;gap:16px;min-width:0}
.idst-qp__kpis{display:grid;grid-template-columns:1.25fr repeat(3,minmax(0,1fr));padding:0}
.idst-qp__kpi{display:flex;flex-direction:column;justify-content:center;gap:3px;min-width:0;padding:12px 20px 11px;border-right:1px solid var(--qp-border)}
.idst-qp__kpi:last-child{border-right:0}
.idst-qp__kpi--lead{background:linear-gradient(135deg,var(--qp-accent-soft) 0%,#fff 70%);border-radius:var(--qp-radius) 0 0 var(--qp-radius)}
.idst-qp__kpi-label{font-size:12px;line-height:1.4;color:var(--qp-sub);white-space:nowrap}
.idst-qp__kpi-value{display:block;font-size:26px;font-weight:800;line-height:1.2;letter-spacing:-.04em;white-space:nowrap}
.idst-qp__kpi-value small{font-size:12px;font-weight:600;color:var(--qp-sub);margin-left:4px;letter-spacing:0}
.idst-qp__kpi--lead .idst-qp__kpi-value{font-size:32px}
.idst-qp__kpi-value--doc{font-size:20px;letter-spacing:-.02em}
.idst-qp__kpi-sub{font-size:12px;line-height:1.4;color:var(--qp-sub);letter-spacing:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.idst-qp__kpi-sub b{font-weight:700}
.idst-qp__kpi-sub b.is-down{color:var(--qp-down)}.idst-qp__kpi-sub b.is-up{color:var(--qp-up)}
.idst-qp__grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);gap:16px;align-items:stretch;min-height:0}
.idst-qp__stack{display:grid;grid-template-rows:auto minmax(0,1fr);gap:16px;min-width:0}

/* Table */
.idst-qp__table-card{display:flex;flex-direction:column;min-height:0}
.idst-qp__head-actions{display:flex;align-items:center;gap:8px;flex:none}
.idst-qp .idst-qp__open-doc{display:inline-flex;align-items:center;gap:7px;height:34px;padding:0 12px;border-radius:10px;background:#111827;color:#fff;font-size:12.5px;font-weight:700;letter-spacing:0;transition:background .15s,transform .15s}
.idst-qp .idst-qp__open-doc:hover{background:#2b3444;transform:translateY(-1px)}
.idst-qp .idst-qp__open-doc svg{width:16px;height:16px}
.idst-qp__table-scroll{position:relative;flex:1;min-height:0;max-height:440px;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#c3c9d4 transparent;border-top:1px solid var(--qp-border)}
.idst-qp__table{border-collapse:separate;border-spacing:0;table-layout:fixed;width:100%;margin:0;border:0;font-size:13px;line-height:1.4;color:var(--qp-text);background:#fff}
.idst-qp .idst-qp__table th{position:sticky;top:0;z-index:1;background:#fff;font-size:11.5px;font-weight:500;line-height:1.3;text-align:left;vertical-align:bottom;white-space:nowrap;border:0;border-bottom:1px solid var(--qp-border);padding:8px 8px 7px;color:var(--qp-sub);letter-spacing:0}
.idst-qp .idst-qp__table th span{display:block;font-size:10.5px;color:var(--qp-faint)}
.idst-qp .idst-qp__table th.idst-qp__num,.idst-qp .idst-qp__table td.idst-qp__num{text-align:right}
.idst-qp .idst-qp__table th.idst-qp__center,.idst-qp .idst-qp__table td.idst-qp__center{text-align:center}
.idst-qp .idst-qp__table td{padding:8px 8px;border:0;border-bottom:1px solid #f0f2f5;vertical-align:middle;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;background:transparent;letter-spacing:0}
.idst-qp .idst-qp__table tbody tr{cursor:pointer;transition:background .12s}
.idst-qp .idst-qp__table tbody tr:hover td{background:#f8f9fb}
.idst-qp .idst-qp__table tbody tr[aria-selected=true] td{background:var(--qp-accent-soft)}
.idst-qp .idst-qp__table tbody tr[aria-selected=true] td:first-child{box-shadow:inset 3px 0 0 var(--qp-accent)}
.idst-qp .idst-qp__table td.idst-qp__strong{font-weight:700}
.idst-qp .idst-qp__table td.idst-qp__dim{color:var(--qp-sub)}
.idst-qp__item{display:flex;flex-direction:column;line-height:1.25;min-width:0}
.idst-qp__item strong{font-size:13px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.idst-qp__item small{font-size:11px;color:var(--qp-sub);letter-spacing:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.idst-qp__delta{display:inline-flex;align-items:center;padding:2px 7px;border-radius:6px;font-size:11px;font-weight:700;background:#f1f3f6;color:#4b5563}
.idst-qp__delta.is-down{background:#e3f4ea;color:var(--qp-down)}.idst-qp__delta.is-up{background:#fdeceb;color:var(--qp-up)}
.idst-qp__status{display:inline-flex;align-items:center;gap:5px;padding:2px 8px;border-radius:6px;font-size:11px;font-weight:700;background:#e3f4ea;color:var(--qp-down)}
.idst-qp__status--live{background:#e9f0fe;color:#2b5fd0}
.idst-qp__status--live:before{content:"";width:6px;height:6px;border-radius:50%;background:#2b5fd0;animation:idst-qp-pulse 1.6s ease-out infinite}
@keyframes idst-qp-pulse{0%{box-shadow:0 0 0 0 #2b5fd066}100%{box-shadow:0 0 0 6px #2b5fd000}}
.idst-qp .idst-qp__doc-btn{display:inline-flex;align-items:center;gap:5px;padding:4px 9px;border:1px solid var(--qp-border);border-radius:8px;background:#fff;font-size:11.5px;font-weight:700;color:#374151;transition:border-color .15s,box-shadow .15s,transform .15s}
.idst-qp .idst-qp__doc-btn:hover{border-color:#b8c0ca;box-shadow:0 4px 10px -6px #10182866;transform:translateY(-1px)}
.idst-qp .idst-qp__doc-btn svg{width:14px;height:14px}
.idst-qp__price-cell{display:flex;flex-direction:column;align-items:flex-end;line-height:1.2}
.idst-qp__price-cell small{font-size:10.5px;color:var(--qp-faint);letter-spacing:0}
.idst-qp__empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:40px 20px;color:var(--qp-sub);text-align:center}
.idst-qp__empty strong{color:var(--qp-text);font-size:14px}
.idst-qp__empty p{font-size:12.5px}
.idst-qp__table-foot{display:flex;justify-content:space-between;gap:12px;padding:10px 2px 0;font-size:12px;color:var(--qp-sub);letter-spacing:0}
.idst-qp__table-foot span:first-child{font-weight:700;color:var(--qp-text)}

/* Detail card: unit price composition */
.idst-qp__detail-card{display:flex;flex-direction:column}
.idst-qp__detail{display:flex;flex-direction:column;gap:10px}
.idst-qp__detail-price{display:flex;align-items:baseline;justify-content:space-between;gap:12px}
.idst-qp__detail-price strong{font-size:26px;font-weight:800;letter-spacing:-.04em;line-height:1.1}
.idst-qp__detail-price strong small{font-size:12px;font-weight:600;color:var(--qp-sub);margin-left:4px;letter-spacing:0}
.idst-qp__detail-price span{font-size:12px;color:var(--qp-sub);letter-spacing:0;text-align:right;line-height:1.35}
.idst-qp__bar{display:flex;height:12px;border-radius:6px;overflow:hidden;background:#f1f3f6}
.idst-qp__bar i{display:block;height:100%;min-width:2px}
.idst-qp__bar i.is-ag{background:var(--qp-ag)}.idst-qp__bar i.is-pd{background:var(--qp-pd)}.idst-qp__bar i.is-au{background:var(--qp-au)}.idst-qp__bar i.is-alloy{background:#8c99ad}.idst-qp__bar i.is-proc{background:var(--qp-proc)}.idst-qp__bar i.is-margin{background:var(--qp-margin)}.idst-qp__bar i.is-vat{background:#dfe3ea}
.idst-qp__parts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 14px}
.idst-qp__part{display:grid;grid-template-columns:10px minmax(0,1fr) auto;align-items:center;gap:8px;font-size:12px;letter-spacing:0;line-height:1.3;padding:3px 0;border-bottom:1px solid #f0f2f5}
.idst-qp__part i{width:10px;height:10px;border-radius:3px;display:block}
.idst-qp__part i.is-ag{background:var(--qp-ag)}.idst-qp__part i.is-pd{background:var(--qp-pd)}.idst-qp__part i.is-au{background:var(--qp-au)}.idst-qp__part i.is-alloy{background:#8c99ad}.idst-qp__part i.is-proc{background:var(--qp-proc)}.idst-qp__part i.is-margin{background:var(--qp-margin)}.idst-qp__part i.is-vat{background:#dfe3ea}
.idst-qp__part span{display:flex;flex-direction:column;min-width:0;color:var(--qp-sub)}
.idst-qp__part span b{color:var(--qp-text);font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.idst-qp__part span small{font-size:10.5px;color:var(--qp-faint);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.idst-qp__part strong{font-weight:700;white-space:nowrap;text-align:right}
.idst-qp__part strong small{display:block;font-size:10.5px;font-weight:600;color:var(--qp-faint)}
.idst-qp__detail-note{font-size:11.5px;color:var(--qp-faint);letter-spacing:0;line-height:1.45}

/* Chart card */
.idst-qp__chart-card{display:flex;flex-direction:column;min-height:0}
.idst-qp__legend{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:4px 10px;font-size:11.5px;color:var(--qp-sub);letter-spacing:0;max-width:60%}
.idst-qp__legend span{display:inline-flex;align-items:center;gap:5px;white-space:nowrap}
.idst-qp__legend i{width:10px;height:3px;border-radius:2px;background:currentColor;display:inline-block}
.idst-qp__legend i.is-bar{height:9px;border-radius:2px}
.idst-qp .idst-qp__legend button{display:inline-flex;align-items:center;gap:5px;padding:2px 7px;border-radius:6px;border:1px solid transparent;font-size:11px;font-weight:600;color:var(--qp-sub);white-space:nowrap;transition:background .12s,color .12s}
.idst-qp .idst-qp__legend button:hover{background:#f1f3f6;color:var(--qp-text)}
.idst-qp .idst-qp__legend button[aria-pressed=true]{background:#111827;color:#fff;border-color:#111827}
.idst-qp__chart-shell{position:relative;flex:1;min-height:200px;height:220px}
.idst-qp__chart{display:block;width:100%;height:100%;overflow:visible}
.idst-qp__chart .idst-qp__grid-line{stroke:#eceff3;stroke-width:1}
.idst-qp__chart .idst-qp__axis{fill:var(--qp-faint);font-size:10.5px;font-family:inherit;letter-spacing:0}
.idst-qp__chart .idst-qp__axis--right{text-anchor:end}
.idst-qp__chart .idst-qp__line{fill:none;stroke-width:2.2;stroke-linejoin:round;stroke-linecap:round}
.idst-qp__chart .idst-qp__line--thin{stroke-width:1.4;opacity:.45}
.idst-qp__chart .idst-qp__area{fill:url(#idst-qp-area);opacity:1}
.idst-qp__chart .idst-qp__dot{fill:#fff;stroke-width:2}
.idst-qp__chart .idst-qp__bar-rect{rx:4}
.idst-qp__chart .idst-qp__value{fill:var(--qp-text);font-size:10.5px;font-weight:700;text-anchor:middle;font-family:inherit;letter-spacing:0}
.idst-qp__chart .idst-qp__value--light{fill:var(--qp-sub);font-weight:600}
.idst-qp__chart .idst-qp__hit{fill:transparent;cursor:pointer}
.idst-qp__chart .idst-qp__hit:hover{fill:#1118270a}
.idst-qp__tooltip{position:absolute;pointer-events:none;background:#111827;color:#fff;border-radius:10px;padding:8px 11px;font-size:11.5px;line-height:1.4;letter-spacing:0;white-space:nowrap;box-shadow:0 10px 24px -12px #111827aa;z-index:3;transform:translate(-50%,calc(-100% - 10px))}
.idst-qp__tooltip strong{display:block;font-size:12.5px;margin-bottom:2px}
.idst-qp__tooltip span{display:block;color:#cbd2dc}

/* Login gate */
.idst-qp__gate{position:absolute;inset:0;z-index:3;display:grid;grid-template-columns:minmax(0,440px) minmax(0,320px);justify-content:center;align-content:center;gap:24px;padding:24px}
.idst-qp__login{position:relative;padding:28px 30px 24px;box-shadow:0 30px 60px -30px #11182766,0 1px 2px #10182814}
.idst-qp .idst-qp__login-title{font-size:26px;font-weight:800;letter-spacing:-.04em;line-height:1.2;margin:6px 0 8px}
.idst-qp .idst-qp__login-sub{font-size:13px;color:var(--qp-sub);line-height:1.55;margin-bottom:18px;letter-spacing:0}
.idst-qp__field{display:flex;flex-direction:column;gap:6px;margin-bottom:12px;letter-spacing:0}
.idst-qp__field>span:first-child{font-size:12px;font-weight:700;color:#374151}
.idst-qp__field-wrap{position:relative;display:block}
.idst-qp .idst-qp__field input{width:100%;height:46px;padding:0 14px;border:1px solid #d5dae2;border-radius:12px;background:#fff;font-size:14px;color:var(--qp-text);outline:none;transition:border-color .15s,box-shadow .15s;letter-spacing:0}
.idst-qp .idst-qp__field input:focus{border-color:#111827;box-shadow:0 0 0 3px #11182714}
.idst-qp .idst-qp__field input::placeholder{color:var(--qp-faint)}
.idst-qp .idst-qp__field-wrap input{padding-right:46px}
.idst-qp .idst-qp__eye{position:absolute;right:6px;top:50%;transform:translateY(-50%);display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:9px;color:var(--qp-sub);transition:background .15s,color .15s}
.idst-qp .idst-qp__eye:hover,.idst-qp .idst-qp__eye[aria-pressed=true]{background:#f1f3f6;color:var(--qp-text)}
.idst-qp .idst-qp__eye svg{width:18px;height:18px}
.idst-qp .idst-qp__login-error{font-size:12.5px;font-weight:600;color:#c73a2e;background:#fdeceb;border-radius:9px;padding:9px 12px;margin:-2px 0 12px;letter-spacing:0}
.idst-qp .idst-qp__submit{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;height:48px;border-radius:12px;background:#111827;color:#fff;font-size:15px;font-weight:700;transition:background .15s,transform .15s}
.idst-qp .idst-qp__submit:hover:not(:disabled){background:#2b3444;transform:translateY(-1px)}
.idst-qp .idst-qp__submit:disabled{opacity:.7}
.idst-qp .idst-qp__submit.is-busy svg{animation:idst-qp-spin 1s linear infinite}
.idst-qp .idst-qp__submit svg{width:18px;height:18px}
@keyframes idst-qp-spin{to{transform:rotate(360deg)}}
.idst-qp__login-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px;font-size:12px;letter-spacing:0}
.idst-qp .idst-qp__link{color:var(--qp-accent);font-weight:700;font-size:12.5px;text-decoration:underline;text-underline-offset:3px}
.idst-qp__gate-side{display:flex;flex-direction:column;gap:12px;align-self:center}
.idst-qp__gate-item{display:flex;align-items:center;gap:14px;padding:14px 16px;border-radius:14px;background:#ffffffcc;border:1px solid #ffffff;backdrop-filter:blur(8px);box-shadow:0 10px 30px -20px #11182866}
.idst-qp__gate-item svg{width:24px;height:24px;color:var(--qp-accent);flex:none}
.idst-qp__gate-item strong{display:block;font-size:14px;font-weight:700}
.idst-qp__gate-item span{display:block;font-size:12px;color:var(--qp-sub);letter-spacing:0}

/* Quotation dialog */
.idst-qp__dialog{border:0;padding:0;margin:auto;background:transparent;max-width:min(1120px,calc(100vw - 32px));max-height:calc(100vh - 24px);width:100%;color:var(--qp-text)}
.idst-qp__dialog::backdrop{background:#0f172ab3;backdrop-filter:blur(4px)}
.idst-qp__sheet{background:#fff;border-radius:18px;box-shadow:0 40px 80px -30px #0f172a99;overflow:hidden;font-family:inherit}
.idst-qp__sheet-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 20px 10px;border-bottom:1px solid var(--qp-border);background:#fff;color:var(--qp-text)}
.idst-qp__sheet-head>div:first-child{display:flex;align-items:baseline;gap:12px;min-width:0}
.idst-qp .idst-qp__sheet-head h3{font-size:16px;font-weight:800;letter-spacing:-.03em;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.idst-qp__sheet-actions{display:flex;align-items:center;gap:8px;flex:none}
.idst-qp .idst-qp__print{display:inline-flex;align-items:center;gap:7px;height:36px;padding:0 12px;border-radius:10px;background:#111827;color:#fff;font-size:12.5px;font-weight:700;transition:background .15s}
.idst-qp .idst-qp__print:hover{background:#2b3444}
.idst-qp .idst-qp__print svg{width:16px;height:16px}
.idst-qp .idst-qp__close{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:10px;border:1px solid var(--qp-border);color:#374151;transition:background .15s}
.idst-qp .idst-qp__close:hover{background:#f1f3f6}
.idst-qp .idst-qp__close svg{width:18px;height:18px}
.idst-qp__sheet-body{padding:12px 16px 14px;max-height:calc(100vh - 100px);overflow:auto;background:#eef0f3}
.idst-qp__sheet-body.is-fitted{overflow:hidden}

/* Quotation document */
.idst-qd{background:#fff;color:#111827;border:1px solid #d9dde3;box-shadow:0 10px 30px -18px #11182766;padding:18px 24px 16px;font-size:12px;line-height:1.35;transform-origin:top center;letter-spacing:0;font-variant-numeric:tabular-nums;font-family:inherit}
.idst-qd *{box-sizing:border-box}
.idst-qd__head{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto;gap:4px 20px;padding-bottom:8px;border-bottom:2px solid #111827;margin-bottom:10px}
.idst-qd__brand{display:flex;align-items:center;gap:12px;grid-column:1;grid-row:1}
.idst-qd__mark{display:inline-flex;align-items:baseline;gap:4px;padding:6px 10px;border-radius:8px;background:#111827;color:#fff;line-height:1}
.idst-qd__mark b{font-size:16px;font-weight:800;letter-spacing:-.03em}.idst-qd__mark i{font-style:normal;font-size:10px;font-weight:700;letter-spacing:.12em;color:#cbd2dc}
.idst-qd__company{display:flex;flex-direction:column;gap:1px;font-size:11px;color:#4b5563}
.idst-qd__company strong{font-size:12.5px;color:#111827}
.idst-qd__title{grid-column:1/-1;grid-row:2;text-align:center}
.idst-qd .idst-qd__title h4{margin:0;font-size:22px;font-weight:800;letter-spacing:.3em;color:#111827;font-family:inherit;text-transform:none;text-indent:.3em}
.idst-qd__title span{display:block;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:#6b7280;margin-top:1px}
.idst-qd__docno{grid-column:2;grid-row:1;display:flex;flex-direction:column;align-items:flex-end;gap:1px;font-size:11px;color:#6b7280;white-space:nowrap}
.idst-qd__docno strong{font-size:13px;color:#111827;font-weight:700}
.idst-qd__top{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:12px;margin-bottom:10px}
.idst-qd__box{border:1px solid #d9dde3;border-radius:6px;padding:8px 12px;display:flex;flex-direction:column;gap:2px;font-size:11.5px;color:#4b5563}
.idst-qd__box strong{font-size:14px;color:#111827;font-weight:800}
.idst-qd__box-label{font-size:10.5px;font-weight:700;letter-spacing:.06em;color:#6b7280;margin-bottom:2px}
.idst-qd .idst-qd__greeting{margin:6px 0 0;font-size:11.5px;color:#111827}
.idst-qd__metal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-top:2px}
.idst-qd__metal-grid>div{display:flex;flex-direction:column;align-items:center;padding:6px 4px;border-radius:5px;background:#f3f4f7}
.idst-qd__metal-grid span{font-size:10.5px;color:#6b7280}
.idst-qd__metal-grid strong{font-size:15px;font-weight:800;letter-spacing:-.02em}
.idst-qd__metal-grid small{font-size:10px;color:#9aa3b2}
.idst-qd .idst-qd__metal-note{margin:6px 0 0;font-size:10.5px;color:#6b7280}
.idst-qd__table{width:100%;border-collapse:collapse;font-size:12px;margin:0 0 8px}
.idst-qd__table th{border:1px solid #c9ced6;background:#f3f4f7;padding:5px 6px;font-size:11px;font-weight:700;color:#374151;text-align:center;white-space:nowrap}
.idst-qd__table td{border:1px solid #d9dde3;padding:4px 6px;text-align:center;white-space:nowrap}
.idst-qd__table td.idst-qd__left,.idst-qd__table th.idst-qd__left{text-align:left}
.idst-qd__table td.idst-qd__num,.idst-qd__table th.idst-qd__num{text-align:right}
.idst-qd__table td.idst-qd__strong{font-weight:700}
.idst-qd__desc{display:flex;flex-direction:column;line-height:1.25}
.idst-qd__desc strong{font-size:12px;font-weight:700}
.idst-qd__desc small{font-size:10.5px;color:#6b7280}
.idst-qd__totals{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:12px;align-items:stretch}
.idst-qd__terms{border:1px solid #d9dde3;border-radius:6px;padding:8px 12px;display:flex;flex-direction:column;gap:3px}
.idst-qd__terms>div{display:grid;grid-template-columns:36px minmax(0,1fr);gap:8px;font-size:11.5px;align-items:baseline}
.idst-qd__terms>div span{color:#6b7280;font-weight:700}
.idst-qd__terms>div strong{font-weight:600;color:#111827}
.idst-qd__sum{border:1px solid #d9dde3;border-radius:6px;overflow:hidden;display:flex;flex-direction:column}
.idst-qd__sum>div{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:6px 12px;border-bottom:1px solid #eceff3;font-size:12px}
.idst-qd__sum>div span{color:#6b7280}
.idst-qd__sum>div strong{font-weight:700}
.idst-qd__sum .idst-qd__grand{border-bottom:0;background:#111827;color:#fff;margin-top:auto;padding:9px 12px}
.idst-qd__sum .idst-qd__grand span{color:#cbd2dc;font-weight:700}
.idst-qd__sum .idst-qd__grand strong{font-size:17px;font-weight:800;letter-spacing:-.02em}
.idst-qd__foot{margin-top:10px;padding-top:8px;border-top:1px solid #d9dde3}
.idst-qd .idst-qd__basis{margin:0 0 8px;font-size:10.5px;color:#6b7280;line-height:1.45}
.idst-qd__sign{display:grid;grid-template-columns:1fr 1fr 1fr 120px;gap:12px;align-items:center}
.idst-qd__sign-box{display:flex;flex-direction:column;gap:1px;padding:4px 10px 4px;border-bottom:1px solid #111827}
.idst-qd__sign-box span{font-size:10.5px;color:#6b7280}
.idst-qd__sign-box strong{font-size:15px;font-weight:700;font-family:"Nanum Pen Script","Brush Script MT",cursive;letter-spacing:.03em}
.idst-qd__sign-box small{font-size:10px;color:#9aa3b2}
.idst-qd__stamp{justify-self:end;display:flex;flex-direction:column;align-items:center;justify-content:center;width:66px;height:66px;border:2.5px solid #c73a2e;border-radius:50%;color:#c73a2e;transform:rotate(-8deg);opacity:.85;line-height:1.1}
.idst-qd__stamp b{font-size:7.5px;letter-spacing:.06em}.idst-qd__stamp span{font-size:9.5px;font-weight:800;margin:2px 0}.idst-qd__stamp i{font-style:normal;font-size:5.5px;letter-spacing:.08em}

/* Responsive */
@media(min-width:1700px){.idst-qp__dashboard{grid-template-columns:320px minmax(0,1fr);gap:24px}.idst-qp__table-scroll{max-height:470px}}
@media(max-width:1500px){.idst-qp .idst-qp__metal em{display:none}.idst-qp .idst-qp__metal small{display:none}.idst-qp .idst-qp__table{font-size:12.5px}.idst-qp .idst-qp__table td{padding:8px 6px}.idst-qp__parts{grid-template-columns:minmax(0,1fr)}}
@media(max-width:1300px){.idst-qp__dashboard{grid-template-columns:260px minmax(0,1fr);gap:16px}.idst-qp__kpi{padding:12px 14px}.idst-qp__kpi-value{font-size:22px}.idst-qp__kpi--lead .idst-qp__kpi-value{font-size:27px}.idst-qp__kpi-value--doc{font-size:17px}.idst-qp__topbar{position:static;margin:0 0 12px;justify-content:flex-end;flex-wrap:wrap;white-space:normal}.idst-qp__basis{grid-template-columns:minmax(0,1fr)}.idst-qp__basis-item{flex-direction:row;align-items:baseline;gap:8px}}
@media(max-width:1100px){.idst-qp__grid{grid-template-columns:minmax(0,1fr)}.idst-qp__stack{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto}.idst-qp__table-scroll{max-height:320px}.idst-qp__gate{grid-template-columns:minmax(0,440px);justify-content:center}.idst-qp__gate-side{display:none}.idst-qp__parts{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.idst-qp__dashboard{grid-template-columns:minmax(0,1fr);gap:14px}.idst-qp__topbar{position:static;margin:0 0 12px;max-width:none;justify-content:space-between}.idst-qp__metals{flex-wrap:wrap}.idst-qp__side{padding:14px}.idst-qp__menu{flex-direction:row;gap:6px;overflow-x:auto;scrollbar-width:none}.idst-qp .idst-qp__menu-item{width:auto;flex:none;padding:7px 12px}.idst-qp .idst-qp__menu-item>span small{display:none}.idst-qp__side-foot{display:none}.idst-qp__basis{grid-template-columns:repeat(3,minmax(0,1fr))}.idst-qp__basis-item{flex-direction:column;gap:1px}.idst-qp__kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.idst-qp__kpi{border-bottom:1px solid var(--qp-border)}.idst-qp__kpi:nth-child(2){border-right:0}.idst-qp__kpi:nth-child(n+3){border-bottom:0}.idst-qp__kpi--lead{border-radius:var(--qp-radius) 0 0 0}.idst-qp__stack{grid-template-columns:minmax(0,1fr)}.idst-qp__gate{position:relative;inset:auto;padding:0;margin-bottom:14px;grid-template-columns:minmax(0,1fr)}.idst-qp[data-state=locked] .idst-qp__dashboard{display:none}.idst-qp__login{padding:22px 20px 20px}.idst-qp__parts{grid-template-columns:minmax(0,1fr)}.idst-qp__legend{max-width:none}.idst-qp__card-head{flex-wrap:wrap}}
@media(max-width:570px){.idst-qp .idst-qp__table{min-width:560px}.idst-qp__table-scroll{overflow:auto}.idst-qp .idst-qp__login-title{font-size:22px}.idst-qp__head-actions{width:100%;justify-content:space-between}}
@media(pointer:coarse){.idst-qp .idst-qp__menu-item{min-height:44px}.idst-qp .idst-qp__table td{padding-top:10px;padding-bottom:10px}}
@media(prefers-reduced-motion:reduce){.idst-qp *{transition:none!important;animation:none!important}}
@media(max-width:700px){.idst-qd{min-width:760px}.idst-qp__sheet-body{overflow:auto}}

/* Elementor container: heading row mirrors the dashboard columns; the dashboard spans both. */
#idst-quotation-portal.e-con,.elementor .elementor-element#idst-quotation-portal.e-con{--container-max-width:1760px;--content-width:1760px;--gap:0px;--row-gap:0px;--column-gap:0px;--padding-top:28px;--padding-right:clamp(24px,4.17vw,80px);--padding-bottom:32px;--padding-left:clamp(24px,4.17vw,80px);--padding-block-start:var(--padding-top);--padding-inline-end:var(--padding-right);--padding-block-end:var(--padding-bottom);--padding-inline-start:var(--padding-left);--idst-side:300px;--idst-gap:20px;width:100%;max-width:none;background:#f3f4f7;padding:var(--padding-top) var(--padding-right) var(--padding-bottom) var(--padding-left);gap:0;box-sizing:border-box}
#idst-quotation-portal.e-con>.e-con-inner{--padding-top:0px;--padding-right:0px;--padding-bottom:0px;--padding-left:0px;width:100%;max-width:1760px;margin-inline:auto;gap:0;padding:0}
.elementor #idst-quotation-portal .elementor-widget{width:100%;min-width:0}
.elementor .elementor-element#idst-quotation-portal.e-con .elementor-widget-heading{margin:0!important;white-space:nowrap;min-width:0}
.elementor #idst-quotation-portal .elementor-widget-heading .elementor-heading-title{font-family:inherit;font-size:36px;line-height:1.1;font-weight:800;letter-spacing:.01em;color:#111827;margin:0 0 0 -1px;text-transform:none;display:block}
.elementor .elementor-element#idst-quotation-portal.e-con .elementor-widget-text-editor{margin:0 0 9px!important;padding:0;border:0;max-width:none;box-sizing:border-box;padding-right:760px;font-size:16px;line-height:1.5;color:#4b5563}
.elementor #idst-quotation-portal .elementor-widget-text-editor p{font-family:inherit;color:inherit;font-size:inherit;line-height:inherit;margin:0}
.elementor .elementor-element#idst-quotation-portal.e-con .elementor-widget-shortcode{margin:18px 0 0!important}
@media(min-width:901px){
.elementor .elementor-element#idst-quotation-portal.e-con,.elementor .elementor-element#idst-quotation-portal.e-con>.e-con-inner{--display:grid;display:grid;grid-template-columns:minmax(var(--idst-side),max-content) minmax(0,1fr);grid-template-rows:auto auto;column-gap:var(--idst-gap);row-gap:0;align-items:end;align-content:start;justify-items:stretch}
.elementor .elementor-element#idst-quotation-portal.e-con>.e-con-inner{grid-column:1/-1;grid-row:1/-1}
.elementor .elementor-element#idst-quotation-portal.e-con .elementor-widget-heading{grid-column:1;grid-row:1}
.elementor .elementor-element#idst-quotation-portal.e-con .elementor-widget-text-editor{grid-column:2;grid-row:1}
.elementor .elementor-element#idst-quotation-portal.e-con .elementor-widget-shortcode{grid-column:1/-1;grid-row:2}
}
@media(min-width:1700px){.elementor .elementor-element#idst-quotation-portal.e-con{--idst-side:320px;--idst-gap:24px}}
@media(max-width:1300px){.elementor .elementor-element#idst-quotation-portal.e-con{--idst-side:260px;--idst-gap:16px}}
@media(max-width:900px){#idst-quotation-portal.e-con,.elementor .elementor-element#idst-quotation-portal.e-con{--padding-top:26px;--padding-right:22px;--padding-bottom:30px;--padding-left:22px}.elementor #idst-quotation-portal .elementor-widget-heading .elementor-heading-title{font-size:28px;white-space:normal}.elementor .elementor-element#idst-quotation-portal.e-con .elementor-widget-text-editor{max-width:none;padding-right:0;margin:8px 0 0!important}.elementor .elementor-element#idst-quotation-portal.e-con .elementor-widget-shortcode{margin-top:14px!important}}
@media(max-width:570px){#idst-quotation-portal.e-con,.elementor .elementor-element#idst-quotation-portal.e-con{--padding-top:22px;--padding-right:16px;--padding-bottom:26px;--padding-left:16px}.elementor #idst-quotation-portal .elementor-widget-heading .elementor-heading-title{font-size:25px}}

/* Heading-row description: reserve room for the absolute top bar (must follow the base rule above). */
@media(max-width:1500px){.elementor .elementor-element#idst-quotation-portal.e-con .elementor-widget-text-editor{padding-right:620px;font-size:15px}}
@media(max-width:1300px){.elementor .elementor-element#idst-quotation-portal.e-con .elementor-widget-text-editor{padding-right:0;font-size:15px}}
@media(max-width:900px){.elementor .elementor-element#idst-quotation-portal.e-con .elementor-widget-text-editor{padding-right:0}}

/* Print: only the open quotation */
@media print{
  html.idst-qp-print body>*{display:none!important}
  html.idst-qp-print .idst-qp__dialog{display:block!important;position:static!important;max-width:none!important;max-height:none!important;width:100%!important;margin:0!important}
  html.idst-qp-print .idst-qp__dialog::backdrop{display:none}
  html.idst-qp-print .idst-qp__sheet{box-shadow:none;border-radius:0;overflow:visible}
  html.idst-qp-print .idst-qp__sheet-head{display:none!important}
  html.idst-qp-print .idst-qp__sheet-body{padding:0;max-height:none;overflow:visible;background:#fff}
  html.idst-qp-print .idst-qd{border:0;box-shadow:none;padding:8mm 6mm;min-width:0;zoom:1!important;transform:none!important}
  @page{size:A4;margin:12mm}
}
