.asset-page { gap: 18px; }
.asset-header-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 9px; }
.asset-toolbar { grid-template-columns: minmax(220px, 2fr) repeat(2, minmax(150px, 1fr)) auto; }
.device-toolbar { display: flex; justify-content: flex-end; padding: 0 18px 14px; }
.device-toolbar label { display: grid; width: min(420px, 100%); gap: 6px; color: #9fb3c8; font-size: .72rem; font-weight: 800; }
.device-toolbar input { min-height: 40px; padding: 8px 10px; border: 1px solid rgba(125,163,194,.32); border-radius: 8px; color: #f4f8fc; background: #091827; font: inherit; }
.asset-table small { display: block; margin-top: 4px; color: var(--scc-text-muted, #91a6ba); }
.asset-status,
.asset-shared { display: inline-flex; align-items: center; min-height: 24px; padding: 3px 9px; border: 1px solid rgba(255,255,255,.14); border-radius: 999px; font-size: .72rem; font-weight: 800; letter-spacing: .03em; }
.asset-status--available,
.asset-status--returned,
.asset-status--online { border-color: rgba(55,215,158,.45); color: #55e0ad; background: rgba(23,119,86,.16); }
.asset-status--assigned,
.asset-status--deployed,
.asset-status--operating,
.asset-status--maintenance { border-color: rgba(244,196,31,.48); color: #f5d557; background: rgba(151,111,0,.16); }
.asset-status--unavailable,
.asset-status--offline,
.asset-status--retired,
.asset-status--archived { color: #a9b5c1; background: rgba(116,130,145,.12); }
.asset-shared { color: #7fd6ff; border-color: rgba(77,183,236,.4); background: rgba(21,99,137,.16); }
.asset-actions { white-space: nowrap; }
.asset-actions button,
.asset-assignment-list button { min-height: 30px; margin: 2px; padding: 5px 9px; border: 1px solid rgba(125,163,194,.35); border-radius: 7px; color: #dcecff; background: #102337; font: inherit; font-size: .7rem; font-weight: 800; cursor: pointer; }
.asset-actions button:hover,
.asset-assignment-list button:hover { border-color: #f1c900; color: #f6d938; }
.asset-actions button:disabled { cursor: not-allowed; opacity: .42; }
.asset-actions .is-danger { color: #ff9c9c; }
.asset-assignment-controls { display: grid; grid-template-columns: minmax(200px,1.5fr) minmax(220px,1.5fr) minmax(170px,1fr) auto; gap: 12px; align-items: end; padding: 18px; }
.asset-assignment-controls label { display: grid; gap: 6px; color: #9fb3c8; font-size: .72rem; font-weight: 800; }
.asset-assignment-controls select { min-height: 42px; padding: 8px 10px; border: 1px solid rgba(125,163,194,.32); border-radius: 8px; color: #f4f8fc; background: #091827; font: inherit; }
.device-link-controls { grid-template-columns: minmax(220px,1.5fr) minmax(220px,1.5fr) minmax(150px,1fr) auto; }
.asset-assignment-list { display: grid; gap: 8px; padding: 0 18px 18px; }
.asset-assignment-list article { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 12px 14px; border: 1px solid rgba(125,163,194,.2); border-radius: 9px; background: rgba(9,24,39,.58); }
.asset-assignment-list article div { display: grid; gap: 3px; }
.asset-assignment-list article span { color: #9fb3c8; font-size: .75rem; }
.field-quick-pairing [data-field-quick-pairing] { display: grid; grid-template-columns: minmax(220px,.8fr) minmax(520px,1.5fr); gap: 18px; align-items: end; padding: 18px; }
.field-quick-pairing__copy { display: grid; gap: 6px; align-self: center; }
.field-quick-pairing__copy strong { color: #ffe45d; font-size: 1rem; }
.field-quick-pairing__copy span { color: #9fb3c8; font-size: .78rem; line-height: 1.5; }
.field-quick-pairing__controls { display: grid; grid-template-columns: minmax(190px,1.2fr) minmax(170px,1fr) auto; gap: 12px; align-items: end; }
.field-quick-pairing__controls label { display: grid; gap: 6px; color: #9fb3c8; font-size: .72rem; font-weight: 800; }
.field-quick-pairing__controls select { min-height: 42px; padding: 8px 10px; border: 1px solid rgba(125,163,194,.32); border-radius: 8px; color: #f4f8fc; background: #091827; font: inherit; }
.asset-dialog { width: min(720px, calc(100vw - 28px)); max-height: calc(100vh - 32px); padding: 0; border: 1px solid rgba(241,201,0,.44); border-radius: 15px; color: #eef5fb; background: #0a1928; box-shadow: 0 28px 80px rgba(0,0,0,.6); }
.asset-dialog::backdrop { background: rgba(1,8,15,.8); backdrop-filter: blur(4px); }
.asset-dialog form { display: grid; gap: 17px; padding: 22px; }
.asset-dialog header { display: flex; align-items: flex-start; justify-content: space-between; gap: 15px; }
.asset-dialog header small { color: #f1c900; font-size: .67rem; font-weight: 900; letter-spacing: .13em; }
.asset-dialog h2 { margin: 4px 0 0; }
.asset-dialog header > button { width: 34px; height: 34px; border: 1px solid rgba(255,255,255,.15); border-radius: 50%; color: #fff; background: transparent; font-size: 1.25rem; cursor: pointer; }
.asset-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 13px; }
.asset-form-grid label { display: grid; gap: 6px; color: #a9bbcd; font-size: .73rem; font-weight: 800; }
.asset-form-grid input,
.asset-form-grid select,
.asset-form-grid textarea { width: 100%; box-sizing: border-box; padding: 10px 11px; border: 1px solid rgba(125,163,194,.32); border-radius: 8px; color: #f4f8fc; background: #071522; font: inherit; }
.asset-form-grid textarea { resize: vertical; }
.asset-form-wide { grid-column: 1 / -1; }
.asset-share { grid-template-columns: auto 1fr !important; align-items: start; padding: 12px; border: 1px solid rgba(241,201,0,.25); border-radius: 9px; background: rgba(241,201,0,.05); }
.asset-share input { width: 18px; height: 18px; }
.asset-share span { display: grid; gap: 3px; }
.asset-share small { color: #8fa4b9; font-weight: 500; }
.asset-dialog-feedback { min-height: 18px; margin: 0; color: #ff9c9c; font-size: .76rem; }
.asset-dialog footer { display: flex; justify-content: flex-end; gap: 9px; }
.asset-dialog footer button { min-height: 38px; padding: 8px 14px; border: 1px solid rgba(255,255,255,.18); border-radius: 8px; color: #eef5fb; background: #11263a; font: inherit; font-size: .75rem; font-weight: 900; cursor: pointer; }
.asset-dialog footer .is-primary { border-color: #f1c900; color: #071522; background: #f1c900; }
.asset-dialog footer .is-danger { border-color: #ff7272; color: #fff; background: #a93333; }
.asset-confirm-dialog { width: min(510px, calc(100vw - 28px)); }
.asset-confirm-dialog p { margin: 0; color: #b9c9d8; line-height: 1.55; }
.field-enrollment-code { display: block; padding: 18px; border: 1px solid rgba(241,201,0,.5); border-radius: 10px; color: #ffe45d; background: #071522; font-family: ui-monospace, SFMono-Regular, Consolas, monospace; font-size: clamp(1.35rem,4vw,2rem); font-weight: 900; letter-spacing: .09em; text-align: center; user-select: all; }
.field-enrollment-dialog { width: min(570px, calc(100vw - 28px)); }
.field-enrollment-qr { display: grid; place-items: center; width: min(290px, 78vw); min-height: 220px; margin: 0 auto; padding: 12px; border-radius: 14px; color: #102337; background: #fff; text-align: center; }
.field-enrollment-qr svg { display: block; width: 100%; height: auto; }
.field-enrollment-link { display: block; width: fit-content; margin: -7px auto 0; color: #ffe45d; font-size: .8rem; font-weight: 900; text-align: center; }
[data-assets-feedback][data-state="success"] { color: #55e0ad; }
[data-assets-feedback][data-state="error"] { color: #ff8c8c; }
@media (max-width: 950px) {
    .asset-toolbar,
    .asset-assignment-controls { grid-template-columns: repeat(2, minmax(0,1fr)); }
    .field-quick-pairing [data-field-quick-pairing] { grid-template-columns: 1fr; }
}
@media (max-width: 620px) {
    .asset-toolbar,
    .asset-assignment-controls,
    .asset-form-grid { grid-template-columns: 1fr; }
    .asset-form-wide { grid-column: auto; }
    .asset-assignment-list article { align-items: flex-start; flex-direction: column; }
    .field-quick-pairing__controls { grid-template-columns: 1fr; }
}
