3
0
mirror of https://github.com/snipe/snipe-it.git synced 2026-08-18 11:15:42 +00:00
Files
snipe-it/public/css/build/overrides.css.map
2026-08-17 11:42:21 +01:00

1 line
117 KiB
Plaintext

{"version":3,"file":"css/build/overrides.css","mappings":"AAAA;EAGE;AADF;AAGA;EACE;EACA;EACA;EACA;EACA;AADF;AAEE;;;EACE;AAEJ;AACA;EACE;AACF;AAEA;EACE;EACA;AAAF;AAGA;EACE;AADF;AAKA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;AAHF;AAMA;EACE;EACA;EACA;EACA;EACA;AAJF;AAOA;EACE;AALF;AAQA;EACE;AANF;AAeA;EACE;AAbF;AAeE;;EAEE;EACA;AAbJ;AAeE;EACE;AAbJ;AAkBA;EACE;AAhBF;AAmBA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;AAjBF;AAmBA;EACE;AAjBF;AAmBA;EACE;AAjBF;AAqBA;EACE;AAnBF;AAqBA;EACE;AAnBF;AAuBA;EACE;EACA;EACA;AArBF;AAwBA;EACE;EACA;EACA;AAtBF;AA+BA;EACE;AA7BF;AAgCA;EACE;EACA;EACA;AA9BF;AAiCA;EACE;EACA;AA/BF;AAkCA;EACE;AAhCF;AAmCA;EACE;EACA;AAjCF;AAoCA;;EACE;EACA;AAjCF;AAoCA;EACE;EACA;AAlCF;AAoCA;EACE;AAlCF;AAqCA;EACE;EACA;EACA;AAnCF;AAsCA;EACE;AApCF;AAuCA;EACE;AArCF;AAwCA;EACE;AAtCF;AAwCA;EACE;AAtCF;AAyCA;EACE;AAvCF;AA0CA;;;;EACE;AArCF;AAwCA;;;;;;;;;;;;;EAaE;AAtCF;AA2CA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;AAzCF;AA2CA;EACE;EACA;EACA;EACA;EACA;EACA;AAzCF;AA2CA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;AAzCF;AA2CA;EACE;AAzCF;AA2CA;EACE;EACA;EACA;EACA;AAzCF;AA2CA;EACE;EACA;AAzCF;AA2CA;EACE;EACA;EACA;EACA;EACA;AAzCF;AA2CA;EACE;EACA;AAzCF;AA2CA;EACE;EACA;EACA;EACA;AAzCF;AA4CA;EACE;EACA;AA1CF;AA+CA;EAAY;AA5CZ;AACA,cAAc;AA8Cd;EAAY;EAAkC;AA1C9C;AA2CA;EAA8B;EAAY;AAvC1C;AAyCA;EAAiD;EAAgB;EAAiB;AApClF;AAqCA;EAA8C;EAAa;AAjC3D;AAkCA;EAA+C;EAAoB;EAAa;EAAc;EAAgB;EAAqB;EAAW;EAAW;EAAmB;EAAoB;AAtBhM;AAuBA;EAAqD;EAAc;EAAa;EAAc;EAAqB;EAAqB;EAAoB;EAAU;AAbtK;AAcA;EAA0C;EAAoB;EAAoB;EAAa;EAAkB;AAPjH;AAQA;EAA0D;EAAW;EAAkB;AAHvF;AAIA;EAAmE;AADnE;AAEA;EAAiE;AACjE;AAAA;EAA6E;AAG7E;AAFA;EAA4E;AAK5E;AAJA;EAAwD;AAOxD;AANA;EAA8D;AAS9D;AARA;EAAuD;EAAW;AAYlE;AAXA;EAAsD;AActD;AAbA;EAAuD;AAgBvD;AACA;;;;;;;;EAQE;AAdF;EACE;EACA;EACA;AAgBF;AACA,kBAAkB;AAblB;EACE;EACA;EACA;EACA;EACA;EAeA,gCAAgC;AAClC;AAXA;EAGE;AAWF;AARA;EACE;AAUF;AANA;;EACE;AASF;AAPA;;EACE;AAUF;AAPA;EACE;EAIA;AAMF;AAHA;EACE;EACA;AAKF;AAFA;EACE;AAIF;AADA;EACE;AAGF;AAEA;EACE;AAAF;AAGA;EAEE;IACE;IACA;EAFF;EAKA;IACE;IACA;IACA;EAHF;EAMA;IACE;EAJF;EAOA;;IACE;EAJF;EAOA;IACE;IACA;IACA;IACA;IACA;IACA;IACA;EALF;EACA,+CAA+C;EAQ/C;IACE;EANF;EASA;IACE;EAPF;EAUA;IACE;EARF;EAWA;IACE;EATF;EACA,qCAAqC;EAYrC;;IACE;EATF;EACA,QAAQ;EAYR;;IACE;IACA;IACA;EATF;EAYA;IACE;EAVF;EAaA;IACE;EAXF;EAcA;IACE;IACA;IACA;EAZF;EAeA;IACE;IACA;EAbF;EAgBA;;IACE;EAbF;EAeA;;;;;;;;;;;;IACE;EAFF;EAKA;IACE;EAHF;EAKA;IACE;EAHF;EAKA;IACE;EAHF;EAKA;IACE;EAHF;EAKA;IACE;EAHF;EAKA;IACE;EAHF;EAKA;IACE;EAHF;EAKA;IACE;EAHF;EAKA;IACE;EAHF;EAKA;IACE;EAHF;EAKA;IACE;EAHF;EAKA;IACE;EAHF;AACF;AAQA;EACE;AANF;AASA;EACI;AAPJ;AAUA;EACE;AARF;AAWA;EACE;EACA;EACA;AATF;AAcA;EACE;EACA;OAAA;EACA;EACA;AAZF;AAeA;;EACE;EACA;EACA;AAZF;AAeA;EACE;AAbF;AAgBA;;;EACE;AAZF;AAeA;;EACE;AAZF;AAgBA;EACE;AAdF;AAiBA;EACE;AAfF;AAkBA;EACE;EACA;EACA;AAhBF;AAmBA;EACE;EACA;AAjBF;AAoBA;EACE;EACA;EACA;EACA;AAlBF;AAsBA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;AApBF;AAsBA;;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;AAnBF;AAsBA;EACE;AApBF;AAuBA;EACE;AArBF;AAwBA;EACE;AAtBF;AAyBA;EACE;AAvBF;AA0BA;EACE;AAxBF;AA4BA;EACE;EACA;EACA;EACA;EACA;EAGA;AA5BF;AA+BA;EACE;EACA;EACA;EACA;AA7BF;AAgCA;EACE;EACA;EACA;EACA;AA9BF;AAkCA;EACE;EACA;EACA;EACA;EACA;EACA;AAhCF;AACA;;;;EAIE;AAmCF;EACE;EACA;AAjCF;AAoCA;EACE;EACA;AAlCF;AAqCA;EACE;EACA;AAnCF;AAsCA;EACE;EACA;AApCF;AAwCA;EACE;AAtCF;AACA;;EAEE;AA2CF;EACE;IACE;IACA;EAzCF;EAkDA;IACE;EAhDF;EAmDA;IACE;EAjDF;AACF;AAoDA;EACE;EACA;EACA;AAlDF;AAqDA;EACE;EACA;AAnDF;AACA;;;;;;;;;;;EAWE;AAwDF;;;;;;;;;;;;;;;;EAiBE;EACA;EACA;EACA;EACA;EACA;AAvDF;AA2DA;;;;;;;;;;;;;;;;;EAkBE;EACA;EACA;EACA;AA1DF;AACA;;;EAGE;AA6DF;EAEE;EAAkB;EAAoC;AA1DxD;AA6DA;EAEE;EAAkB;EAAoC;AA1DxD;AA6DA;EAEE;EAAkB;EA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kB;AAhH9C;AA2GA;EAMM;AA9GN;AAwGA;EAOiB;AA5GjB;AAqGA;;EAQW;EAAiB;AAxG5B;AAgGA;EASoB;AAtGpB;AA0GA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;AAxGF;AA4GA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;AA1GF;AA6GA;EACE;AA3GF;AA8GA;EACE;EACA;EACA;AA5GF;AA+GA;EACE;EACA;EACA;EACA;AA7GF;AAgHA;EACE;EACA;AA9GF;AAiHA;EACE;AA/GF;AACA;;EAEE;AAkHF;EACI;AAhHJ;AACA;;EAEE;AAmHF;EACE;EACA;EACA;EACA;EACA;EACA;AAjHF;AAoHA;EACE;AAlHF;AAqHA;EACE;AAnHF;AAsHA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;AApHF;AAuHA;EACE;EACA;EACA;AArHF;AAwHA;EACE;EACA;EACA;EACA;AAtHF;AAyHA;EACE;EACA;EACA;EACA;AAvHF;AA0HA;EACE;EACA;EACA;EACA;AAxHF;AA2HA;EACE;AAzHF;AA4HA;EACE;EACA;AA1HF;AA6HA;EACE;AA3HF;AAsIE;EAAA;;IACE;IACA;EAlIF;EAoIE;;IACE;IACA;IACA;IACA;IACA;IACA;IACA;EAjIJ;EAoIE;;IAEI;IACA;EAlIN;EA+HE;;IAOI;EAlIN;EA6GA;;IA2BI;EApIJ;EAyGA;;IA+BI;IACA;IACA;IACA;EApIJ;EAkGA;;IAsCI;IACA;IACA;IACA;IACA;IACA;IACA;IACA;EApIJ;EAsII;;;;;;IAGE;IACA;EAjIN;EA8EA;;IAwDI;IACA;IACA;IACA;EAlIJ;EAoII;;;;;;IAGE;EA/HN;AACF;AA4DA;;;;;;;;;;;;EAkFE;EACA;AAhIF;AAuIA;;EAEE;AArIF;AA6IA;EACE;IACE;IACA;EA3IF;AACF;AAyJA;EACE;EACA;EACA;AAvJF;AAgKA;;EAEE;EACA;AA9JF;AAqKA;;EAEE;AAnKF;AA0KA;EAOE;;;;;;IAME;EA9KF;AACF;AAoMA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;AAlMF;AAqMA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;AAnMF;AAsMA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;AApMF;AAoNA;;;;;EAKE;EACA;AAlNF;AAqNA;EACE;AAnNF;AAsNA;EACE;EACA;EACA;AApNF;AAuNA;;;EAGE;AArNF;AAwNA;;EAEE;AAtNF;AAyNA;EACE;AAvNF;AA0NA;EACE;AAxNF;AA2NA;EACE;AAzNF;AA4NA;EACE;EA1NA,uDAAuD;EA4NvD;EACA;AA1NF;AA6NA;EACE;EA3NA,uDAAuD;EA6NvD;EACA;AA3NF;AA8NA;EACE;AA5NF;AA+NA;EACE;AA7NF;AAiOA;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA4BE;EACA;EACA;AA/NF;AAmOA;;EAEE;AAjOF;AACA;;;;;EAKE;AAoOF;;EAEE;EACA;AAlOF;AACA;;;;;;EAME;AAqOF;EACE;AAnOF;AACA;;EAEE;AAsOF;EACE;EACA;AApOF;AAuOA;EACE;EArOA,mFAAmF;EACnF,mDAAmD;EAuOnD;AArOF;AACA;;EAEE;AAwOF;EACE;EACA;AAtOF;AACA;;EAEE;AAyOF;;;;;EAKE;EAvOA,qCAAqC;EAyOrC;AAvOF;AA0OA;;EAEE;EACA;EACA;AAxOF;AA2OA;EACE;AAzOF;AA4OA;EACE;EACA;EACA;AA1OF;AACA;;;;;;;;;;CAUC;AA6OD;EACE;EACA;EACA;AA3OF;AACA;2CAC2C;AA8O3C;EACE;AA5OF;AACA;;;;0CAI0C;AA+O1C;EACE;AA7OF;AAgPA;EACE;AA9OF;AAiPA;EACE;AA/OF;AAkPA;EACE;AAhPF;AACA;;UAEU;AAmPV;EACE;AAjPF;AACA;;;;;yBAKyB;AAoPzB;EACE;AAlPF;AAqPA;;;;EAIE;EACA;EACA;AAnPF;AAsPA;EACE;AApPF;AACA;oEACoE;AAuPpE;;;EAGE;EACA;AArPF;AACA;;;;;;;;;uEASuE;AAwPvE;;;;;;;;;EASE;AAtPF;AACA;;;;;;;;oEAQoE;AAyPpE;EACE;EACA;EACA;AAvPF;AA0PA;;EAEE;EACA;EACA;AAxPF;AACA;;uCAEuC;AA2PvC;EACE;EACA;EACA;EACA;AAzPF;AA4PA;;EAEE;EACA;AA1PF;AACA,iDAAiD;AA8PjD;;EAEE;EACA;AA5PF;AAiQA;EACE;EACA;EACA;AA/PF;AAkQA;;;;;;;;;;;EAWE;EACA;AAhQF;AAmQA;EACE;EACA;AAjQF;AA+PA;EACE;EACA;AAjQF;AAoQA;EACE;EACA;AAlQF;AAqQA;EACE;AAnQF;AAsQA;EACE;EACA;EACA;EACA;EACA;EACA;AApQF;AAuQA;;;;;;;EAOE;AArQF;AAwQA;;;;;;;;;;;;;;;;;;;;;;EAsBE;AAtQF;AA0QA;;;;EAIE;EACA;EACA;AAxQF;AA4QA;;EAEE;AA1QF;AA6QA;EACE;EACA;AA3QF;AA+QA;;;;EAIE;AA7QF;AACA;;;;;EAKE;AAgRF;EACE;EACA;EACA;AA9QF;AAiRA;;EAEE;EACA;AA/QF;AACA;;;;;;;EAOE;AAkRF;EAAsB;AA/QtB;AAgRA;EAA4B;AA7Q5B;AA+QA;EAAwB;AA5QxB;AA6QA;EAA8B;AA1Q9B;AA4QA;EAAyB;AAzQzB;AA0QA;EAA+B;AAvQ/B;AAyQA;EAAuB;AAtQvB;AAuQA;EAA6B;AApQ7B;AAsQA;;;;;;;;;;EAUE;EACA;EACA;AApQF;AAuQA;EACE;AArQF;AACA;;;;;;;mEAOmE;AAwQnE;;;EAGE;AAtQF;AAyQA;EACE;AAvQF;AA2QA;EACE;AAzQF;AA4QA;EACE;AA1QF;AA8QA;EACE;EACA;EACA;EACA;AA5QF;AAgRA;EACE;EACA;AA9QF;AAiRA;;;;;;;;;;;EAYE;EACA;EACA;EACA;AAhRF;AAoRA;EACE;AAlRF;AAqRA;EACE;AAnRF;AAsRA;;EAEE;EACA;EACA;AApRF;AAuRA;EACE;EACA;AArRF;AAwRA;EACE;EACA;EACA;EACA;EACA;EACA;AAtRF;AAyRA;EACE;AAvRF;AACA;;EAEE;AA2RF;EACE;AAzRF;AACA;;EAEE;AA6RF;;;;;;EAME;AA3RF;AA+RA;;;;EAIE;EACA;EACA;AA7RF;AAgSA;;;;EAIE;EACA;EACA;AA9RF;AAoUK;;EAEG;EACA;EACA;EACA;AAlUR;AA6TK;;EAEG;EACA;EACA;EACA;AA3TR;AAsTK;;EAEG;EACA;EACA;EACA;AApTR;AA+SK;;EAEG;EACA;EACA;EACA;AA7SR;AAwSK;;EAEG;EACA;EACA;EACA;AAtSR;AAiSK;;EAEG;EACA;EACA;EACA;AA/RR;AA0RK;;EAEG;EACA;EACA;EACA;AAxRR;AAmRK;;EAEG;EACA;EACA;EACA;AAjRR;AA4QK;;EAEG;EACA;EACA;EACA;AA1QR;AAqQK;;EAEG;EACA;EACA;EACA;AAnQR;AA8PK;;EAEG;EACA;EACA;EACA;AA5PR;AAuPK;;EAEG;EACA;EACA;EACA;AArPR;AAgPK;;EAEG;EACA;EACA;EACA;AA9OR;AAyOK;;EAEG;EACA;EACA;EACA;AAvOR;AAkOK;;EAEG;EACA;EACA;EACA;AAhOR;AA2OK;;EAEG;EACA;EACA;EACA;AAzOR;AAoOK;;EAEG;EACA;EACA;EACA;AAlOR;AA6NK;;EAEG;EACA;EACA;EACA;AA3NR;AAsNK;;EAEG;EACA;EACA;EACA;AApNR;AA+MK;;EAEG;EACA;EACA;EACA;AA7MR;AAwMK;;EAEG;EACA;EACA;EACA;AAtMR;AAiMK;;EAEG;EACA;EACA;EACA;AA/LR;AA0LK;;EAEG;EACA;EACA;EACA;AAxLR;AAmLK;;EAEG;EACA;EACA;EACA;AAjLR;AA4KK;;EAEG;EACA;EACA;EACA;AA1KR;AAqKK;;EAEG;EACA;EACA;EACA;AAnKR;AA8JK;;EAEG;EACA;EACA;EACA;AA5JR;AAuJK;;EAEG;EACA;EACA;EACA;AArJR;AAgJK;;EAEG;EACA;EACA;EACA;AA9IR;AAyIK;;EAEG;EACA;EACA;EACA;AAvIR;AAmJK;EACG;AAjJR;AAmJK;EACG;AAjJR;AAmJK;EACG;AAjJR;AA0IK;EACG;AAxIR;AA0IK;EACG;AAxIR;AA0IK;EACG;AAxIR;AAiIK;EACG;AA/HR;AAiIK;EACG;AA/HR;AAiIK;EACG;AA/HR;AAwHK;EACG;AAtHR;AAwHK;EACG;AAtHR;AAwHK;EACG;AAtHR;AA+GK;EACG;AA7GR;AA+GK;EACG;AA7GR;AA+GK;EACG;AA7GR;AAuHK;EACG;AArHR;AAuHK;EACG;AArHR;AAuHK;EACG;AArHR;AA8GK;EACG;AA5GR;AA8GK;EACG;AA5GR;AA8GK;EACG;AA5GR;AAqGK;EACG;AAnGR;AAqGK;EACG;AAnGR;AAqGK;EACG;AAnGR;AA4FK;EACG;AA1FR;AA4FK;EACG;AA1FR;AA4FK;EACG;AA1FR;AAmFK;EACG;AAjFR;AAmFK;EACG;AAjFR;AAmFK;EACG;AAjFR;AAmGK;EACG;EACA;AAjGR;AAmGK;EACG;EACA;EACA;AAjGR;AAmGK;EACG;EACA;EACA;AAjGR;AAqFK;EACG;EACA;AAnFR;AAqFK;EACG;EACA;EACA;AAnFR;AAqFK;EACG;EACA;EACA;AAnFR;AAuEK;EACG;EACA;AArER;AAuEK;EACG;EACA;EACA;AArER;AAuEK;EACG;EACA;EACA;AArER;AAyDK;EACG;EACA;AAvDR;AAyDK;EACG;EACA;EACA;AAvDR;AAyDK;EACG;EACA;EACA;AAvDR;AA2CK;EACG;EACA;AAzCR;AA2CK;EACG;EACA;EACA;AAzCR;AA2CK;EACG;EACA;EACA;AAzCR;AAmDK;EACG;EACA;AAjDR;AAmDK;EACG;EACA;EACA;AAjDR;AAmDK;EACG;EACA;EACA;AAjDR;AAqCK;EACG;EACA;AAnCR;AAqCK;EACG;EACA;EACA;AAnCR;AAqCK;EACG;EACA;EACA;AAnCR;AAuBK;EACG;EACA;AArBR;AAuBK;EACG;EACA;EACA;AArBR;AAuBK;EACG;EACA;EACA;AArBR;AASK;EACG;EACA;AAPR;AASK;EACG;EACA;EACA;AAPR;AASK;EACG;EACA;EACA;AAPR;AALK;EACG;EACA;AAOR;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","sources":["webpack:///./resources/assets/less/overrides.less"],"sourcesContent":[".main-header\n\n.logo {\n background-color: inherit;\n}\n.main-header .logo {\n width: 100% !important;\n white-space: nowrap;\n text-align: left;\n display: block;\n clear: both;\n &a:link, a:hover, a:visited {\n color: #fff\n }\n}\n.huge {\n font-size: 40px;\n}\n\n.btn-file {\n position: relative;\n overflow: hidden;\n}\n\n.dropdown-menu>li>a {\n color: #354044;\n}\n\n\n#sort tr.cansort {\n border-radius: 2px;\n padding: 10px;\n background: #f4f4f4;\n margin-bottom: 3px;\n border-inline: 2px solid #e6e7e8;\n color: #444;\n cursor: move;\n}\n\n.user-image-inline {\n float: left;\n width: 25px;\n height: 25px;\n border-radius: 50%;\n margin-right: 10px;\n}\n\n.input-group .input-group-addon {\n background-color: #f4f4f4;\n}\n\na.accordion-header {\n color: #333;\n}\n\n// Mirror BS3's .form-group spacing — same margin-bottom, no padding —\n// plus a clearfix so floated col-md-* children don't leak past the\n// wrapper. Without the clearfix, a row whose floats don't fill the full\n// 12 cols (e.g. password_confirmation at 3 + 8) leaves a gap on the\n// right edge that pulls the next row's first child up alongside it,\n// visually offsetting that row's label/input.\n.dynamic-form-row {\n margin-bottom: 15px;\n\n &::before,\n &::after {\n content: \" \";\n display: table;\n }\n &::after {\n clear: both;\n }\n}\n\n\n.handle {\n padding-left: 10px;\n}\n\n.btn-file input[type=file] {\n position: absolute;\n top: 0;\n right: 0;\n min-width: 100%;\n min-height: 100%;\n font-size: 100px;\n text-align: right;\n filter: alpha(opacity=0);\n opacity: 0;\n outline: none;\n background: white;\n cursor: inherit;\n display: block;\n}\n.main-footer {\n font-size: 13px;\n}\n.main-header {\n max-height: 150px;\n}\n\n\n.navbar-nav>.user-menu>.dropdown-menu {\n width: inherit;\n}\n.main-header .logo {\n padding: 0px 5px 0px 15px;\n}\n\n\n.sidebar-toggle {\n margin-left: -48px;\n z-index: 100;\n background-color: inherit;\n}\n\n.sidebar-toggle-mobile {\n z-index: 100;\n width: 50px;\n padding-top: 10px;\n}\n\n\n.main-header\n.navbar\n.dropdown-menu li a {\n //color: inherit;\n}\n.pull-text-right{\n text-align: right !important;\n}\n\n.main-header .sidebar-toggle:before {\n content: \"\\f0c9\";\n font-weight: 900;\n font-family: 'Font Awesome\\ 5 Free';\n}\n\n.direct-chat-contacts {\n padding: 10px;\n height: 150px;\n}\n\n.select2-container {\n width: 100%;\n}\n\n.error input {\n color: #a94442;\n border: 2px solid #a94442 !important;\n}\n\n.error label, .alert-msg {\n color: #a94442;\n display: block;\n}\n\n.input-group[class*=\"col-\"] {\n padding-right: 15px;\n padding-left: 15px;\n}\n.control-label.multiline {\n padding-top: 10px;\n}\n\n.btn-outline {\n color: inherit;\n background-color: transparent;\n transition: all .5s;\n}\n\n.btn-primary.btn-outline {\n color: #428bca;\n}\n\n.btn-success.btn-outline {\n color: #5cb85c;\n}\n\n.btn-info.btn-outline {\n color: #5bc0de;\n}\n.btn-warning{\n background-color:#f39c12 !important;\n}\n\n.btn-warning.btn-outline {\n color: #f0ad4e;\n}\n\n.btn-danger.btn-outline, a.link-danger:link, a.link-danger:visited, a.link-danger:hover {\n color: #dd4b39;\n}\n\n.btn-primary:hover,\n.btn-success:hover,\n.btn-info:hover,\n.btn-warning:hover,\n.btn-primary,\n.btn-success,\n.btn-info,\n.btn-warning,\n.btn-primary.btn-outline:hover,\n.btn-success.btn-outline:hover,\n.btn-info.btn-outline:hover,\n.btn-warning.btn-outline:hover,\n.btn-danger.btn-outline:hover {\n color: #fff !important;\n}\n\n\n\n.slideout-menu {\n position: fixed;\n top: 0;\n right: -250px;\n width: 250px;\n height: 100%;\n background: #333;\n z-index: 100;\n margin-top: 100px;\n color: white;\n padding: 10px;\n}\n.slideout-menu h3 {\n position: relative;\n padding: 5px 5px;\n color: #fff;\n font-size: 1.2em;\n font-weight: 400;\n border-bottom: 4px solid #222;\n}\n.slideout-menu .slideout-menu-toggle {\n position: absolute;\n top: 12px;\n right: 10px;\n display: inline-block;\n padding: 6px 9px 5px;\n font-family: Arial, sans-serif;\n font-weight: bold;\n line-height: 1;\n background: #222;\n color: #999;\n text-decoration: none;\n vertical-align: top;\n}\n.slideout-menu .slideout-menu-toggle:hover {\n color: #fff;\n}\n.slideout-menu ul {\n list-style: none;\n font-weight: 300;\n border-top: 1px solid #151515;\n border-bottom: 1px solid #454545;\n}\n.slideout-menu ul li {\n border-top: 1px solid #454545;\n border-bottom: 1px solid #151515;\n}\n.slideout-menu ul li a {\n position: relative;\n display: block;\n padding: 10px;\n color: #999;\n text-decoration: none;\n}\n.slideout-menu ul li a:hover {\n background: #000;\n color: #fff;\n}\n.slideout-menu ul li a i {\n position: absolute;\n top: 15px;\n right: 10px;\n opacity: .5;\n}\n\n.btn-box-tool-lg {\n font-size: 16px;\n color: orange;\n}\n\n\n\n.bs-wizard {margin-top: 20px;}\n\n/*Form Wizard*/\n.bs-wizard {border-bottom: solid 1px #e0e0e0; padding: 0 0 10px 0;}\n.bs-wizard > .bs-wizard-step {padding: 0; position: relative;}\n.bs-wizard > .bs-wizard-step + .bs-wizard-step {}\n.bs-wizard > .bs-wizard-step .bs-wizard-stepnum {color: #595959; font-size: 16px; margin-bottom: 5px;}\n.bs-wizard > .bs-wizard-step .bs-wizard-info {color: #999; font-size: 14px;}\n.bs-wizard > .bs-wizard-step > .bs-wizard-dot {position: absolute; width: 30px; height: 30px; display: block; background: #fbe8aa; top: 45px; left: 50%; margin-top: -15px; margin-left: -15px; border-radius: 50%;}\n.bs-wizard > .bs-wizard-step > .bs-wizard-dot:after {content: ' '; width: 14px; height: 14px; background: #fbbd19; border-radius: 50px; position: absolute; top: 8px; left: 8px; }\n.bs-wizard > .bs-wizard-step > .progress {position: relative; border-radius: 0px; height: 8px; box-shadow: none; margin: 20px 0;}\n.bs-wizard > .bs-wizard-step > .progress > .progress-bar {width:0px; box-shadow: none; background: #fbe8aa;}\n.bs-wizard > .bs-wizard-step.complete > .progress > .progress-bar {width:100%;}\n.bs-wizard > .bs-wizard-step.active > .progress > .progress-bar {width:50%;}\n.bs-wizard > .bs-wizard-step:first-child.active > .progress > .progress-bar {width:0%;}\n.bs-wizard > .bs-wizard-step:last-child.active > .progress > .progress-bar {width: 100%;}\n.bs-wizard > .bs-wizard-step.disabled > .bs-wizard-dot {background-color: #f5f5f5;}\n.bs-wizard > .bs-wizard-step.disabled > .bs-wizard-dot:after {opacity: 0;}\n.bs-wizard > .bs-wizard-step:first-child > .progress {left: 50%; width: 50%;}\n.bs-wizard > .bs-wizard-step:last-child > .progress {width: 50%;}\n.bs-wizard > .bs-wizard-step.disabled a.bs-wizard-dot{ pointer-events: none; }\n\n/**\nPrevent step titles from wrapping to a second line at intermediate\nwidths (QA reported ~1265px). The .bs-wizard-dot is absolutely\npositioned at top:45px per step, so any step whose stepnum grows\ntaller than one line pushes its progress bar down while its neighbours\nstay high — the connecting line looks broken. Nowrap + ellipsis keeps\nevery stepnum a consistent single-line height so the line stays\nlevel and threads through the dot centers as designed.\n */\n.bs-wizard > .bs-wizard-step .bs-wizard-stepnum {\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n/*END Form Wizard*/\n\n.left-navblock {\n display: inline-block;\n float: left;\n text-align: left;\n color: white;\n padding: 0px;\n /* adjust based on your layout */\n\n}\n\n.main-header\n.navbar\n.dropdown-menu li a {\n color: #333;\n}\n\na.logo.no-hover a:hover {\n background-color: transparent;\n}\n\n\ninput:required, select:required {\n border-right: 5px solid orange;\n}\nselect:required + .select2-container .select2-selection, select:required + .select2-container .select2-selection .select2-selection--multiple {\n border-right: 5px solid orange !important;\n}\n\nbody {\n font-family: -apple-system, BlinkMacSystemFont,\n \"Segoe UI\", \"Roboto\", \"Oxygen\", \"Ubuntu\", \"Cantarell\",\n \"Fira Sans\", \"Droid Sans\", \"Helvetica Neue\",\n sans-serif;\n font-size: 13px;\n}\n\n.sidebar-menu {\n font-size: 14px;\n white-space: normal;\n}\n\n.modal-warning .modal-help {\n color: #fff8af;\n}\n\n.bootstrap-table .fixed-table-container .fixed-table-body .fixed-table-loading {\n z-index: 0 !important;\n}\n\n// Clip the absolutely-positioned fixed-column overlays so they cannot\n// bleed past the container's bottom edge into the pagination area.\n.bootstrap-table .fixed-table-container {\n overflow: hidden;\n}\n\n@media print {\n\n @page {\n size: A4;\n margin: 0mm;\n }\n\n .tab-content > .tab-pane {\n display: block !important;\n opacity: 1 !important;\n visibility: visible !important;\n }\n\n .img-responsive {\n width: 200px;\n }\n\n html, body {\n width: 1024px;\n }\n\n body {\n margin: 0 auto;\n line-height: 1em;\n word-spacing:1px;\n letter-spacing:0.2px;\n font: 15px \"Times New Roman\", Times, serif;\n width: 100%;\n float: none;\n }\n\n /* avoid page-breaks inside a listingContainer*/\n .listingContainer {\n page-break-inside: avoid;\n }\n\n h1 {\n font: 28px \"Times New Roman\", Times, serif;\n }\n\n h2 {\n font: 24px \"Times New Roman\", Times, serif;\n }\n\n h3 {\n font: 20px \"Times New Roman\", Times, serif;\n }\n\n /* Improve colour contrast of links */\n a:link, a:visited {\n color: #781351\n }\n\n /* URL */\n a:link, a:visited {\n background: transparent;\n color:#333;\n text-decoration:none;\n }\n\n a[href]:after {\n content: \"\" !important;\n }\n\n a[href^=\"http://\"] {\n color:#000;\n }\n\n #header {\n height:75px;\n font-size: 24pt;\n color:black\n }\n\n div.row-new-striped {\n margin: 0px;\n padding: 0px;\n }\n\n .pagination-detail, .fixed-table-toolbar {\n visibility: hidden;\n }\n .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12 .col-sm-pull-3 .col-sm-push-9 {\n float: left;\n }\n\n .col-sm-12 {\n width: 100%;\n }\n .col-sm-11 {\n width: 91.66666666666666%;\n }\n .col-sm-10 {\n width: 83.33333333333334%;\n }\n .col-sm-9 {\n width: 75%;\n }\n .col-sm-8 {\n width: 66.66666666666666%;\n }\n .col-sm-7 {\n width: 58.333333333333336%;\n }\n .col-sm-6 {\n width: 50%;\n }\n .col-sm-5 {\n width: 41.66666666666667%;\n }\n .col-sm-4 {\n width: 33.33333333333333%;\n }\n .col-sm-3 {\n width: 25%;\n }\n .col-sm-2 {\n width: 16.666666666666664%;\n }\n .col-sm-1 {\n width: 8.333333333333332%;\n }\n\n}\n\n\n.select2-selection__choice__remove {\n color: white !important;\n}\n\n.select2-selection--multiple {\n overflow-y: auto;\n}\n\n.select2-selection__choice {\n border-radius: 0px !important;\n}\n\n.select2-search select2-search--inline {\n height: 35px !important;\n float: left;\n margin: 0;\n}\n\n\n\n.select2-results__option {\n padding: 5px;\n user-select: none;\n -webkit-user-select: none;\n margin: 0px;\n}\n\nimg.navbar-brand-img, .navbar-brand>img {\n float: left;\n padding: 5px 5px 5px 0;\n max-height: 50px;\n}\n\n.asset-qr-img img {\n image-rendering: pixelated;\n}\n\n.input-daterange, .input-daterange input:first-child, .input-daterange input:last-child {\n border-radius: 0px !important;\n}\n\n.btn-checkin, .btn-checkout {\n min-width:90px;\n}\n\n\n[hidden] {\n display: none !important;\n}\n\n#toolbar {\n margin-top: 10px;\n}\n\n#uploadPreview {\n border-color: grey;\n border-width: 1px;\n border-style: solid\n}\n\n.icon-med {\n font-size: 14px;\n color: #889195;\n}\n\n#login-logo {\n padding-top: 5px;\n padding-bottom: 5px;\n padding-right: 15px;\n max-width: 200px\n}\n\n// accessibility skip link\na.skip-main {\n left:-999px;\n position:absolute;\n top:auto;\n width:1px;\n height:1px;\n overflow:hidden;\n z-index:-999;\n}\na.skip-main:focus, a.skip-main:active {\n color: #fff;\n background-color:#000;\n left: auto;\n top: auto;\n width: 30%;\n height: auto;\n overflow:auto;\n margin: 10px 35%;\n padding:5px;\n border-radius: 15px;\n border:4px solid yellow;\n text-align:center;\n font-size:1.2em;\n z-index:999;\n}\n\nh2 {\n font-size: 22px;\n}\n\nh2.task_menu {\n font-size: 14px;\n}\n\nh2 small {\n font-size: 85%;\n}\n\nh3 {\n font-size: 20px;\n}\n\nh4 {\n font-size: 16px;\n}\n\n\n.row-striped {\n vertical-align: top;\n line-height: 2.6;\n padding: 0px;\n margin-left: 20px;\n box-sizing: border-box;\n //border-left: 1px solid #dddddd;\n //border-right: 1px solid #dddddd;\n display: table;\n}\n\n.row-striped .row:nth-of-type(odd) div {\n background-color: #f9f9f9;\n border-top: 1px solid #dddddd;\n display: table-cell;\n word-wrap: break-word;\n}\n\n.row-striped .row:nth-of-type(even) div {\n background: #FFFFFF;\n border-top: 1px solid #dddddd;\n display: table-cell;\n word-wrap: break-word;\n}\n\n\n.row-new-striped {\n vertical-align: top;\n padding: 3px;\n display: table;\n width: 100%;\n word-wrap: break-word;\n table-layout:fixed;\n}\n\n/**\n* NEW STRIPING\n* This section is for the new row striping for nicer \n* display for non-table data as of v6\n**/\n.row-new-striped > .row:nth-of-type(even) {\n line-height: 1.9;\n display: table-row;\n}\n\n.row-new-striped > .row:nth-of-type(odd) {\n display: table-row;\n padding: 2px;\n}\n\n.row-new-striped div {\n display: table-cell;\n padding: 6px;\n}\n\n.row-new-striped div {\n display: table-cell;\n padding: 6px;\n}\n\n\n.row-new-striped div[class^=\"col\"]:first-child {\n font-weight: bold;\n}\n\n\n\n/**\n* This just adds a little extra padding on mobile\n**/\n@media only screen and (max-width: 520px) {\n h1.pagetitle {\n padding-top: 15px;\n padding-bottom: 15px;\n }\n\n // .firstnav { padding-top: 120px !important } used to live here as\n // another static compensation for the wrapped-header-covers-first-item\n // bug at narrow widths. Superseded by the dynamic\n // .main-sidebar padding-top: var(--main-header-height) rule; leaving\n // it would double-count on top of the runtime-measured header height.\n\n .product {\n width: 400px;\n }\n\n .product img {\n min-width: 400px;\n }\n}\n\n.card-view-title {\n min-width: 40% !important;\n line-height: 3.0!important;\n padding-right: 20px;\n}\n\n.card-view {\n display: table-row;\n flex-direction: column;\n}\n\n// ---------------\n\n/**\n\n COLUMN SELECTOR ICONS\n -----------------------------\n This is kind of weird, but it is necessary to prevent the column-selector code from barfing, since\n any HTML used in the UserPresenter \"title\" attribute breaks the column selector HTML.\n\n Instead, we use CSS to add the icon into the table header, which leaves the column selector\n \"title\" text as-is and hides the icon.\n\n See https://github.com/grokability/snipe-it/issues/7989\n */\nthead th.css-accessory > .th-inner,\nthead th.css-accessory-alt > .th-inner,\nthead th.css-barcode > .th-inner,\nthead th.css-component > .th-inner,\nthead th.css-consumable > .th-inner,\nthead th.css-envelope > .th-inner,\nthead th.css-house-flag > .th-inner,\nthead th.css-house-laptop > .th-inner,\nthead th.css-house-user > .th-inner,\nthead th.css-license > .th-inner,\nthead th.css-location > .th-inner,\nthead th.css-maintenances > .th-inner,\nthead th.css-users > .th-inner,\nthead th.css-currency > .th-inner,\nthead th.css-child-locations > .th-inner,\nthead th.css-history > .th-inner\n{\n font-size: 0px;\n line-height: 0.75 !important;\n text-align: left;\n text-rendering: auto;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n}\n\n\nthead th.css-location > .th-inner::before,\nthead th.css-accessory > .th-inner::before,\nthead th.css-accessory-alt > .th-inner::before,\nthead th.css-barcode > .th-inner::before,\nthead th.css-component > .th-inner::before,\nthead th.css-consumable > .th-inner::before,\nthead th.css-envelope > .th-inner::before,\nthead th.css-house-flag > .th-inner::before,\nthead th.css-house-laptop > .th-inner::before,\nthead th.css-house-user > .th-inner::before,\nthead th.css-license > .th-inner::before,\nthead th.css-location > .th-inner::before,\nthead th.css-maintenances > .th-inner::before,\nthead th.css-users > .th-inner::before,\nthead th.css-currency > .th-inner::before,\nthead th.css-child-locations > .th-inner::before,\nthead th.css-history > .th-inner::before\n{\n display: inline-block;\n font-size: 20px;\n font-family: \"Font Awesome 5 Free\";\n font-weight: 900;\n}\n\n/**\nBEGIN ICON TABLE HEADERS\nSet the font-weight css property as 900 (For Solid), 400 (Regular or Brands), 300 (Light for pro icons).\n**/\nthead th.css-barcode > .th-inner::before\n{\n content: \"\\f02a\"; font-family: \"Font Awesome 5 Free\"; font-weight: 900;\n}\n\nthead th.css-license > .th-inner::before\n{\n content: \"\\f0c7\"; font-family: \"Font Awesome 5 Free\"; font-weight: 400;\n}\n\nthead th.css-consumable > .th-inner::before\n{\n content: \"\\f043\"; font-family: \"Font Awesome 5 Free\"; font-weight: 900;\n}\n\nthead th.css-envelope > .th-inner::before\n{\n content: \"\\f0e0\"; font-family: \"Font Awesome 5 Free\"; font-weight: 400;\n}\n\nthead th.css-accessory > .th-inner::before\n{\n content: \"\\f11c\"; font-family: \"Font Awesome 5 Free\"; font-weight: 400;\n}\n\nthead th.css-users > .th-inner::before {\n content: \"\\f0c0\"; font-family: \"Font Awesome 5 Free\"; font-size: 15px;\n}\n\nthead th.css-location > .th-inner::before {\n content: \"\\f3c5\"; font-family: \"Font Awesome 5 Free\"; font-size: 19px; margin-bottom: 0px;\n}\n\n// fa-screwdriver-wrench — matches the icon used by the maintenance tab and\n// the user-well maintenance-cost row, so the users-index column header\n// stays visually consistent with the rest of the maintenance surface.\nthead th.css-maintenances > .th-inner::before {\n content: \"\\f7d9\"; font-family: \"Font Awesome 5 Free\"; font-size: 18px; margin-bottom: 0px;\n}\n\nthead th.css-component > .th-inner::before\n{\n content: \"\\f0a0\"; font-family: \"Font Awesome 5 Free\"; font-weight: 500;\n}\n\nthead th.css-padlock > .th-inner::before\n{\n content: \"\\f023\"; font-family: \"Font Awesome 5 Free\";\n font-weight: 800;\n padding-right: 3px;\n}\n\nthead th.css-house-user > .th-inner::before {\n content: \"\\e1b0\";\n font-family: \"Font Awesome 5 Free\";\n font-size: 19px;\n margin-bottom: 0px;\n}\nthead th.css-house-flag > .th-inner::before {\n content: \"\\e50d\";\n font-family: \"Font Awesome 5 Free\";\n font-size: 19px;\n margin-bottom: 0px;\n}\nthead th.css-house-laptop > .th-inner::before {\n content: \"\\e066\";\n font-family: \"Font Awesome 5 Free\";\n font-size: 19px;\n margin-bottom: 0px;\n}\nthead th.css-accessory-alt > .th-inner::before {\n content: \"\\f11c\";\n font-family: \"Font Awesome 5 Free\";\n font-size: 19px;\n margin-bottom: 0px;\n}\n\nthead th.css-child-locations > .th-inner::before {\n content: \"\\f64f\"; // change this to f51e for coins\n font-family: \"Font Awesome 5 Free\";\n font-size: 19px;\n margin-bottom: 0px;\n}\n\nthead th.css-currency > .th-inner::before {\n content: \"\\24\"; // change this to f51e for coins\n font-family: \"Font Awesome 5 Free\";\n font-size: 19px;\n margin-bottom: 0px;\n}\n\nthead th.css-history > .th-inner::before {\n content: \"\\f1da\"; // change this to f51e for coins\n font-family: \"Font Awesome 5 Free\";\n font-size: 19px;\n margin-bottom: 0px;\n}\n\n\n.small-box .inner {\n padding-left: 15px;\n padding-right: 15px;\n padding-top: 15px;\n color: #fff;\n}\n\n\n.small-box > a:link, .small-box > a:visited, .small-box > a:hover {\n color: #fff;\n}\n\n.select2-container--default .select2-selection--single, .select2-selection .select2-selection--single {\n border: 1px solid #d2d6de;\n border-radius: 0;\n padding: 6px 12px;\n height: 34px;\n}\n\n.form-group.has-error label, .form-group.has-error .help-block {\n color: #a94442;\n}\n\n.select2-container--default .select2-selection--multiple {\n border-radius: 0px;\n}\n\n@media screen and (max-width: 511px){\n .tab-content .tab-pane .alert-block {\n margin-top: 120px\n }\n}\n@media screen and (max-width: 912px) and (min-width: 512px){\n .navbar-custom-menu > .navbar-nav > li.dropdown.user.user-menu {\n float:right;\n }\n .navbar-custom-menu > .navbar-nav > li > .dropdown-menu {\n margin-right:-39px;\n }\n}\n\n// Legacy .sidebar-menu { margin-top: Npx } rules at 912-1268px,\n// 512-912px, and <=511px used to live here as hardcoded compensation\n// for the \"header wraps at intermediate widths and covers the first\n// sidebar item\" bug (#5085, #11868, #19482). Same story for the\n// .firstnav { padding-top: 120px !important } that used to be inside\n// the max-width: 520px block below. All three were double-counted on\n// top of the dynamic .main-sidebar padding-top: var(--main-header-height)\n// rule further down that measures the actual header height at runtime,\n// producing 200px+ visual gaps above Dashboard at those breakpoints.\n// The dynamic measurement covers all these cases correctly, so the\n// static compensation is deleted.\n@media screen and (max-width: 992px){\n .info-stack-container {\n flex-direction: column;\n }\n .col-md-3.col-xs-12.col-sm-push-9.info-stack{\n left:auto;\n order:1;\n }\n .col-md-9.col-xs-12.col-sm-pull-3.info-stack{\n right:auto;\n order:2;\n }\n .info-stack-container > .col-md-9.col-xs-12.col-sm-pull-3.info-stack > .row-new-striped > .row > .col-sm-2{\n width:auto;\n float:none;\n }\n}\n@media screen and (max-width: 992px){\n .row-new-striped div{\n width:100%;\n }\n}\n\n@media screen and (max-width: 1318px) and (min-width: 1200px){\n .admin.box{\n height:170px;\n }\n}\n@media screen and (max-width: 1494px) and (min-width: 1200px){\n .dashboard.small-box{\n white-space: nowrap;\n text-overflow: ellipsis;\n max-width: 188px;\n display: block;\n overflow: hidden;\n }\n}\n\n/** Form-stuff overrides for checkboxes and stuff **/\n\nlabel.form-control {\n display: grid;\n grid-template-columns: 1.8em auto;\n gap: 0.5em;\n border: 0px;\n padding-left: 0px;\n background-color: inherit;\n color: inherit;\n font-size: inherit;\n font-weight: inherit;\n}\n\nlabel.form-control--disabled {\n color: #959495;\n cursor: not-allowed;\n}\n\n/** Bootstrap's normalize.less sets `html input[disabled] { cursor: default }`\n at load-order line 139, and its own `.form-control[disabled] { cursor: not-allowed }`\n rule (line 2705) has higher specificity so it should win — but on some browser +\n input-group combinations the resolved cursor still ends up as `text` because the\n input-group parent's implicit text-cursor bleeds through. Explicit element-scoped\n override to lock in the \"no-entry\" cursor on any disabled form control. **/\ninput.form-control[disabled],\nselect.form-control[disabled],\ntextarea.form-control[disabled] {\n cursor: not-allowed;\n}\n\n/** Anti-autofill masking for the readonly-plus-onfocus-strip trick used on\n sensitive form fields (user create/edit username, password, email, etc.).\n The field ships with `readonly` so password managers won't prefill or\n overwrite it, then strips readonly on focus so the operator can type.\n Bootstrap's `.form-control[readonly]` styles that field with a gray\n disabled-looking background, which confuses the operator into thinking\n the field is uneditable. Override to make it visually indistinguishable\n from a regular editable input.\n Scoped to `.js-antifill-readonly` so legitimately-readonly fields\n (SAML SP entity ID, ACS/SLS URLs, generated cert, metadata URL, etc.)\n keep the gray-out styling from the readonly rule further down in this\n file. Adding `readonly` alone should look readonly; opt in to the\n autofill-masking override by adding the class explicitly.\n Deliberately does NOT match `[disabled]` — actually-disabled fields\n (demo mode locks, permission gates) must keep their grayed appearance\n and not-allowed cursor. **/\ninput.js-antifill-readonly[readonly],\ntextarea.js-antifill-readonly[readonly],\n.form-control.js-antifill-readonly[readonly] {\n cursor: text !important;\n background-color: var(--table-stripe-bg) !important;\n color: var(--color-fg) !important;\n}\n\n/** Inline \"this field is locked because the app is in demo mode\" callout.\n Rendered by the <x-demo-lock> anonymous component in resources/views/blade/demo-lock.blade.php.\n Kept as a small inline-block box so it hugs its text width regardless\n of the column it lands in (input rows use col-md-7, activated row\n uses col-md-9, so a block-level notice would stretch inconsistently). **/\n.demo-lock-notice {\n display: inline-block;\n background-color: #fcf8e3;\n border: 1px solid #faebcc;\n color: #8a6d3b;\n padding: 6px 10px;\n margin-top: 6px;\n border-radius: 3px;\n font-size: 0.9em;\n}\n\n\n/** --------------------------------------- **/\n/** Start checkbox styles to replace iCheck **/\n/** --------------------------------------- **/\ninput[type=\"checkbox\"] {\n /* Add if not using autoprefixer */\n -webkit-appearance: none;\n appearance: none;\n /* For iOS < 15 to remove gradient background */\n background-color: #fff;\n /* Not removed via appearance */\n margin: 0;\n font: inherit;\n color: #959495;\n width: 1.8em;\n height: 1.8em;\n border: 0.05em solid;\n border-radius: 0em;\n transform: translateY(-0.075em);\n display: grid;\n place-content: center;\n /*Windows High Contrast Mode*/\n}\n\n/** This sets the display of a checkbox, and what the \"fill\" checkmark should look like */\n\ninput[type=\"checkbox\"]::before {\n\n /** If you want to use the non-checkbox, filled square, use this instead **/\n content: \"\";\n width: 1em;\n height: 1em;\n transform: scale(0);\n transition: 120ms transform ease-in-out;\n box-shadow: inset 1em 1em rgb(211, 211, 211);\n content: \"\";\n width: 1em;\n height: 1em;\n clip-path: polygon(14% 44%, 0 65%, 50% 100%, 100% 16%, 80% 0%, 43% 62%);\n transform: scale(0);\n transform-origin: bottom left;\n transition: 120ms transform ease-in-out;\n box-shadow: inset 1em 1em #428bca;\n /* Windows High Contrast Mode */\n background-color: CanvasText;\n}\n\n/** This sets the size of the scale up for the shape we defined above **/\ninput[type=\"checkbox\"]:checked::before {\n transform: scale(1);\n}\n\n/** This sets the scale and color of the DISABLED but CHECKED checkbox */\ninput[type=checkbox]:disabled::before, input[type=radio]:disabled::before {\n content: \"\";\n width: 1em;\n height: 1em;\n transform: scale(1);\n box-shadow: inset 1em 1em rgb(211, 211, 211);\n}\n\n/* This sets the scale and style of a DISABLED checkbox that is NOT checked */\ninput[type=checkbox]:disabled:not(:checked)::before, input[type=radio]:disabled:not(:checked)::before {\n content: \"\";\n transform: scale(0);\n cursor: not-allowed;\n pointer-events:none;\n}\n\n/** this is the color of the checkbox and content on a disabled, checked box **/\ninput[type=checkbox]:disabled, input[type=radio]:disabled {\n --form-control-color: rgb(211, 211, 211);\n color: #959495;\n cursor: not-allowed;\n pointer-events:none;\n}\n\n\n/** Radio styles to replace iCheck **/\n\ninput[type=\"radio\"] {\n appearance: none;\n background-color: #fff;\n margin: 0;\n font: inherit;\n color: #959495;\n width: 1.8em;\n height: 1.8em;\n border: 0.05em solid;\n border-radius: 50%;\n transform: translateY(-0.075em);\n display: grid;\n place-content: center;\n}\n\ninput[type=\"radio\"]::before {\n content: \"\";\n width: 1em;\n height: 1em;\n border-radius: 50%;\n transform: scale(0);\n transition: 120ms transform ease-in-out;\n}\n\ninput[type=\"radio\"]:checked::before {\n transform: scale(1);\n}\n\n\n/**\n* This addresses the column selector in bootstrap-table. Without these two lines, the\n* checkbox and the <span></span> with the label text that BS tables generates will\n* end up on two different lines and it looks assy.\n */\n.dropdown-item-marker input[type=checkbox] {\n font-size: 10px;\n}\n\n.bootstrap-table .fixed-table-toolbar li.dropdown-item-marker label {\n font-weight: normal;\n display: grid;\n grid-template-columns: .1em auto;\n gap: 1.5em;\n}\n\n.container.row-striped .col-md-6 {\n overflow-wrap:anywhere;\n}\n\n.nav-tabs-custom > .nav-tabs > li {\n z-index: 1;\n}\n\n.select2-container .select2-search--inline .select2-search__field{\n padding-left:15px;\n}\n\n.nav-tabs-custom > .nav-tabs > li.active {\n font-weight: bold;\n}\n\n/** --------------------------------------- **/\n/** End checkbox styles to replace iCheck **/\n/** --------------------------------------- **/\n\n/**\n/** Separator styles with text in the middle. Currently only used by the login page but\n/** could be used elsewhere.\n */\n\n.separator {\n display: flex;\n align-items: center;\n text-align: center;\n padding-top: 20px;\n color: #959495;\n}\n\n.separator::before,\n.separator::after {\n content: '';\n flex: 1;\n border-bottom: 1px solid #959495;\n}\n\n.separator:not(:empty)::before {\n margin-right: .25em;\n}\n\n.separator:not(:empty)::after {\n margin-left: .25em;\n}\n.datepicker.dropdown-menu {\n z-index: 1030 !important;\n}\n\n.sidebar-menu > li .badge {\n margin-top: 0px;\n filter: brightness(70%);\n font-size: 70%;\n}\n\n/** this is needed to override ekko-lightboxes card view styles **/\n.bootstrap-table .fixed-table-container .table tbody tr .card-view {\n display: table-row !important;\n}\n\ntd.text-right.text-padding-number-cell {\n padding-right: 30px !important;\n white-space: nowrap;\n}\n\nth.text-right.text-padding-number-footer-cell {\n padding-right: 20px !important;\n white-space: nowrap;\n}\n\ncode.single-line {\n white-space: pre-wrap;\n display: -webkit-box;\n -webkit-box-orient: vertical;\n -webkit-line-clamp: 1;\n overflow: hidden;\n max-width: 400px;\n}\n\np.monospace, span.monospace {\n font-family: monospace, monospace;\n}\n\nlegend.highlight {\n background: repeating-linear-gradient(\n 45deg,\n #222d32,\n #222d32 10px,\n #444 10px,\n #444 11px\n );\n\n color: #fff;\n font-size: 18px;\n padding: 6px 6px 6px 10px;\n}\n\nlegend.highlight a {\n color: #fff;\n cursor: pointer;\n}\n\nfieldset.bottom-padded {\n padding-bottom: 20px;\n}\n\ncaption.tableCaption {\n font-size: 18px;\n padding-left: 8px;\n}\n\n\n.markdown-field-content {\n h1 { font-size: 22px; font-weight: 700; margin: 6px 0 4px; }\n h2 { font-size: 20px; font-weight: 700; margin: 6px 0 4px; }\n h3 { font-size: 18px; font-weight: 700; margin: 6px 0 4px; }\n h4 { font-size: 16px; font-weight: 700; margin: 4px 0 4px; }\n h5, h6 { font-size: 14px; font-weight: 700; margin: 4px 0 4px; }\n p { margin: 0 0 4px; }\n p:last-child { margin-bottom: 0; }\n ul, ol { margin: 0 0 4px; padding-left: 20px; }\n > *:first-child { margin-top: 0; }\n}\n\n// via https://github.com/grokability/snipe-it/issues/11754\n.sidebar-toggle.btn {\n border-radius: 3px;\n box-shadow: none;\n border-top: 0px solid transparent;\n border-bottom: 0px solid transparent;\n padding-left: 15px;\n padding-right: 15px;\n padding-top: 12px;\n padding-bottom: 12px;\n margin-left: -47px;\n margin-top: 2px;\n}\n\n\n.visually-hidden {\n width: 1px;\n height: 1px;\n margin: -1px;\n overflow: hidden;\n clip: rect(0,0,0,0);\n white-space: preserve;\n display: inline-block;\n}\n\ninput[name=\"columnsSearch\"] {\n width: 120px;\n}\n\n.callout.callout-legend {\n padding: 15px 30px 15px 15px;\n font-size: 100%;\n border-radius: 0px;\n}\n\n.callout.callout-legend h4 {\n font-size: 16px;\n font-weight: bold;\n margin-top: 5px;\n margin-bottom: 0px;\n}\n\n.callout.callout-legend a {\n text-decoration: none;\n cursor: pointer;\n}\n\np.callout-subtext {\n margin-top: 5px;\n}\n\n/**\nThis just hides the padding on the right side of the mark tag for a less weird visual experience\n */\nmark {\n padding-right: 0px;\n}\n\n/**\nRadio toggle styles for permission settings and check/uncheck all\n */\n.radio-toggle-wrapper {\n display: flex;\n padding: 2px;\n background-color: #e9e9e9;\n margin-bottom: 3px;\n border-radius: 4px;\n border: 1px #d6d6d6 solid;\n}\n\n.radio-slider-inputs {\n flex-grow: 1;\n}\n\n.radio-slider-inputs input[type=radio] {\n display: none;\n}\n\n.radio-slider-inputs label {\n display: block;\n margin-bottom: 0px;\n padding: 6px 8px;\n color: #fff;\n font-weight: bold;\n text-align: center;\n transition : all .4s 0s ease;\n cursor: pointer;\n}\n\n.radio-slider-inputs label {\n color: #9a9999;\n border-radius: 4px;\n border: 1px transparent solid;\n}\n\n.radio-slider-inputs .allow:checked + label {\n background-color: green;\n color: white;\n border-radius: 4px;\n border: 1px transparent solid;\n}\n\n.radio-slider-inputs .inherit:checked + label {\n background-color: rgba(255, 204, 51, 0.11);\n color: #9a9999;\n border-radius: 4px;\n border: 1px white solid;\n}\n\n.radio-slider-inputs .deny:checked + label {\n background-color: #a94442;\n color: white;\n border-radius: 4px;\n border: 1px transparent solid;\n}\n\n.remember-toggle {\n cursor: pointer;\n}\n\n.js-copy-link {\n float: left;\n color: grey;\n}\n\n.deleted {\n text-decoration: line-through;\n}\n\n\n//css to add hamburger and create dropdown on small screens\n@nav-link-hover-bg: #eeeeee;\n@border-radius-base: 5px;\n@screen-xs-max: 767px;\n\n.nav-tabs.nav-tabs-dropdown,\n.nav-tabs-dropdown {\n @media (max-width: @screen-xs-max) {\n overflow: hidden;\n position: relative;\n\n &::after {\n content: \"☰\";\n position: absolute;\n font-size: 35px;\n top: 0;\n right: 15px;\n z-index: 2;\n pointer-events: none;\n }\n\n &.open {\n a {\n position: relative;\n display: block;\n }\n\n > li.active > a {\n background-color: @nav-link-hover-bg;\n\n }\n }\n\n li.snipetab {\n margin-right: 0 !important;\n }\n\n li {\n display: block;\n padding: 0;\n vertical-align: bottom;\n white-space: nowrap !important;\n }\n\n > li > a {\n position: absolute;\n top: 0;\n left: 0;\n margin: 0;\n width: 100%;\n height: 100%;\n display: inline-block;\n border-color: transparent;\n\n &:focus,\n &:hover,\n &:active {\n border-color: transparent;\n border-right: 0 !important;\n }\n }\n\n > li.active > a {\n display: block;\n border-color: transparent !important;\n position: relative;\n z-index: 1;\n\n &:focus,\n &:hover,\n &:active {\n border-color: transparent !important;\n }\n\n }\n }\n\n// Advanced-search \"Clear all\" pill. AdminLTE's default anchor styles pull the\n// color toward the theme's link tint on :hover / :focus, which reads black on\n// the red pill background. Pin white in every interactive state so the pill\n// stays legible.\n.snipe-advanced-search-tags-clear-all,\n.snipe-advanced-search-tags-clear-all:link,\n.snipe-advanced-search-tags-clear-all:visited,\n.snipe-advanced-search-tags-clear-all:hover,\n.snipe-advanced-search-tags-clear-all:focus,\n.snipe-advanced-search-tags-clear-all:active {\n color: #fff !important;\n text-decoration: none;\n}\n}\n\n// Spin the help-icon (life-ring) on hover/focus of the info tooltip anchor.\n// Uses Font Awesome's built-in fa-spin animation. Gated by the\n// prefers-reduced-motion rule below.\n.tooltip-spin-hover:hover i,\n.tooltip-spin-hover:focus i {\n animation: fa-spin 2s infinite linear;\n}\n\n// Bootstrap 3 tops out at .modal-lg (900px). The wizard-style modals\n// (e.g. the CSV importer) need more horizontal room for their mapping\n// grid + preview table, so add a .modal-xl above modal-lg. Follows the\n// same @media breakpoint BS3 uses for .modal-lg (>= 992px) and caps at\n// 1400px so it doesn't stretch obnoxiously on ultra-wide monitors.\n@media (min-width: 992px) {\n .modal-xl {\n width: 90%;\n max-width: 1400px;\n }\n}\n\n// Long wizard content (dozens of mapping rows) can push the modal past\n// the viewport. Bootstrap 3 doesn't scroll the modal-body by default, so\n// the footer buttons (Back / Next / Preview / Process) end up below the\n// fold with no way to reach them. Cap the modal-body height and let it\n// scroll internally instead. Scoped to .modal-xl so smaller confirm-\n// action modals aren't affected. 200px leaves room for header (~60),\n// footer (~60), and the modal's own top/bottom margins. overflow-x is\n// hidden so a stray col-* with negative row margins doesn't produce a\n// horizontal scrollbar on the type-selection and mapping steps; the\n// preview step's wide sample table has its own .table-responsive\n// wrapper for horizontal scrolling.\n.modal-xl .modal-body {\n max-height: calc(100vh - 200px);\n overflow-y: auto;\n overflow-x: hidden;\n}\n\n// Bootstrap 3's .form-horizontal .form-group carries -15px left/right\n// margins that cancel a modal-body's default 15px padding, leaving all\n// form content pinned flush to the modal edges. Zero it out inside the\n// wizard modal so labels + inputs stay inset from the modal chrome. The\n// inner .col-* children retain their own 15px padding, so the standard\n// horizontal-form gutter still lands correctly.\n.modal-xl .modal-body.form-horizontal > .form-group,\n.modal-xl .modal-body.form-horizontal > .row > .form-group {\n margin-left: 0;\n margin-right: 0;\n}\n\n// bs-wizard-stepnum ships hardcoded #595959 in bootstrap-less, which is\n// near-invisible against the dark-theme background. Override to the\n// theme's own body text color so \"Choose type\" / \"Map fields\" / \"Preview\"\n// stay readable in dark mode.\n[data-theme=\"dark\"] .bs-wizard > .bs-wizard-step .bs-wizard-stepnum,\n[data-theme=\"dark\"] .bs-wizard > .bs-wizard-step .bs-wizard-info {\n color: #d0d0d0;\n}\n\n// Respect the user's OS-level \"reduce motion\" preference. The Font Awesome\n// spinners (.fa-spin) and Font Awesome Animation pulses (.faa-pulse, .animated)\n// loop indefinitely, which can trigger vestibular symptoms. One-shot animations\n// (like the confetti burst on save) are left alone since they don't loop.\n@media (prefers-reduced-motion: reduce) {\n // Catch-all for any Font Awesome Animation utility (faa-pulse, faa-spin,\n // faa-tada, faa-shake, faa-bounce, faa-burst, faa-flash, faa-float,\n // faa-horizontal, faa-vertical, faa-passing, faa-ring, faa-slide, etc.)\n // regardless of whether the animation is always-on (.animated) or hover-\n // triggered (.animated-hover:hover). Attribute selector keeps this rule\n // safe against future FA-Animation class additions.\n [class*=\"faa-\"].animated,\n [class*=\"faa-\"].animated-hover:hover,\n .tooltip-spin-hover:hover i,\n .tooltip-spin-hover:focus i,\n .fa-spin,\n .fa-pulse {\n animation: none !important;\n }\n}\n\n// ============================================================================\n// Theme mode CSS custom properties.\n//\n// Originally lived as an inline <style> block in layouts/default.blade.php,\n// migrated here so the layout stops carrying ~1200 lines of raw CSS and so\n// layouts/basic.blade.php (login, error pages) can inherit the same theming\n// by loading all.css alone.\n//\n// CSS Colors 5 expressions (hsl(from ...), light-dark(...)) are wrapped in\n// Less's ~\"...\" escape so the compiler emits them verbatim instead of trying\n// to parse `l - 10` as its own variable arithmetic.\n//\n// Per-tenant color overrides (header_color, nav_link_color, link_light_color,\n// link_dark_color) are NOT moved here — they still live in the tiny inline\n// <style> block in default.blade.php and win on cascade order. The defaults\n// baked in below match what the blade fallbacks currently emit when a tenant\n// has not customized their colors.\n// ============================================================================\n\n:root {\n color-scheme: light dark;\n --color-bg: ~\"light-dark(#ecf0f5, #222222)\";\n --btn-theme-hover-text-color: ~\"light-dark(hsl(from var(--main-theme-color) h s calc(l - 10)),hsl(from var(--main-theme-color) h s calc(l - 10)))\";\n --btn-theme-hover: ~\"light-dark(hsl(from var(--main-theme-color) h s calc(l - 10)),hsl(from var(--main-theme-color) h s calc(l - 10)))\";\n --btn-theme-text-color: ~\"light-dark(hsl(from var(--main-theme-color) h s calc(l + 10)),hsl(from var(--main-theme-color) h s calc(l - 10)))\";\n --color-fg: ~\"light-dark(#373636, #ffffff)\";\n --main-footer-bg-color: ~\"light-dark(#ffffff,#3d4144)\";\n --main-footer-text-color: ~\"light-dark(#605e5e, #d2d6de)\";\n --main-footer-top-border-color: ~\"light-dark(#d2d6de,#605e5e)\";\n --main-theme-color: #3c8dbc;\n --nav-hover-text-color: ~\"hsl(from var(--main-theme-color) h s calc(l - 10))\";\n --nav-primary-text-color: #ffffff;\n --search-highlight: #e9d15b;\n --sidenav-hover-color-bg: #4c4b4b;\n --sidenav-text-hover-color: #fff;\n --sidenav-text-nohover-color: #b8c7ce;\n --table-border-row-color: ~\"light-dark(#ecf0f5, #656464)\";\n --table-border-row-top: 1px solid #ecf0f5;\n --table-border-row: 1px solid var(--table-border-row-color);\n --table-stripe-bg-alt: ~\"light-dark(rgba(211, 211, 211, 0.25), #323131)\";\n --table-stripe-bg: ~\"light-dark(#ffffff, #494747)\";\n --text-danger: ~\"light-dark(#a94442, #fa5b48)\";\n --text-help: ~\"light-dark(#777676,#a6a4a4)\";\n --text-info: ~\"light-dark(#31708f,#2baae6)\";\n --text-success: ~\"light-dark(#039516,#4ced61)\";\n --text-warning: ~\"light-dark(#da9113,#f3a51f)\";\n --input-border-color: ~\"light-dark(#d2d6de,#656464)\";\n --default-label-link-bg: var(--color-bg);\n --default-label-link-text: ~\"light-dark(#296282, #5fa4cc)\";\n --default-label-link-border: ~\"1px solid light-dark(#b8c7ce, #494747)\";\n}\n\n[data-theme=\"light\"] {\n color-scheme: light;\n --box-bg: #ffffff;\n --box-header-bottom-border-color: #f4f4f4;\n --box-header-bottom-border: 1px solid var(--box-header-bottom-border-color);\n --box-header-top-border-color: #d2d6de;\n --box-header-top-border: 3px solid var(--box-header-top-border-color);\n --btn-theme-base: ~\"hsl(from var(--main-theme-color) h s calc(l + 5))\";\n --btn-theme-border: ~\"hsl(from var(--btn-theme-base) h s calc(l + 20))\";\n --btn-theme-hover-text-color: var(--nav-primary-text-color);\n --btn-theme-hover: var(--main-theme-hover);\n --callout-bg-color: var(--box-header-bottom-border-color);\n --callout-left-border: var(--box-header-top-border-color);\n --header-color: #000000;\n --input-group-bg: ~\"hsl(from var(--box-bg) h s calc(l - 5))\";\n --input-group-fg: ~\"hsl(from var(--input-group-bg) h s calc(l - 50))\";\n --link-color: #296282;\n --link-hover: ~\"hsl(from var(--link-color) h s calc(l - 10))\";\n --main-theme-hover: ~\"hsl(from var(--main-theme-color) h s calc(l - 10))\";\n --tab-bottom-border: 1px solid var(--box-header-top-border-color);\n --text-legend-help: var(--text-help);\n}\n\n[data-theme=\"dark\"] {\n color-scheme: dark;\n --box-bg: #3d4144;\n --box-header-bottom-border-color: #605e5e;\n --box-header-bottom-border: 1px solid var(--box-header-bottom-border-color);\n --box-header-top-border-color: #605e5e;\n --box-header-top-border: 3px solid var(--box-header-top-border-color);\n --btn-theme-base: ~\"hsl(from var(--main-theme-color) h s calc(l + 5))\";\n --btn-theme-border: ~\"hsl(from var(--btn-theme-base) h s calc(l + 20))\";\n --btn-theme-hover-text-color: var(--nav-primary-text-color);\n --btn-theme-hover: var(--main-theme-hover);\n --callout-bg-color: var(--box-header-top-border-color);\n --callout-left-border: #323131;\n --header-color: #ffffff;\n --input-group-bg: ~\"hsl(from var(--box-bg) h s calc(l + 10))\";\n --input-group-fg: ~\"hsl(from var(--input-group-bg) h s calc(l + 50))\";\n --link-color: #5fa4cc;\n --link-hover: ~\"hsl(from var(--link-color) h s calc(l + 15))\";\n --main-theme-hover: ~\"hsl(from var(--main-theme-color) h s calc(l - 10))\";\n --tab-bottom-border: 1px solid var(--box-header-top-border-color);\n --text-legend-help: #d6d6d6;\n}\n\n\n// ============================================================================\n// Theme-mode SELECTOR rules (paired with the variable definitions above).\n//\n// All ~1170 lines of \".selector { background-color: var(--foo); }\" style\n// rules that used to live in layouts/default.blade.php's inline <style>\n// block. Every line reads from a CSS custom property defined earlier in\n// this file — no per-tenant Blade interpolation lives here.\n//\n// CSS Colors 5 expressions (hsl(from ...), light-dark(...)) are wrapped in\n// Less's ~\"...\" escape so the compiler emits them verbatim.\n// ============================================================================\n\n.label2_fields,\n.l2fd-main,\n.l2fd-listitem,\n.fixed-table-loading,\n.list-group-item {\n background-color: var(--box-bg) !important;\n color: var(--color-fg) !important;\n}\n\n.list-group-item {\n border: var(--tab-bottom-border);\n}\n\nfooter.main-footer {\n color: var(--main-footer-text-color) !important;\n background-color: var(--main-footer-bg-color) !important;\n border-top: 1px solid var(--main-footer-top-border-color) !important;\n}\n\na,\na:link,\na:visited {\n color: var(--link-color);\n}\n\na:hover,\na:focus {\n color: var(--link-hover) !important;\n}\n\nlabel.form-control {\n color: var(--color-fg) !important;\n}\n\n.footer-links a {\n color: var(--link-color) !important;\n}\n\nh2 small {\n color: var(--color-fg) !important;\n}\n\n.btn-theme {\n background-color: var(--btn-theme-base);\n /*color: var(--btn-theme-hover-text-color) !important;*/\n color: var(--nav-primary-text-color) !important;\n border: ~\"1px solid hsl(from var(--btn-theme-base) h s calc(l - 15))\" !important;\n}\n\n.btn-theme:hover {\n background-color: var(--btn-theme-hover);\n /*color: var(--btn-theme-hover-text-color) !important;*/\n color: var(--nav-primary-text-color) !important;\n border: ~\"1px solid hsl(from var(--btn-theme-base) h s calc(l - 15))\" !important;\n}\n\n.btn-theme.active {\n background-color: var(--btn-theme-hover) !important;\n}\n\n.btn-theme:focus {\n color: var(--nav-primary-text-color) !important;\n}\n\n\n.dropdown-wrapper,\n.js-data-ajax,\n.option,\n.select2 .select2-container .select2-container--default,\n.select2,\n.select2-choice,\n.select2-container,\n.select2-results__option,\n.select2-search input,\n.select2-search--dropdown,\n.select2-search__field,\n.select2-selection .select2-selection--single,\n.select2-selection,\n.select2-selection--single,\n.select2-selection__rendered,\ninput[type=\"date\"],\ninput[type=\"number\"],\ninput[type=\"text\"],\ninput[type=\"url\"],\ninput[type=\"email\"],\ninput[type=\"password\"],\ninput[type=\"tel\"],\noption:active,\noption[active],\noption[selected],\nselect option,\nselect,\ntextarea {\n background-color: var(--table-stripe-bg) !important;\n color: var(--color-fg) !important;\n border-color: var(--input-border-color) !important;\n\n}\n\n.select2-container--default.select2-container--focus .select2-selection--multiple,\n.select2-container--default .select2-search--dropdown .select2-search__field {\n border-color: ~\"hsl(from var(--main-theme-color) h s calc(l - 5))\" !important;\n}\n\n/**\nSafari ignores option[selected] styling on plain <select multiple> until\nthe user interacts with the list, so pre-selected options render with\nthe browser's default light highlight. Force a lighter background on the\nwhole select in dark mode so pre-selected items stay readable.\n */\n[data-theme=\"dark\"] select[multiple],\n[data-theme=\"dark\"] select[multiple] option {\n background-color: #d2d6de !important;\n color: #373636 !important;\n}\n\n/**\nSite-logo preview swatch on Settings > Branding. Uses the tenant header\ncolor as its background so the logo shows against the same color it will\nhave in the top nav. The header-color picker on the branding page writes\n--main-theme-color inline on <html> for live preview, so this rule picks\nup that update automatically.\n */\n.header-preview {\n background-color: var(--main-theme-color);\n}\n\n/**\nMultiselect maybe?\n */\n.select2-results__option[aria-selected=true] {\n background-color: var(--main-theme-color) !important;\n color: var(--nav-primary-text-color) !important;\n}\n\n.select2-results__option[aria-selected=false] {\n background-color: var(--table-stripe-bg) !important;\n /*background-color: hsl(from var(--main-theme-color) h s calc(l - 15)) !important;*/\n /*color: var(--nav-primary-text-color) !important;*/\n color: var(--color-fg) !important;\n}\n\n/**\nHighlight the select2 on hover when NOT the selected option\n */\n.select2-results__option--highlighted[aria-selected=false] {\n background-color: ~\"hsl(from var(--main-theme-color) h s calc(l - 10))\" !important;\n color: var(--nav-primary-text-color) !important;\n}\n\n/**\nHighlight the select2 on hover when the selected option\n */\n.select2-results__option--highlighted[aria-selected=true],\n.select2-results__option--highlighted[aria-selected=true]:hover,\n.select2-results__option--highlighted[aria-selected=true]:link,\n.select2-results__option--highlighted[aria-selected=true]:focus,\n.select2-results__option--highlighted[aria-selected=true]:visited {\n background-color: ~\"hsl(from var(--main-theme-color) h s calc(l - 15))\" !important;\n /*color: var(--color-fg) !important;*/\n color: var(--nav-primary-text-color) !important;\n}\n\n.select2-selection__choice,\n.select2-container--default .select2-selection--multiple .select2-selection__choice {\n background-color: var(--main-theme-color) !important;\n border-color: ~\"hsl(from var(--main-theme-color) h s calc(l - 15))\" !important;\n color: var(--nav-primary-text-color) !important;\n}\n\n.select2-selection__choice__remove {\n color: var(--nav-primary-text-color) !important;\n}\n\n.select2-container--default .select2-selection--multiple .select2-selection__choice {\n background-color: ~\"hsl(from var(--main-theme-color) h s calc(l - 5))\" !important;\n color: var(--nav-primary-text-color) !important;\n overflow-y: auto;\n}\n\n/*\neonasdan bootstrap-datetimepicker widget: match the app's theme color\nfor selected/today cells and follow light/dark mode for the popup\nchrome. Ships with Bootstrap's stock #337ab7 which looks off next to\nAdminLTE.\n\n- All toolbar buttons: .bootstrap-datetimepicker-widget li.picker-switch a[data-action]\n- Individual buttons: a[data-action=\"today\"], a[data-action=\"clear\"], a[data-action=\"close\"] - -\n- The <td> cell each button sits in: .bootstrap-datetimepicker-widget li.picker-switch td\n- The icon <span> inside the anchor: .bootstrap-datetimepicker-widget li.picker-switch a[data-action] > span\n*/\n.bootstrap-datetimepicker-widget {\n z-index: 1030 !important;\n background-color: var(--box-bg) !important;\n color: var(--color-fg) !important;\n}\n\n/* Widget border in the theme color so the popup edge visually\n matches other themed boxes in the app. */\n.bootstrap-datetimepicker-widget.dropdown-menu {\n border: 1px solid var(--main-theme-color) !important;\n}\n\n/* The connecting caret between the input and the popup is drawn\n with two triangles: :before is the outer border outline (7px),\n :after is the inner fill (6px, sits inside the :before). Match\n the widget's own theme-color border on the outer triangle, and\n the widget's background on the inner. */\n.bootstrap-datetimepicker-widget.dropdown-menu.bottom:before {\n border-bottom-color: var(--main-theme-color) !important;\n}\n\n.bootstrap-datetimepicker-widget.dropdown-menu.bottom:after {\n border-bottom-color: var(--box-bg) !important;\n}\n\n.bootstrap-datetimepicker-widget.dropdown-menu.top:before {\n border-top-color: var(--main-theme-color) !important;\n}\n\n.bootstrap-datetimepicker-widget.dropdown-menu.top:after {\n border-top-color: var(--box-bg) !important;\n}\n\n/* Side-by-side (date + time) mode ships at 38em, not wide enough\n once the format includes seconds. Bump up to give the time cells\n room. */\n.bootstrap-datetimepicker-widget.dropdown-menu.timepicker-sbs {\n width: 42em !important;\n}\n\n/* Compact (non-sideBySide) mode. Library default is 19em, which is\n too narrow for the time-picker view — hour/minute/second cells\n are 54px each and the increment/decrement arrow buttons add width\n on top of that, so under ~300px the time view gets clipped. Sizing\n to fit the widest child (the time view) also gives the calendar\n view plenty of room. */\n.bootstrap-datetimepicker-widget.dropdown-menu:not(.timepicker-sbs) {\n min-width: 320px;\n}\n\n.bootstrap-datetimepicker-widget table td.active,\n.bootstrap-datetimepicker-widget table td.active:hover,\n.bootstrap-datetimepicker-widget table td span.active,\n.bootstrap-datetimepicker-widget table td span.active:hover {\n background-color: var(--main-theme-color) !important;\n color: var(--nav-primary-text-color) !important;\n text-shadow: none !important;\n}\n\n.bootstrap-datetimepicker-widget table td.today:before {\n border-bottom-color: var(--main-theme-color) !important;\n}\n\n/* Cell hover: theme color background + white text — same shape as\n \"active\" so contrast is guaranteed in both light and dark mode. */\n.bootstrap-datetimepicker-widget table td:hover,\n.bootstrap-datetimepicker-widget table td span:hover,\n.bootstrap-datetimepicker-widget table thead tr:first-child th:hover {\n background-color: var(--main-theme-color) !important;\n color: var(--nav-primary-text-color) !important;\n}\n\n/* Time-picker text (compact mode). Bootstrap's .btn base color is\n #333 which is invisible on the dark box-bg in dark mode; force\n these text elements to inherit the widget's --color-fg instead\n so they read in both themes.\n - .timepicker-hour / -minute / -second : the big clickable digits\n - .separator : the colon between them\n - .timepicker-picker .btn : the up/down arrow buttons\n - .timepicker-picker .btn span : the FA icon inside those\n - .timepicker-hours / -minutes / -seconds .btn : the expanded grid\n of pickable hour/minute/second numbers when you click a digit */\n.bootstrap-datetimepicker-widget .timepicker-hour,\n.bootstrap-datetimepicker-widget .timepicker-minute,\n.bootstrap-datetimepicker-widget .timepicker-second,\n.bootstrap-datetimepicker-widget .separator,\n.bootstrap-datetimepicker-widget .timepicker-picker .btn,\n.bootstrap-datetimepicker-widget .timepicker-picker .btn span,\n.bootstrap-datetimepicker-widget .timepicker-hours td,\n.bootstrap-datetimepicker-widget .timepicker-minutes td,\n.bootstrap-datetimepicker-widget .timepicker-seconds td {\n color: var(--color-fg) !important;\n}\n\n/* The empty <td class=\"separator\"> cells above and below the \":\"\n are pure spacers, but were rendering visible \"lines\" around the\n colon. Force their background to match the popup so they blend\n into the widget in both light and dark mode.\n\n Also kill the ::before / ::after pseudo-elements — the app's own\n .separator class elsewhere in the codebase draws horizontal grey\n border-bottom lines via those pseudos (for section dividers), and\n class-name collides with the library's timepicker separator td. */\n.bootstrap-datetimepicker-widget .separator {\n background-color: var(--box-bg) !important;\n border: none !important;\n box-shadow: none !important;\n}\n\n.bootstrap-datetimepicker-widget .separator::before,\n.bootstrap-datetimepicker-widget .separator::after {\n display: none !important;\n content: none !important;\n border: none !important;\n}\n\n/* Same treatment for the increment/decrement arrow buttons — no\n border/box-shadow/focus outline so the time-picker column doesn't\n get sub-lines between each button. */\n.bootstrap-datetimepicker-widget .timepicker-picker .btn {\n background-color: var(--box-bg) !important;\n border: none !important;\n box-shadow: none !important;\n outline: none !important;\n}\n\n.bootstrap-datetimepicker-widget .timepicker-picker .btn:focus,\n.bootstrap-datetimepicker-widget .timepicker-picker .btn:active {\n outline: none !important;\n box-shadow: none !important;\n}\n\n\n/* Button hover — matches the whole <a> element */\n.bootstrap-datetimepicker-widget li.picker-switch a[data-action]:hover,\n.bootstrap-datetimepicker-widget li.picker-switch td:hover {\n background-color: transparent !important;\n border-radius: 0 !important;\n\n}\n\n\n.input-group-addon {\n background-color: var(--input-group-bg) !important;\n color: var(--input-group-fg) !important;\n border-color: var(--input-border-color) !important;\n}\n\ninput:disabled,\ninput[type=\"checkbox\"]:disabled,\ninput[type=\"radio\"]:disabled,\ninput[readonly],\ntextarea[readonly],\ntextarea:disabled,\n.select2-container--default.select2-container--disabled .select2-selection--single,\n.select2-container--default.select2-container--disabled .select2-selection--multiple,\n.select2-container--default.select2-container--disabled .select2-selection__rendered,\n.select2-results__option[aria-disabled=true],\n.select2-container--default.select2-container--disabled .select2-selection--multiple .select2-search--inline {\n background-color: ~\"light-dark(rgb(234, 232, 232), rgb(117, 116, 117))\" !important;\n cursor: not-allowed !important;\n}\n\n.select2-container--default.select2-container--disabled .select2-search__field::placeholder {\n color: var(--text-help) !important;\n opacity: 1 !important;\n}\n\ninput[type=\"search\"].search-highlight {\n background-color: var(--search-highlight);\n border: ~\"1px solid hsl(from var(--search-highlight) h s calc(l - 20))\" !important;\n}\n\n.content-wrapper {\n background-color: var(--color-bg);\n}\n\n.btn-anchor {\n outline: none !important;\n padding: 0;\n border: 0;\n padding-left: 20px;\n vertical-align: baseline;\n cursor: pointer;\n}\n\nh1,\nh2,\nh3,\nh4,\np,\n.modal-title,\n.modal-header h2 {\n color: var(--color-fg) !important;\n}\n\n.btn-danger,\n.btn-danger:hover,\n.btn-danger:focus,\n.btn-warning,\n.btn-warning:hover,\n.btn-warning:focus,\n.btn-primary,\n.btn-primary:hover,\n.btn-primary:focus,\n.modal-danger,\n.modal-danger h2,\n.modal-warning h2,\n.modal-danger h4,\n.modal-warning h4,\n.box-solid.box-danger > .box-header,\n.box-solid.box-danger > .box-header .box-title,\n.bg-maroon,\n.bg-maroon:hover,\n.bg-maroon:focus,\n.bg-purple,\n.bg-purple:hover,\n.bg-purple:focus {\n color: white !important;\n}\n\n\n.btn-selected,\n.btn-selected a,\n.btn-selected:hover,\n.btn-selected:focus {\n color: ~\"light-dark(hsl(from var(--main-theme-color) h s calc(l + 30)), hsl(from var(--main-theme-color) h s calc(l + 30)))\" !important;\n background-color: ~\"light-dark(hsl(from var(--main-theme-color) h s calc(l - 20)), hsl(from var(--main-theme-color) h s calc(l - 20)))\" !important;\n border-color: ~\"light-dark(hsl(from var(--main-theme-color) h s calc(l - 25)), hsl(from var(--main-theme-color) h s calc(l - 25)))\" !important;\n\n}\n\n.btn-default,\n.btn-default:hover {\n color: #3d4144 !important;\n}\n\nbody {\n background-color: var(--color-bg);\n color: var(--color-fg);\n}\n\n\nlabel,\n.icon-med,\n.nav-tabs-custom > .nav-tabs > li > a,\n.nav-tabs-custom > .nav-tabs > li.active > a:link {\n color: var(--color-fg);\n}\n\n/**\nGeneric popover: Bootstrap 3 hardcodes body bg to #fff and text to #333,\nwhich reads as white-on-white in dark mode. Route background, text, and\nborder through the theme variables so both modes render legibly and the\nhelp-popover variant keeps its more specific styling further down.\n */\n.popover {\n background-color: var(--box-bg) !important;\n color: var(--color-fg) !important;\n border-color: var(--box-header-top-border-color) !important;\n}\n\n.popover-title,\n.popover-content {\n background-color: var(--box-bg) !important;\n color: var(--color-fg) !important;\n}\n\n/**\nPopover arrows: Bootstrap 3 defaults the inner arrow to #fff and the\nouter to rgba(0,0,0,.25). In dark mode the outer disappears entirely\n(no contrast against the darker surroundings) and the inner reads as a\nwhite notch. Bind both to theme vars so every position (top / right /\nbottom / left) shows a visible connector between the popover body and\nits trigger in both modes.\n */\n.popover.top .arrow { border-top-color: var(--box-header-top-border-color) !important; }\n.popover.top .arrow:after { border-top-color: var(--box-bg) !important; }\n\n.popover.right .arrow { border-right-color: var(--box-header-top-border-color) !important; }\n.popover.right .arrow:after { border-right-color: var(--box-bg) !important; }\n\n.popover.bottom .arrow { border-bottom-color: var(--box-header-top-border-color) !important; }\n.popover.bottom .arrow:after { border-bottom-color: var(--box-bg) !important; }\n\n.popover.left .arrow { border-left-color: var(--box-header-top-border-color) !important; }\n.popover.left .arrow:after { border-left-color: var(--box-bg) !important; }\n\n.table-bordered > tbody > tr > td,\n.table-bordered > tbody > tr > th,\n.table-bordered > tfoot > tr > td,\n.table-bordered > tfoot > tr > th,\n.table-bordered > thead > tr > td,\n.table-bordered > thead > tr > td,\n.table-bordered > thead > tr > th,\n.table-bordered > thead > tr > th,\n.table-bordered,\n.well {\n border: 1px solid var(--box-header-top-border-color) !important;\n border-left-color: var(--box-header-top-border-color) !important;\n border-right-color: var(--box-header-top-border-color) !important;\n}\n\n.box {\n border-top: 3px solid;\n}\n\n/* .bs-wizard's connecting line background (.progress = #f5f5f5) and\n inactive-step dots (#f5f5f5) both wash out against the dark-mode\n body. Bump to the theme's mid-gray so wizard steps stay visible\n on setup, importer modal, and the LDAP settings wizard. Selector\n uses [data-theme=\"dark\"] — the actual attribute Snipe-IT toggles\n for dark mode. Disabled variant is called out explicitly because\n .bs-wizard-step.disabled > .bs-wizard-dot is a same-specificity\n rule from AdminLTE — the extra .disabled class ensures we win. */\n[data-theme=\"dark\"] .bs-wizard-step .progress,\n[data-theme=\"dark\"] .bs-wizard-step > .bs-wizard-dot,\n[data-theme=\"dark\"] .bs-wizard-step.disabled > .bs-wizard-dot {\n background-color: #605e5e;\n}\n\n.box.box-default {\n border-top: var(--box-header-top-border);\n}\n\n\n.box-header.with-border {\n border-bottom: var(--box-header-bottom-border);\n}\n\n.box-footer {\n border-top: var(--box-header-bottom-border);\n}\n\n\n.nav-tabs-custom > .nav-tabs {\n border-bottom: var(--tab-bottom-border);\n border-top-right-radius: 3px;\n border-top-left-radius: 3px;\n padding-bottom: 0;\n\n}\n\n.nav-tabs > li > a {\n margin-right: 0;\n border: 0;\n}\n\n.box,\n.box-footer,\n.tab-content,\n.nav-tabs-custom,\n.nav-tabs-custom > .nav-tabs > li,\n.nav-tabs-custom > .nav-tabs > li:first-of-type,\n.nav-tabs-custom > .nav-tabs > li.active > a:link,\n.nav-tabs-custom > .nav-tabs > li.active > a:visited,\n.nav-tabs-custom > .nav-tabs > li.active > a:hover,\n.bootstrap-table.fullscreen,\n.well {\n\n color: var(--color-fg);\n background-color: var(--box-bg) !important;\n border-left: 1px solid transparent;\n border-right: 1px solid transparent;\n\n}\n\n.panel {\n border-color: var(--box-header-top-border-color);\n}\n\n.panel-body {\n background-color: var(--box-bg) !important;\n}\n\n.panel-heading,\n.panel-default > .panel-heading {\n color: var(--color-fg) !important;\n background-color: var(--table-stripe-bg-alt) !important;\n border-color: var(--box-header-top-border-color);\n}\n\n.panel-footer {\n background-color: var(--box-bg) !important;\n border-color: var(--box-header-top-border-color);\n}\n\n.nav-tabs-custom > .nav-tabs > li.active {\n border-top-color: var(--main-theme-color) !important;\n background-color: var(--box-header-top-border-color) !important;\n border-bottom: 2px solid var(--box-bg) !important;\n border-right: 1px solid var(--box-header-top-border-color);\n border-top-right-radius: 3px;\n border-top-left-radius: 3px;\n}\n\n.nav-tabs-custom > .nav-tabs > li:first-of-type {\n border-left: 0;\n}\n\n\n/**\nThis fixes the weird spacing in the nav tabs if there is a badge count on the tab\n */\n.badge {\n font-size: 11px;\n}\n\n/**\ntable rows\n */\n\n.table > thead > tr > th,\n.table > tbody > tr > th,\n.table > tfoot > tr > th,\n.table > thead > tr > td,\n.table > tbody > tr > td,\n.table > tfoot > tr > td {\n border-top: var(--table-border-row) !important;\n}\n\n\n.table-striped > tbody > tr:nth-of-type(even),\n.row-new-striped > .row:nth-of-type(even),\n.row-new-striped > .div:nth-of-type(odd),\n.cansort {\n background-color: var(--table-stripe-bg) !important;\n border-top: var(--table-border-row-top) !important;\n color: var(--color-fg) !important;\n}\n\n.table-striped > tbody > tr:nth-of-type(odd),\n.row-new-striped > .row:nth-of-type(even),\n.row-new-striped > .div:nth-of-type(odd),\n.cansort {\n background-color: var(--table-stripe-bg-alt) !important;\n border-top: var(--table-border-row-top) !important;\n color: var(--color-fg) !important;\n}\n\n\n// -----------------------------------------------------------------------------\n// CSS sticky columns. Bootstrap-table's fixed-columns feature was pulled\n// from the bundle in favor of this — the old feature cloned the table\n// body into an absolutely-positioned overlay, which drifted in height\n// with long-content rows (#19197, #19458) and misplaced tooltips when\n// the container reflowed without a window resize (asset show + info\n// panel toggle). CSS position:sticky on the actual <td> cells can't\n// drift because the cells ARE the pinned cells.\n//\n// Tables that want pinned columns get the snipe-table--sticky-right-N\n// or snipe-table--sticky-left-N class (via <x-table>'s fixed_number /\n// fixed_right_number props, or applied directly on a raw table).\n//\n// Body cells match the zebra background so the sticky column keeps the\n// alternating pattern. Header cells use --box-bg so scrolling body rows\n// don't show through above the header stripe transition. Header z-index\n// sits above body sticky so a scrolled row can't render over the header.\n// -----------------------------------------------------------------------------\n\n// --table-stripe-bg-alt is intentionally translucent (rgba .25) so the\n// zebra stripe composites on top of the row's --box-bg. That works for\n// normal rows but leaves sticky cells see-through because scrolled\n// content passes UNDER them with no opaque backer. For sticky cells we\n// paint --box-bg as an opaque base and layer the (still-translucent)\n// stripe on top via linear-gradient, replicating the composited color.\n\n// Per-position offset variables (--sticky-right-offset-P, --sticky-left-offset-P)\n// are set by the JS block in partials/bootstrap-table.blade.php after every\n// render. Position 1 is the outermost pinned column and gets offset 0; each\n// subsequent position adds the outerWidth of the previous columns so pinned\n// cells sit flush against each other instead of stacking at the edge.\n\n// Position-specific sticky rules. Recurses from @pos=1 up to @maxN.\n.gen-sticky-right(@maxN, @pos: 1) when (@pos <= @maxN) {\n .snipe-table--sticky-right-@{maxN} > thead > tr > th:nth-last-child(@{pos}),\n .snipe-table--sticky-right-@{maxN} > tbody > tr > td:nth-last-child(@{pos}) {\n position: sticky;\n right: var(~\"--sticky-right-offset-@{pos}\", 0);\n z-index: 2;\n background-color: var(--box-bg);\n }\n .gen-sticky-right(@maxN, (@pos + 1));\n}\n.gen-sticky-right(1);\n.gen-sticky-right(2);\n.gen-sticky-right(3);\n.gen-sticky-right(4);\n.gen-sticky-right(5);\n\n.gen-sticky-left(@maxN, @pos: 1) when (@pos <= @maxN) {\n .snipe-table--sticky-left-@{maxN} > thead > tr > th:nth-child(@{pos}),\n .snipe-table--sticky-left-@{maxN} > tbody > tr > td:nth-child(@{pos}) {\n position: sticky;\n left: var(~\"--sticky-left-offset-@{pos}\", 0);\n z-index: 2;\n background-color: var(--box-bg);\n }\n .gen-sticky-left(@maxN, (@pos + 1));\n}\n.gen-sticky-left(1);\n.gen-sticky-left(2);\n.gen-sticky-left(3);\n.gen-sticky-left(4);\n.gen-sticky-left(5);\n\n// Shared: header z-index bump and zebra-stripe overlay for all pinned columns.\n.gen-sticky-right-shared(@maxN) {\n .snipe-table--sticky-right-@{maxN} > thead > tr > th:nth-last-child(-n+@{maxN}) {\n z-index: 3;\n }\n .snipe-table--sticky-right-@{maxN}.table-striped > tbody > tr:nth-of-type(even) > td:nth-last-child(-n+@{maxN}) {\n background-image: linear-gradient(var(--table-stripe-bg), var(--table-stripe-bg));\n }\n .snipe-table--sticky-right-@{maxN}.table-striped > tbody > tr:nth-of-type(odd) > td:nth-last-child(-n+@{maxN}) {\n background-image: linear-gradient(var(--table-stripe-bg-alt), var(--table-stripe-bg-alt));\n }\n}\n.gen-sticky-right-shared(1);\n.gen-sticky-right-shared(2);\n.gen-sticky-right-shared(3);\n.gen-sticky-right-shared(4);\n.gen-sticky-right-shared(5);\n\n.gen-sticky-left-shared(@maxN) {\n .snipe-table--sticky-left-@{maxN} > thead > tr > th:nth-child(-n+@{maxN}) {\n z-index: 3;\n }\n .snipe-table--sticky-left-@{maxN}.table-striped > tbody > tr:nth-of-type(even) > td:nth-child(-n+@{maxN}) {\n background-image: linear-gradient(var(--table-stripe-bg), var(--table-stripe-bg));\n }\n .snipe-table--sticky-left-@{maxN}.table-striped > tbody > tr:nth-of-type(odd) > td:nth-child(-n+@{maxN}) {\n background-image: linear-gradient(var(--table-stripe-bg-alt), var(--table-stripe-bg-alt));\n }\n}\n.gen-sticky-left-shared(1);\n.gen-sticky-left-shared(2);\n.gen-sticky-left-shared(3);\n.gen-sticky-left-shared(4);\n.gen-sticky-left-shared(5);\n\n// Row-state overrides. Bootstrap-table adds `.selected` on click / checkbox\n// tick (see line ~2889 for the base rule), and Snipe-IT paints `.success`\n// and `.danger` rows for the audit / restore flows. Without these\n// overrides, the sticky columns keep their zebra background painted on top\n// of the row-selected color and read as unselected even when the rest of\n// the row is highlighted. Overriding both background-color AND\n// background-image (to clear the linear-gradient stripe overlay from the\n// -shared mixins) so the sticky cells pick up the row's highlight state.\n.gen-sticky-right-row-state(@maxN) {\n .snipe-table--sticky-right-@{maxN} > tbody > tr.selected > td:nth-last-child(-n+@{maxN}) {\n background-color: ~\"light-dark(hsl(from var(--main-theme-color) h s calc(l + 40)),hsl(from var(--main-theme-color) h s calc(l - 40)))\" !important;\n background-image: none !important;\n }\n .snipe-table--sticky-right-@{maxN} > tbody > tr.success > td:nth-last-child(-n+@{maxN}) {\n background-color: #00a65a !important;\n background-image: none !important;\n color: white !important;\n }\n .snipe-table--sticky-right-@{maxN} > tbody > tr.danger > td:nth-last-child(-n+@{maxN}) {\n background-color: var(--text-danger) !important;\n background-image: none !important;\n color: white !important;\n }\n}\n.gen-sticky-right-row-state(1);\n.gen-sticky-right-row-state(2);\n.gen-sticky-right-row-state(3);\n.gen-sticky-right-row-state(4);\n.gen-sticky-right-row-state(5);\n\n.gen-sticky-left-row-state(@maxN) {\n .snipe-table--sticky-left-@{maxN} > tbody > tr.selected > td:nth-child(-n+@{maxN}) {\n background-color: ~\"light-dark(hsl(from var(--main-theme-color) h s calc(l + 40)),hsl(from var(--main-theme-color) h s calc(l - 40)))\" !important;\n background-image: none !important;\n }\n .snipe-table--sticky-left-@{maxN} > tbody > tr.success > td:nth-child(-n+@{maxN}) {\n background-color: #00a65a !important;\n background-image: none !important;\n color: white !important;\n }\n .snipe-table--sticky-left-@{maxN} > tbody > tr.danger > td:nth-child(-n+@{maxN}) {\n background-color: var(--text-danger) !important;\n background-image: none !important;\n color: white !important;\n }\n}\n.gen-sticky-left-row-state(1);\n.gen-sticky-left-row-state(2);\n.gen-sticky-left-row-state(3);\n.gen-sticky-left-row-state(4);\n.gen-sticky-left-row-state(5);\n\n\n// -----------------------------------------------------------------------------\n// Checkbox column: bootstrap-table adds .bs-checkbox to the header and body\n// cells of any checkbox column. It should always be pinned to the left edge\n// regardless of what fixed_number the table sets, because the row-selection\n// affordance is expected to stay visible while the user scrolls horizontally\n// to review other columns before deciding what to check.\n// -----------------------------------------------------------------------------\n\n.snipe-table > thead > tr > th.bs-checkbox,\n.snipe-table > tbody > tr > td.bs-checkbox {\n position: sticky;\n left: 0;\n z-index: 2;\n background-color: var(--box-bg);\n}\n\n.snipe-table.table-striped > tbody > tr:nth-of-type(even) > td.bs-checkbox {\n background-image: linear-gradient(var(--table-stripe-bg), var(--table-stripe-bg));\n}\n.snipe-table.table-striped > tbody > tr:nth-of-type(odd) > td.bs-checkbox {\n background-image: linear-gradient(var(--table-stripe-bg-alt), var(--table-stripe-bg-alt));\n}\n\n.snipe-table > thead > tr > th.bs-checkbox {\n z-index: 3;\n}\n\n// Row-state overrides for the pinned checkbox column. Same reasoning as\n// the .gen-sticky-*-row-state mixins above: the opaque background baked\n// into the sticky cell would otherwise mask row-selected / .success /\n// .danger highlights on the checkbox column, which is exactly the column\n// users click to toggle the selection state, so the mismatch is most\n// visible there.\n.snipe-table > tbody > tr.selected > td.bs-checkbox {\n background-color: ~\"light-dark(hsl(from var(--main-theme-color) h s calc(l + 40)),hsl(from var(--main-theme-color) h s calc(l - 40)))\" !important;\n background-image: none !important;\n}\n.snipe-table > tbody > tr.success > td.bs-checkbox {\n background-color: #00a65a !important;\n background-image: none !important;\n color: white !important;\n}\n.snipe-table > tbody > tr.danger > td.bs-checkbox {\n background-color: var(--text-danger) !important;\n background-image: none !important;\n color: white !important;\n}\n\n\n// -----------------------------------------------------------------------------\n// Top scrollbar: mirrored above the bootstrap-table body so users on wide\n// tables don't have to scroll to the bottom to find the horizontal\n// scrollbar. Managed by updateTopScrollbar() in partials/bootstrap-table.\n// The wrapper node only exists when the table actually overflows\n// horizontally, so tables that fit in their container don't get any\n// extra chrome.\n// -----------------------------------------------------------------------------\n\n.snipe-top-scrollbar {\n // scroll (not auto) so the scrollbar thumb stays visible whenever\n // the container is displayed. auto lets macOS's trackpad-scrollbar\n // auto-hide take over on trackpad users even with the WebKit\n // pseudo-element styling below, which read as \"top scrollbar fades\n // faster than the bottom one\" (#19484 follow-up). Whole container\n // gets display: none from updateTopScrollbar() when the underlying\n // table doesn't actually overflow, so persistent scroll doesn't\n // produce a floating stub on tables that fit in the viewport.\n overflow-x: scroll;\n overflow-y: hidden;\n // 14px scrollbar sized to match the WebKit thumb below so it\n // reads as a deliberate chrome element rather than an OS-native\n // accident. Bumped from 10px so the thumb is easier to grab and\n // drag on trackpads / small screens.\n //\n // Outer height is 18px (border-box) = 14px scrollbar content +\n // 4px padding-bottom acting as a visual spacer between the\n // scrollbar thumb and the thead below it. Total 18px matches\n // the stickyHeaderOffsetY: 18 in bootstrap-table.blade.php so\n // the pinned scrollbar band + the sticky-clone thead just below\n // it stack seamlessly with no bleed-through gap between them\n // (#19484 follow-up: 4px gap of tbody rows visible between the\n // scrollbar and the sticky thead).\n box-sizing: border-box;\n height: 18px;\n padding-bottom: 4px;\n background-color: var(--box-bg);\n // Firefox scrollbar styling — spec-standard. `auto` uses the\n // OS-default thickness (matches the bumped-up 14px WebKit height\n // below so the thumb is easy to grab on trackpads / small screens).\n scrollbar-width: auto;\n scrollbar-color: rgba(0, 0, 0, 0.35) rgba(0, 0, 0, 0.06);\n\n // Stay visible while the user scrolls the page down past the\n // natural table header. Bootstrap-table's own stickyHeader\n // (position: fixed via the .fix-sticky class) floats the thead\n // clone at viewport top; we mirror that positioning via JS\n // (updateTopScrollbarSticky in bootstrap-table.blade.php) so\n // the scrollbar sits ABOVE the sticky-clone thead - matching\n // the natural (unscrolled) order where the scrollbar reads\n // immediately above the thead. Bootstrap-table config pushes\n // .fix-sticky down by (this mirror's height + padding-bottom)\n // via stickyHeaderOffsetY so the two don't overlap. Sticky\n // positioning would have been simpler than the JS toggle but\n // didn't engage reliably against page scroll from inside the\n // .bootstrap-table nesting depth; falling back to position:\n // fixed set by the scroll listener. Reported in #19484 as\n // \"none of scrollbars are visible when list is scrolled to\n // the point where header starts floating\" plus follow-up\n // \"top scrollbar used to be above the table headers, which\n // seems a little better\".\n z-index: 101;\n\n // When the scroll listener detects the natural position has\n // gone above viewport top, this class flips the element to\n // position: fixed via inline style. The class itself just\n // marks \"currently pinned\" so callers can style pinned vs\n // unpinned states differently if needed.\n &.is-pinned {\n // Inline top/left/width comes from JS. Keeping the box\n // shadow drop off here so pinned state visually separates\n // the mirror from the sticky-clone thead below it.\n box-shadow: 0 1px 0 rgba(0, 0, 0, 0.06);\n }\n\n // WebKit / Blink scrollbar pseudo-elements. Both the track and the\n // thumb get border-radius so the container reads as rounded even\n // when the thumb is at the edge of the track (the previous\n // container-level border-radius was invisible because the container\n // had no visible background to round). Track carries a subtle tint\n // so the rounded shape is actually visible rather than shape-of-nothing.\n &::-webkit-scrollbar {\n height: 14px;\n }\n &::-webkit-scrollbar-track {\n background-color: rgba(0, 0, 0, 0.06);\n border-radius: 7px;\n }\n &::-webkit-scrollbar-thumb {\n background-color: rgba(0, 0, 0, 0.35);\n border-radius: 7px;\n }\n &::-webkit-scrollbar-thumb:hover {\n background-color: rgba(0, 0, 0, 0.5);\n }\n}\n\n.snipe-top-scrollbar-inner {\n // Height just enough to make the parent scrollable; width is set by\n // JS to match the underlying table's scrollWidth.\n height: 1px;\n}\n\n// Match the native bottom scrollbar on the table body to the styled\n// top mirror above so the two horizontal scroll handles read as a\n// consistent pair. Without this, the top uses our thin-with-rounded-\n// thumb chrome while the bottom uses the OS default and the two look\n// mismatched when both are visible on wide tables. scrollbar-width\n// bumped from `thin` to `auto` and the WebKit height matched to the\n// top mirror's 14px so the two scrollbars are the same easy-to-grab\n// size on trackpads / small screens (#19484 follow-up).\n.bootstrap-table .fixed-table-body {\n scrollbar-width: auto;\n scrollbar-color: rgba(0, 0, 0, 0.35) rgba(0, 0, 0, 0.06);\n\n &::-webkit-scrollbar {\n height: 14px;\n }\n &::-webkit-scrollbar-track {\n background-color: rgba(0, 0, 0, 0.06);\n border-radius: 7px;\n }\n &::-webkit-scrollbar-thumb {\n background-color: rgba(0, 0, 0, 0.35);\n border-radius: 7px;\n }\n &::-webkit-scrollbar-thumb:hover {\n background-color: rgba(0, 0, 0, 0.5);\n }\n}\n\n\n/**\nmain header nav\n */\n\n\n.dropdown-menu {\n background-color: var(--main-theme-color);\n border-color: var(--main-theme-color);\n}\n\n\n.dropdown-menu > li,\n.navbar,\n.navbar-nav,\n.label-default,\n.label-default:hover {\n background-color: var(--main-theme-color);\n color: var(--nav-primary-text-color) !important;\n}\n\n.label-light {\n background-color: var(--default-label-link-bg) !important;\n color: var(--color-fg) !important;\n font-size: 12px !important;\n font-weight: normal !important;\n line-height: 25px;\n margin-left: 0px;\n padding-left: 3px;\n\n}\n\na.label-light,\na.label-light:hover {\n color: var(--link-color) !important;\n}\n\n.dropdown-menu > li > a,\n.dropdown-menu > li > a:link,\n.dropdown-menu > li > a:visited,\n.dropdown-menu > .active > a:link,\n.dropdown-menu > .active > a:visited,\n.navbar-nav .open > a:link,\n.navbar-nav .open > a:visited,\n.navbar-nav > li > a:link,\n.navbar-nav > li > a:visited {\n background-color: var(--main-theme-color) !important;\n /*background-color: rgba(0,0,0,.15);*/\n color: var(--nav-primary-text-color) !important;\n /*color: var(--nav-primary-text-color) !important;*/\n\n}\n\n.btn-tableButton.active.focus,\n.btn-tableButton.active:focus,\n.btn-tableButton.active:hover,\n.dropdown-menu > .active > a:focus,\n.dropdown-menu > .active > a:hover,\n.dropdown-menu > .active > a:link,\n.dropdown-menu > .active > a:visited,\n.dropdown-menu > li > a:focus,\n.dropdown-menu > li > a:hover,\n.dropdown-menu > li:focus,\n.dropdown-menu > li:hover,\n.navbar-nav .open li.active > a:focus,\n.navbar-nav .open li.active > a:hover,\n.navbar-nav .open > a:focus,\n.navbar-nav .open > a:hover,\n.navbar-nav > li > a:focus,\n.navbar-nav > li > a:hover,\n.open > .dropdown-toggle.btn-tableButton:focus,\n.open > .dropdown-toggle.btn-tableButton:hover,\n.page-next a,\n.pagination > .active > a:hover,\n.page-item.active,\n.pagination > .active > a,\n.pagination > li > .active > a,\n.pagination > li > .active > a:hover,\n.pagination > li > a:hover {\n background-color: var(--main-theme-hover) !important;\n border-color: var(--btn-theme-hover) !important;\n color: var(--nav-primary-text-color) !important;\n}\n\n.pagination > li > a {\n background-color: var(--main-theme-color) !important;\n border-color: var(--btn-theme-hover) !important;\n color: var(--nav-primary-text-color) !important;\n}\n\n\n.bootstrap-table .fixed-table-toolbar li.dropdown-item-marker label {\n color: var(--nav-primary-text-color) !important;\n}\n\n.bootstrap-table .fixed-table-toolbar li.dropdown-item-marker label:hover {\n background-color: var(--main-theme-hover) !important;\n color: var(--nav-primary-text-color) !important;\n}\n\n\n.dropdown-menu,\n.dropdown-menu > li {\n background-color: ~\"hsl(from var(--main-theme-color) h s calc(l - 5))\";\n border-color: ~\"hsl(from var(--main-theme-color) h s calc(l - 10))\";\n color: var(--nav-primary-text-color) !important;\n}\n\n.main-header .navbar .nav > .active > a {\n background-color: ~\"hsl(from var(--main-theme-color) h s calc(l - 5))\" !important;\n color: var(--nav-primary-text-color) !important;\n}\n\n.navbar-nav > .notifications-menu > .dropdown-menu > li.header,\n.navbar-nav > .messages-menu > .dropdown-menu > li.header,\n.navbar-nav > .tasks-menu > .dropdown-menu > li.header,\n.navbar-nav > .notifications-menu > .dropdown-menu > li .menu,\n.navbar-nav > .messages-menu > .dropdown-menu > li .menu, .navbar-nav > .tasks-menu > .dropdown-menu > li .menu,\n.navbar-nav > .messages-menu > .dropdown-menu > li .menu, .navbar-nav > .tasks-menu > .dropdown-menu > li .menu a:hover,\n.navbar-nav > .messages-menu > .dropdown-menu > li .menu, .navbar-nav > .tasks-menu > .dropdown-menu > li:hover,\n.navbar-nav > .tasks-menu > .dropdown-menu > li .menu > li:hover > a,\n.task_menu {\n background-color: ~\"hsl(from var(--main-theme-color) h s calc(l - 5))\" !important;\n color: var(--nav-primary-text-color) !important;\n margin-bottom: 0;\n}\n\n.navbar-nav > .notifications-menu > .dropdown-menu > li .menu > li > a, .navbar-nav > .messages-menu > .dropdown-menu > li .menu > li > a, .navbar-nav > .tasks-menu > .dropdown-menu > li .menu > li > a {\n border-bottom: ~\"1px solid hsl(from var(--main-theme-color) h s calc(l - 10))\";\n}\n\n\n/**\nActive and hover for top tier sidenav items\n */\n\n.main-sidebar {\n background-color: #1e282c;\n}\n\n// Shift .main-header's BOX (not just its inner .navbar) so the header\n// occupies only the horizontal space past the sidebar's column. Base\n// AdminLTE 2 leaves .main-header full-width and only offsets the\n// .navbar's contents via margin-left: 230px, which fixes visual\n// alignment but not click alignment: the header's own <div> (z-index\n// 1030) still extends across the sidebar column above the sidebar\n// (z-index 810), so at intermediate widths where the navbar wraps to\n// two or three rows the header's empty second/third-row area sits on\n// top of the first sidebar item and eats clicks. Reported repeatedly\n// on the tracker (#19482, #11868, #5085) and previously papered over\n// with hardcoded .sidebar-menu { margin-top: Npx } offsets at\n// specific breakpoints - since removed above in favor of this\n// structural fix.\n//\n// Shift values track the sidebar's rendered width per body class:\n// - default (.sidebar-mini, sidebar open): 230px\n// - .sidebar-mini.sidebar-collapse (menu closed, mini icons): 50px\n// - mobile (<=767px): 0 (sidebar is translated off-screen)\n//\n// The navbar's own margin-left is zeroed at each state so the navbar\n// content doesn't get double-shifted after the header itself moves.\n// Transition on .main-header matches the navbar's existing 0.3s\n// margin-left transition so the header and its content animate\n// together when the sidebar toggles.\n@media (min-width: 768px) {\n .main-header {\n margin-left: 230px;\n transition: margin-left 0.3s ease-in-out;\n }\n .main-header .navbar {\n margin-left: 0;\n }\n .sidebar-mini.sidebar-collapse .main-header {\n margin-left: 50px;\n }\n // AdminLTE has a higher-specificity rule at min-width: 768px:\n // .sidebar-mini.sidebar-collapse .main-header .navbar { margin-left: 50px }\n // that overrides our plain .main-header .navbar reset above. Without\n // matching its specificity here, the mini-collapsed state ends up\n // double-shifting the navbar (header shifted 50px + navbar shifted\n // 50px = navbar starts at x=100). That pushed the .sidebar-toggle\n // hamburger past the sidebar column and into the header instead of\n // sitting over the mini-icon column at the top-left (where its\n // -48px margin-left is designed to place it).\n .sidebar-mini.sidebar-collapse .main-header .navbar {\n margin-left: 0;\n }\n}\n\n\n.sidebar-menu > li.active > a,\n.sidebar-menu > li:hover > a,\n.treeview-menu > li > a {\n color: var(--sidenav-text-hover-color) !important;\n border-left-color: var(--main-theme-color);\n}\n\n.sidebar-menu > li:hover > a,\n.sidebar-menu > li.active > a {\n border-left-color: var(--main-theme-color);\n padding-left: 12px;\n}\n\n\n.sidebar-menu > li:hover {\n background-color: #2c3b41;\n}\n\n.sidebar-menu > li > .treeview-menu {\n background-color: #1e282c;\n}\n\n\n.list-group-item:first-child {\n border-top: 0 !important;\n}\n\n.sidebar-menu > li > a:link,\n.sidebar-menu > li > a:visited,\n.treeview-menu > li > a {\n color: var(--sidenav-text-nohover-color) !important;\n}\n\n.sidebar-menu > li.active > a,\n.sidebar-menu > li:hover > a {\n background-color: #1e282c;\n border-left-color: var(--main-theme-color);\n border-left-style: solid;\n border-left-width: 3px;\n color: var(--sidenav-text-hover-color) !important;\n}\n\nthead,\ntbody,\n.table > thead > tr > th,\n.table > tbody > tr > th,\n.table > tfoot > tr > th,\n.table > thead > tr > td,\n.table > tbody > tr > td,\n.table > tfoot > tr > td {\n border-top-color: var(--box-bg) !important;\n border-bottom-color: var(--box-header-bottom-border-color) !important;\n color: var(--color-fg);\n}\n\n\n.help-block {\n color: var(--text-help) !important;\n}\n\n.alert-msg,\n.has-error {\n color: var(--text-danger) !important;\n}\n\n.has-error .form-control {\n border-color: var(--text-danger);\n}\n\n.alert a,\n.callout.callout-warning,\n.callout.callout-danger,\n.callout.callout-success,\n.callout.callout-info,\n.alert.alert-warning,\n.alert.alert-danger,\n.alert.alert-info,\n.alert.alert-success,\n.alert.alert-warning {\n color: white !important;\n}\n\n// The colored alerts have fixed-color backgrounds (red / blue / green\n// / orange) that read well against white text regardless of theme\n// mode. However the global \"h1..h4, p { color: var(--color-fg) }\" rule\n// further down this file has enough specificity to override the\n// alert's own color on any heading or paragraph inside, flipping the\n// text to black in light mode and white in dark mode — illegible\n// against the colored bg in light. Force inheritance so headings and\n// paragraphs inside these alerts always pick up the alert's white.\n.alert.alert-danger,\n.alert.alert-info,\n.alert.alert-success,\n.alert.alert-warning {\n h1, h2, h3, h4, p {\n color: inherit !important;\n }\n}\n\n\n.text-dark-gray a:link,\n.text-dark-gray a:hover,\n.text-dark-gray a:visited,\n.text-dark-gray a:focus {\n color: ~\"hsl(from var(--main-theme-color) h s calc(l - 5))\";\n}\n\n.text-warning {\n color: var(--text-warning) !important;\n}\n\n.text-info {\n color: var(--text-info) !important;\n}\n\n.text-primary {\n color: var(--main-theme-color) !important;\n}\n\n.text-danger {\n color: var(--text-danger) !important;\n}\n\n.text-success {\n color: var(--text-success) !important;\n}\n\n.dropdown-menu > .divider {\n background-color: ~\"hsl(from var(--main-theme-color) h s calc(l - 10))\";\n margin-top: 0;\n margin-bottom: 0;\n padding-top: 1px;\n\n}\n\ninput[type=\"radio\"]::before {\n box-shadow: ~\"inset 1em 1em hsl(from var(--main-theme-color) h s calc(l - 20))\" !important;\n}\n\n\ninput[type=\"checkbox\"]::before {\n box-shadow: ~\"inset 1em 1em hsl(from var(--main-theme-color) h s calc(l - 20))\" !important;\n}\n\n\n.callout.callout-legend {\n background-color: var(--callout-bg-color);\n border-left: 5px solid var(--callout-left-border);\n\n}\n\n.callout-legend h4 a,\n.callout-legend h4 a:hover {\n color: var(--color-fg) !important;\n}\n\n\np.callout-subtext, p.callout-subtext a:hover, p.callout-subtext a:visited, p.callout-subtext a:link {\n color: var(--text-legend-help) !important;\n text-decoration: none;\n}\n\n\nlegend {\n border-bottom: 1px solid var(--callout-left-border);\n}\n\nth,\n.fix-sticky table thead {\n background-color: var(--box-bg);\n color: var(--color-fg) !important;\n}\n\n\n.logo:hover {\n background-color: var(--main-theme-color) !important;\n color: var(--nav-primary-text-color) !important;\n}\n\n.modal-content,\n.popover.help-popover,\n.popover.help-popover .popover-content,\n.popover.help-popover .popover-body,\n.popover.help-popover .popover-title,\n.popover.help-popover .popover-header {\n background-color: var(--box-bg) !important;\n /*color: var(--color-fg) !important;*/\n color: var(--color-fg) !important;\n}\n\n.treeview-menu > li {\n background-color: #2c3b41;\n color: var(--sidenav-text-nohover-color) !important;\n}\n\n.treeview-menu > li > a:hover,\n.treeview-menu > li:hover,\n.treeview-menu > li.active > a {\n color: white !important;\n background-color: var(--sidenav-hover-color-bg) !important;\n}\n\n.sidebar-toggle.btn,\n.sidebar-toggle.btn:hover {\n color: white !important;\n}\n\n.chart-responsive {\n color: var(--color-fg) !important;\n}\n\n.table > tbody + tbody {\n border-top: 0 !important;\n}\n\nh4#progress-text {\n color: white !important;\n}\n\n.small-box h3, .small-box p {\n color: white !important;\n}\n\n.box.box-theme {\n border-top: var(--main-theme-color) !important;\n}\n\ninput[type=\"date\"]:focus,\ninput[type=\"number\"]:focus,\ninput[type=\"text\"]:focus,\ninput[type=\"url\"]:focus,\ninput[type=\"email\"]:focus,\ninput[type=\"password\"]:focus,\ninput[type=\"tel\"]:focus,\ntextarea:focus {\n border-color: ~\"hsl(from var(--main-theme-color) h s calc(l - 5))\" !important;\n}\n\ninput[type=\"date\"]:required,\ninput[type=\"number\"]:required,\ninput[type=\"text\"]:required,\ninput[type=\"url\"]:required,\ninput[type=\"email\"]:required,\ninput[type=\"password\"]:required,\ninput[type=\"tel\"]:required,\nselect:required,\ninput:required,\ntextarea:required {\n border-right: 5px solid orange !important;\n}\n\n.bootstrap-table .fixed-table-container .table tbody tr.selected td {\n background-color: ~\"light-dark(hsl(from var(--main-theme-color) h s calc(l + 40)),hsl(from var(--main-theme-color) h s calc(l - 40)))\" !important;\n}\n\ntr.success > td {\n background-color: #00a65a !important;\n color: white !important;\n}\n\ntr.danger > td {\n background-color: var(--text-danger) !important;\n color: white !important;\n}\n\n@media print {\n\n body,\n div.content-wrapper,\n section.content,\n .webui,\n .main-panel,\n .nav-tabs-custom,\n .box,\n .box-body,\n .list-group,\n .list-group-unbordered,\n .list-group-item,\n .row,\n .tab-content {\n background: white !important;\n color: black !important;\n }\n\n .fixed-table-toolbar,\n .fixed-table-pagination,\n #assetsToolBar,\n .fixed-table-pagination {\n display: none !important;\n }\n\n .tab-pane.hidden-print {\n display: none !important;\n visibility: hidden !important;\n }\n\n h2, h3, h4 {\n color: black !important;\n }\n\n .col-sm-9,\n .main-panel {\n float: left;\n width: 100% !important;\n }\n\n}\n\n.list-group-item.subitem {\n padding-left: 20px !important;\n border-left: 0 !important;\n border-right: 0 !important;\n}\n\n.list-group-item.subitem:first-child {\n border: var(--tab-bottom-border);\n}\n\n.list-group-item.subitem:last-child {\n border: 0 !important;\n}\n\n.main-panel-content {\n line-height: 20px;\n border-bottom: var(--tab-bottom-border);\n padding: 10px 15px;\n}\n\n\n/* table */\n\ndl.table-display {\n float: left;\n width: 100%;\n margin: 1em 0;\n padding: 0;\n}\n\n.table-display dt {\n line-height: 25px;\n clear: left;\n float: left;\n /*text-align: right;*/\n width: 20%;\n margin: 0;\n padding: 8px;\n border-top: var(--tab-bottom-border);\n font-weight: bold;\n}\n\n.table-display dd {\n line-height: 20px;\n float: left;\n width: 80%;\n margin: 0;\n padding: 10px;\n border-top: var(--tab-bottom-border);\n}\n\n.well-display dt {\n clear: left;\n float: left;\n width: 70%;\n margin: 0;\n padding: 6px;\n border-top: 0;\n font-weight: bold;\n}\n\n.well-display dd {\n float: left;\n width: 30%;\n margin: 0;\n padding: 6px;\n border-top: 0;\n}\n\n.well-sm {\n line-height: 30px;\n}\n\n.table-display dd:first-of-type, .table-display dt:first-of-type {\n border-top: 0 !important;\n}\n\n\n@media (max-width: 750px) {\n .table-display dd {\n width: 100% !important;\n }\n\n .table-display dt {\n width: 100% !important;\n }\n}\n\n@media print {\n /* All your print styles go here */\n .box-profile {\n display: block !important;\n width: 100% !important;\n }\n}\n\n\n// Login / register page theme awareness.\n//\n// AdminLTE 2 hardcodes light-mode colors on the login page containers\n// (#d2d6de body bg, #fff box bg, #444 logo text) which ignore our\n// [data-theme=\"dark\"] CSS variables. Override with the same variables\n// the rest of the app uses so login and password-reset screens carry\n// the tenant's chosen theme mode instead of a permanent light-mode\n// look. Also styles the .register-* classes since AdminLTE ships them\n// paired and future Snipe-IT signup flows may use them.\n.login-page,\n.register-page {\n background: var(--color-bg);\n}\n\n.login-box-body,\n.register-box-body {\n background: var(--box-bg);\n color: var(--color-fg);\n}\n\n.login-logo a,\n.register-logo a {\n color: var(--color-fg);\n}\n\n// The .login-box wraps the header + body. Its header (.box-header) picks\n// up theme colors from the general .box rules already in this file, but\n// its bottom-border (from AdminLTE's default .login-box-body) is a\n// hardcoded light color that reads as a bright line against a dark\n// panel. Clear it and let the box's own borders do the visual work.\n.login-box-body,\n.register-box-body {\n border-top: 0;\n}\n\n// .login-box and .register-box are .box variants but do NOT get the\n// .box-default class, so they miss the themed border-top treatment\n// every other card in the app has. Give them the tenant's main theme\n// color as a top accent so the login card visually ties in with the\n// header bar above it (also styled with --main-theme-color) rather\n// than using the neutral grey that .box.box-default uses elsewhere.\n.login-box,\n.register-box {\n border-top: 3px solid var(--main-theme-color);\n}\n\n// Themed header bar for login / error pages (layouts/basic.blade.php).\n// Gives the tenant's uploaded logo the same colored background it lives\n// against in the logged-in app's top-nav so logos designed for that\n// context read the way they were meant to. Falls back to a text\n// treatment of the site name when there is no logo.\n.basic-page-header {\n background-color: var(--main-theme-color);\n // Match .main-header .navbar exactly (50px min-height) so the\n // login and error page header reads the same height as the\n // logged-in top-nav. Overflow: hidden clips the logo the same\n // way AdminLTE's .main-header .logo container does, so a padded\n // brand image renders at 50px even though its own box is taller.\n position: relative;\n min-height: 50px;\n overflow: hidden;\n padding: 0 20px;\n margin-bottom: 30px;\n text-align: center;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n.basic-page-header__link {\n display: inline-block;\n // Kill link underline / hover-color so the logo and site-name\n // fallback render cleanly on the theme-color background.\n color: var(--nav-primary-text-color);\n text-decoration: none;\n\n &:hover,\n &:focus,\n &:visited {\n color: var(--nav-primary-text-color);\n text-decoration: none;\n }\n\n img {\n // Match img.navbar-brand-img / .navbar-brand>img exactly (the\n // rule near the top of this file that sizes the logged-in\n // top-nav brand logo). Combined with overflow: hidden on the\n // parent .basic-page-header, the padded img renders at 50px\n // clipped, giving the same visual as the logged-in header.\n max-height: 65px;\n max-width: 100%;\n width: auto;\n }\n}\n\n.basic-page-header__site-name {\n font-size: 24px;\n font-weight: 600;\n color: var(--nav-primary-text-color);\n}\n\n// Absolute-positioned in the top-right of the bar so the logo stays\n// visually centered. Icon-only presentation so it reads like the\n// compact icon controls (bell, user avatar) in the logged-in top-nav\n// rather than a full-text toggle. The aria-label carries the full\n// \"Dark mode\" / \"Light mode\" text for screen readers.\n.basic-page-header__toggle {\n position: absolute;\n right: 10px;\n top: 50%;\n transform: translateY(-50%);\n background: transparent;\n border: 0;\n padding: 4px 8px;\n color: var(--nav-primary-text-color);\n font-size: 16px;\n line-height: 1;\n cursor: pointer;\n\n &:hover,\n &:focus {\n color: var(--nav-primary-text-color);\n opacity: 0.85;\n }\n\n // Hide the injected .theme-toggle-label span. Text is still in the\n // DOM and read by screen readers via the button's aria-label, but\n // visually only the sun/moon icon shows.\n .theme-toggle-label {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n }\n}\n\n// Issue #19443: on narrower viewports (sidebar open, small laptops)\n// the bs-table search input ends up wedged between the box's\n// bulk-actions area (pulled left, ~500px min-width) and the button\n// toolbar (pulled right), which strands it visually in the middle.\n// Force the search onto its own row below the toolbar, right-aligned,\n// when the viewport isn't wide enough to fit all three inline. Wide\n// layouts stay unchanged.\n//\n// The outer `.search` is bootstrap's `.input-group` (display: table)\n// wrapping a nested `.input-group` with the input + clear button.\n// Just adding `clear: both` to the still-floated element left it\n// stranded mid-container. Turning the outer into a plain block with\n// `text-align: right`, and forcing the nested input-group to\n// `inline-flex` so it respects the parent's text alignment, lets it\n// sit flush against the box's right edge on its own row.\n@media (max-width: 1400px) {\n .box-body .fixed-table-toolbar > .search.pull-right {\n clear: both !important;\n margin-top: 8px;\n }\n}\n\n// Info-panel action button row. Every asset / user / license detail\n// page renders a horizontal strip of icon buttons (edit, clone, note,\n// audit, delete, ...) above the info panel. Was a plain .row with no\n// wrap strategy, so on narrow viewports the last one or two buttons\n// would drop to their own line with no spacing from the row above.\n// Flex + wrap + gap gives a predictable break point and consistent\n// spacing between buttons in either axis. Also fixed #19443.\n//\n// Destructive buttons (delete, and by convention checkin) still need\n// to sit visually apart from the non-destructive ones on the right\n// edge, which they got via `pull-right` (float: right) before this\n// container went flex. Floats are ignored by flex, so the first\n// pull-right child gets margin-left: auto to consume the remaining\n// space and shove itself right. Anything after it clusters next to\n// it.\n//\n// pull-right children also get order:1 so they visually move to the\n// end of the row regardless of their DOM position. Without this,\n// pull-right buttons that appear BEFORE non-pull-right buttons in\n// markup (checkin is emitted before edit/clone/audit on the asset\n// view, and only when the asset is currently checked out - which is\n// why the misalignment only showed up on checked-out assets) end up\n// dragging every subsequent sibling right along with them via the\n// auto margin, leaving only the first non-pull-right button alone on\n// the left. order:1 corrects the visual grouping so pull-right ends\n// up on the right and the non-pull-right stack stays left, matching\n// the behavior the old floats used to give.\n.info-panel-actions {\n display: flex;\n flex-wrap: wrap;\n gap: 2px;\n // Bleed out through the parent .box-header's 10px horizontal\n // padding so the button row hits the box's actual edges. Matches\n // how a bootstrap .row offsets its container's gutters.\n margin: 0 -10px;\n\n > .pull-right {\n order: 1;\n margin-left: auto;\n }\n\n > .pull-right ~ .pull-right {\n margin-left: 0;\n }\n}\n"],"names":[],"sourceRoot":""}