:root{--qtag-green: #39ff14;--sidebar-width: 240px;--sidebar-collapsed-width: 70px;--sidebar-bg: linear-gradient(165deg, #000 40%, #39ff14 200%);--sidebar-bg-collapsed: #000;--main-bg: #181c23;--toolbar-height: 64px}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#222;border-radius:4px}::-webkit-scrollbar-thumb{background:var(--qtag-green);border-radius:4px}::-webkit-scrollbar-corner{background:#222}*{scrollbar-width:thin;scrollbar-color:var(--qtag-green) #222}.expiry-date{display:inline-flex;align-items:center;gap:4px;padding:2px 6px;border-radius:4px;font-weight:500;font-size:.9rem}.expiry-date.expired{background-color:#dc3545;color:#fff}.expiry-date.expires-soon{background-color:#ffc107;color:#000}.expiry-date.expires-warning{background-color:#fd7e14;color:#fff}.expiry-date.valid{background-color:#28a745;color:#fff}.expiry-date.no-date{background-color:#6c757d;color:#fff}.expiry-summary-compact{margin-bottom:16px}.summary-compact-bar{display:flex;align-items:center;gap:24px;padding:12px 20px;background:#1a1e25;border-radius:8px;border:1px solid #333;flex-wrap:wrap}.summary-item{display:flex;align-items:center;gap:8px;font-size:.9rem}.summary-item i{font-size:1rem;width:20px;text-align:center}.summary-item .summary-label{color:#aaa;font-weight:500}.summary-item .summary-value{color:#fff;font-weight:700;font-size:1.1rem}.summary-item.expired i,.summary-item.expired .summary-value{color:#dc3545}.summary-item.critical i,.summary-item.critical .summary-value{color:#ffc107}.summary-item.warning i,.summary-item.warning .summary-value{color:#fd7e14}.summary-item.valid i,.summary-item.valid .summary-value{color:#28a745}.summary-item:first-child i,.summary-item:first-child .summary-value{color:#007bff}.expiry-summary{margin-bottom:24px}.summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:16px}.summary-card{display:flex;align-items:center;padding:16px;border-radius:8px;background:#1a1e25;border:1px solid #333;transition:all .3s ease}.summary-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000004d}.summary-card.expired{border-left:4px solid #dc3545}.summary-card.critical{border-left:4px solid #ffc107}.summary-card.warning{border-left:4px solid #fd7e14}.summary-card.valid{border-left:4px solid #28a745}.summary-card.total{border-left:4px solid #007bff}.card-icon{font-size:2rem;margin-right:16px;width:48px;text-align:center}.summary-card.expired .card-icon{color:#dc3545}.summary-card.critical .card-icon{color:#ffc107}.qtag-admin-toast{position:fixed;top:calc(var(--toolbar-height, 64px) + 12px);right:20px;z-index:10050;max-width:min(420px,calc(100vw - 32px));padding:14px 18px;border-radius:10px;background:#1e2329;color:#e8eaed;border:1px solid rgba(57,255,20,.35);box-shadow:0 10px 32px #0000008c;font-size:.95rem;line-height:1.45;animation:qtagToastIn .3s ease-out}.qtag-admin-toast--success{border-color:#39ff148c}.qtag-admin-toast--error{border-color:#ff47578c}.qtag-admin-toast--warning{border-color:#ffc10773}.qtag-admin-toast--info{border-color:#4a9eff73}.qtag-admin-toast__title{font-weight:700;font-size:1rem;margin-bottom:6px;color:var(--qtag-green, #39ff14);display:flex;align-items:center;gap:8px}.qtag-admin-toast__title .qtag-admin-toast__icon{font-size:1.1rem;opacity:.95}.qtag-admin-toast--error .qtag-admin-toast__title{color:#ff8a94}.qtag-admin-toast--warning .qtag-admin-toast__title{color:#ffd54f}.qtag-admin-toast--info .qtag-admin-toast__title{color:#6eb3ff}.qtag-admin-toast__message{font-weight:500;color:#cfd4dc;white-space:pre-wrap;word-break:break-word}.qtag-admin-toast__section{margin-top:10px;font-size:.8rem;font-weight:700;letter-spacing:.02em;text-transform:uppercase;color:#e8eaedd9}.qtag-admin-toast__list{margin:6px 0 0;padding-left:1.1rem;max-height:220px;overflow-y:auto;font-size:.88rem;font-weight:500;color:#cfd4dc;line-height:1.35}.qtag-admin-toast__list li{margin-bottom:4px}.qtag-admin-toast__more{margin-top:6px;font-size:.78rem;color:#e8eaed8c;font-style:italic}@keyframes qtagToastIn{0%{transform:translate(110%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes qtagToastOut{0%{transform:translate(0);opacity:1}to{transform:translate(110%);opacity:0}}
