/* Central feedback and form states shared by portal and operator views. */
body .save-toast-region{position:fixed!important;inset:auto 20px 20px auto!important;z-index:10050;width:min(380px,calc(100vw - 32px))!important;max-width:380px!important;display:flex!important;flex-direction:column;gap:8px;pointer-events:none;margin:0!important;padding:0!important}
body .save-toast{display:flex!important;align-items:flex-start;gap:12px;background:var(--status-success-soft);color:var(--status-success);border:1px solid var(--status-success);border-radius:10px;padding:13px 15px;box-shadow:0 6px 24px #18364b22;width:100%!important;pointer-events:auto;font-size:14px;line-height:1.5;overflow-wrap:anywhere}
body .save-toast span{min-width:0;flex:1}body .save-toast button{flex:0 0 25px;border:0;background:transparent;color:inherit;font-size:22px;line-height:1;padding:2px;cursor:pointer}body .save-toast[data-level=info]{background:var(--brand-background);color:var(--status-info);border-color:var(--brand-text-muted)}body .save-toast[data-level=warning]{background:var(--status-warning-soft);color:var(--status-warning);border-color:var(--status-warning)}body .save-toast[data-level=error]{background:var(--status-danger-soft);color:var(--status-danger);border-color:var(--status-danger)}
:is(.portal-3313,.admin-3312) .button{background:var(--brand-primary);color:var(--brand-on-primary);border-color:var(--brand-primary)}
:is(.portal-3313,.admin-3312) .button:is(.secondary,.button-ghost,.ghost,.outline,.button-outline){background:var(--brand-surface);color:var(--brand-link);border-color:var(--brand-text-muted)}
:is(.portal-3313,.admin-3312) .button:is(.danger,.danger-button){background:var(--status-danger);color:var(--brand-on-primary);border-color:var(--status-danger)}
:is(.portal-3313,.admin-3312) .button:hover:not(:disabled){filter:brightness(.94)}
:is(.portal-3313,.admin-3312) .button:is(:disabled,[aria-disabled=true]){background:var(--brand-border);color:var(--brand-text-muted);border-color:var(--brand-text-muted);opacity:1;cursor:not-allowed;box-shadow:none}
:is(.portal-3313,.admin-3312) :is(input:not([type=checkbox]):not([type=radio]),select,textarea){color:var(--brand-text);background-color:var(--brand-surface);border-color:var(--brand-text-muted)}
:is(.portal-3313,.admin-3312) :is(input,select,textarea):disabled{color:var(--brand-text-muted);background:var(--brand-background)}
:is(.portal-3313,.admin-3312) :is(button,a,input,select,textarea,summary):focus-visible{outline:3px solid var(--brand-primary);outline-offset:2px}
:is(.portal-3313,.admin-3312) .icon-action{color:var(--brand-link);background:var(--brand-background);border:1px solid var(--brand-text-muted)}
.portal-3313 .portal-header-company{min-width:150px;max-width:300px;flex:0 1 300px}.portal-3313 .portal-header-company label{font-size:10px;color:var(--brand-text-muted);margin-bottom:2px}.portal-3313 .portal-header-company .portal-company-switch{margin:0}.portal-3313 .portal-header-company select{font-size:12px;max-width:100%;min-height:34px}.portal-3313 .portal-header-company .portal-company-name{margin:0;color:var(--brand-text)}.portal-3313 .portal-search3313{flex:1 1 200px;min-width:120px;max-width:420px}
.portal-3313 .sidebar-account{padding:12px 14px;flex-shrink:0}.portal-3313 .portal-quota-card{margin:8px 0 6px;padding:10px;border-radius:8px}.portal-3313 .portal-quota-card p{margin:0 0 5px}.portal-3313 .portal-quota-card a{font-size:11px}.portal-3313 .portal-quota-card .quota-progress{margin:6px 0}.portal-3313 .portal-quota-card small{font-size:10px}
.portal-3313 .recommendation-card.accept{background:var(--status-success-soft);border:1px solid var(--status-success);color:var(--status-success)}.portal-3313 .recommendation-card.review{background:var(--status-warning-soft);border:1px solid var(--status-warning);color:var(--status-warning)}.portal-3313 .recommendation-card.reject{background:var(--status-danger-soft);border:1px solid var(--status-danger);color:var(--status-danger)}.portal-3313 .recommendation-card h2{color:inherit}
.data-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 18px;margin:12px 0}.data-grid div{min-width:0}.data-grid dt{font-size:12px;color:var(--brand-text-muted)}.data-grid dd{margin:3px 0 0;overflow-wrap:anywhere;font-weight:500}.supplier-master-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.supplier-master-grid h2{font-size:16px}.supplier-master-grid .content-card{margin:0}.supplier-master-grid .data-grid{grid-template-columns:1fr}
.import-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(150px,1fr));gap:16px;padding:12px 0}.import-detail-grid h3{font-size:13px;margin:0 0 8px}.import-detail-grid dl{margin:0}.import-detail-grid dt{font-size:11px;color:var(--brand-text-muted)}.import-detail-grid dd{font-size:12px;margin:2px 0 9px;overflow-wrap:anywhere}.import-preview td{white-space:normal;max-width:240px;overflow-wrap:anywhere}.import-details td{max-width:none!important}.import-preview .import-details>td{padding-top:0}.import-preview small{display:block}.import-preview table{font-size:12px}
.portal-3313 .permission-groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.portal-3313 .permission-groups fieldset{min-width:0;margin:0;padding:14px;border:1px solid var(--brand-border);border-radius:9px;background:var(--brand-surface)}.portal-3313 .permission-groups legend{font-weight:600;font-size:13px;padding:0 4px}.portal-3313 .permission-groups .check-label{display:flex;align-items:flex-start;gap:8px;margin:8px 0;font-size:12px}.portal-3313 .permission-groups input{flex:0 0 auto;margin-top:2px}
.inline-form{display:inline-flex;margin:3px}.security-card{margin-top:16px}.number-help{margin:12px 0}.number-help table{font-size:12px}.number-live{padding:10px 12px;background:var(--brand-background);border:1px solid var(--brand-active);border-radius:8px;margin:12px 0}.attachment-preview{padding:16px}.attachment-preview iframe{width:100%;height:70vh;min-height:360px;border:1px solid var(--brand-border);border-radius:8px;margin-top:15px}.attachment-preview>img{display:block;max-width:100%;max-height:70vh;object-fit:contain;margin:15px auto}.out-toolbar>label{min-width:130px;flex:1 1 160px}.out-toolbar{row-gap:12px}
@media(max-width:1280px){.portal-3313 .portal-search3313{max-width:240px}.portal-3313 .permission-groups{grid-template-columns:repeat(2,minmax(0,1fr))}.supplier-master-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.portal-3313 .portal-search3313{display:none}.portal-3313 .portal-header-company{margin-left:auto;max-width:280px}.import-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.portal-3313 .portal-user-context{display:none}}
@media(max-width:600px){.portal-3313 .portal-header-company{min-width:90px;max-width:45vw}.portal-3313 .portal-header-company label{display:none}.portal-3313 .portal-topbar{gap:6px}.portal-3313 .portal-header-company select{max-width:37vw}.supplier-master-grid,.portal-3313 .permission-groups,.data-grid,.import-detail-grid{grid-template-columns:1fr}.portal-3313 .portal-header-company .portal-company-switch button{display:none}body .save-toast-region{right:16px!important;bottom:16px!important}.attachment-preview iframe{min-height:280px}}
@media(max-height:780px) and (min-width:721px){.portal-3313 .sidebar-account{padding-top:8px;padding-bottom:8px}.portal-3313 .sidebar-account .person{padding:0}.portal-3313 .portal-quota-card{padding:8px;margin:6px 0}.portal-3313 .portal-quota-card .quota-period{display:none}}

.portal-3313 .portal-quota-card{gap:6px}.portal-3313 .portal-quota-progress{gap:3px;font-size:11px}.portal-3313 .portal-quota-progress progress{height:5px}.portal-3313 .portal-quota-progress small{font-size:10px}
