.tmico{ display:inline-block; position:relative; vertical-align:middle;
        width:var(--sz,19px); height:var(--sz,19px); flex:none; }
.tmico::before,.tmico::after{ content:""; position:absolute; inset:0;
        -webkit-mask-repeat:no-repeat; mask-repeat:no-repeat;
        -webkit-mask-position:center; mask-position:center;
        -webkit-mask-size:contain;    mask-size:contain; }
.tmico::before{ background:var(--icon-color,#00A1ED);
        -webkit-mask-image:var(--ink);   mask-image:var(--ink); }
.tmico::after{ background:#fff;
        -webkit-mask-image:var(--paper); mask-image:var(--paper); }
.tmico-pdfview  { --ink:url(/assets/img/icons/pdfview-ink.png);   --paper:url(/assets/img/icons/pdfview-paper.png); }
.tmico-pencil   { --ink:url(/assets/img/icons/pencil-ink.png);    --paper:url(/assets/img/icons/pencil-paper.png); }
.tmico-duplicate{ --ink:url(/assets/img/icons/duplicate-ink.png); --paper:url(/assets/img/icons/duplicate-paper.png); }
.tmico-selected { --ink:url(/assets/img/icons/selected-ink.png); --paper:url(/assets/img/icons/selected-paper.png); }
.tmico-error_blue{ --ink:url(/assets/img/icons/error_blue-ink.png); --paper:url(/assets/img/icons/error_blue-paper.png); }
.tmico-invoicable{ --ink:url(/assets/img/icons/invoicable-ink.png); --paper:url(/assets/img/icons/invoicable-paper.png); }
.tmico-plus     { --ink:url(/assets/img/icons/plus-ink.png);      --paper:url(/assets/img/icons/plus-paper.png); }
.tmico-notify_archive{ --ink:url(/assets/img/icons/notify_archive-ink.png); --paper:url(/assets/img/icons/notify_archive-paper.png); }
.tmico-notify_unarchive{ --ink:url(/assets/img/icons/notify_unarchive-ink.png); --paper:url(/assets/img/icons/notify_unarchive-paper.png); }

/* ---------------------------------------------------------------------
 * per-context icon sizing (restores pre-swap `<container> img` rules)
 * These selectors are module/page-specific, so on pages where the
 * container class doesn't exist they simply won't match — harmless.
 * --------------------------------------------------------------------- */
.modal-header .tmico { margin-right: 1rem; }

.entity-edit .tmico { --sz: 32px; }
.view_pdf .tmico { --sz: 28px; /* position: relative; top: 4px;*/ }
.entity-duplicate .tmico { margin: 0 15px 0 0; }
.entity-flag .tmico { --sz: 24px; }

.error-content .tmico { --sz: 24px; }

.wo-closeout-header .tmico { --sz: 28px; }
.wo-closeout-pencil .tmico { --sz: 14px; opacity: 0.6; }
.wo-closeout-pencil:hover .tmico { opacity: 1; }

.dash_edit_link .tmico { --sz: 25px; }

.account-edit .tmico { --sz: 20px; }
