.tool-saas-tracker{--sbt-bad:var(--danger);--sbt-good:var(--success);--sbt-warn:var(--warning)}.tool-saas-tracker .visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;overflow:hidden;position:absolute!important}.tool-saas-tracker .muted{color:var(--muted)}.tool-saas-tracker .small{font-size:.85rem}.tool-saas-tracker .bad{color:var(--sbt-bad);font-weight:600}.tool-saas-tracker .good{color:var(--sbt-good);font-weight:600}.tool-saas-tracker .hint{color:var(--muted);margin:4px 0 10px;font-size:.9rem}.tool-saas-tracker .warn{border-left:4px solid var(--sbt-warn);background:var(--surface-2);border-radius:6px;margin:8px 0;padding:8px 12px}.tool-saas-tracker .error{color:var(--sbt-bad);min-height:1.2em;margin:8px 0 0}.tool-saas-tracker .row{flex-wrap:wrap;align-items:center;gap:8px;margin:8px 0;display:flex}.tool-saas-tracker .btn-sm{padding:4px 10px;font-size:.85rem}.tool-saas-tracker .btn[disabled]{opacity:.5;cursor:not-allowed}.tool-saas-tracker .btn-danger:hover{background:color-mix(in srgb, var(--danger) 12%, var(--surface))}.tool-saas-tracker .link{color:var(--accent);cursor:pointer;font:inherit;background:0 0;border:0;padding:0;text-decoration:underline}.tool-saas-tracker .icon-btn{cursor:pointer;color:inherit;background:0 0;border:0;border-radius:6px;padding:4px 8px;font-size:1.5rem;line-height:1}.tool-saas-tracker .icon-btn:hover{background:var(--surface-2)}.tool-saas-tracker .sbt-tabs{border-bottom:1px solid var(--border);scrollbar-width:thin;gap:4px;margin-bottom:16px;display:flex;overflow-x:auto}.tool-saas-tracker .sbt-tabs [role=tab]{font:inherit;color:var(--muted);cursor:pointer;background:0 0;border:0;border-bottom:3px solid #0000;flex:none;padding:10px 14px}.tool-saas-tracker .sbt-tabs [role=tab][aria-selected=true]{color:var(--text);border-bottom-color:var(--accent);font-weight:600}.tool-saas-tracker [role=tabpanel]:focus{outline:none}.tool-saas-tracker .sbt-banner{border:1px solid var(--sbt-warn);background:var(--surface);border-radius:var(--radius);border-left-width:5px;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px;padding:10px 14px;display:flex}.tool-saas-tracker .sbt-banner[hidden]{display:none}.tool-saas-tracker .sbt-banner p{margin:0 0 4px}.tool-saas-tracker .sbt-banner ul{margin:0;padding-left:20px}.tool-saas-tracker .kpis{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;margin-bottom:16px;display:grid}.tool-saas-tracker .kpi{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);flex-direction:column;gap:2px;padding:14px 16px;display:flex}.tool-saas-tracker .kpi-warn{border-color:var(--sbt-warn)}.tool-saas-tracker .kpi-label{color:var(--muted);font-size:.85rem}.tool-saas-tracker .kpi-value{font-variant-numeric:tabular-nums;font-size:1.5rem;font-weight:700}.tool-saas-tracker .kpi-sub{color:var(--muted);font-size:.8rem}.tool-saas-tracker .grid2{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:16px;display:grid}.tool-saas-tracker .span2{grid-column:1/-1}.tool-saas-tracker .card h3{margin:0 0 10px;font-size:1.05rem}.tool-saas-tracker .card h3+h3,.tool-saas-tracker .card .row+h3{margin-top:18px}.tool-saas-tracker .card-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}.tool-saas-tracker .card-head h3{margin:0}.tool-saas-tracker .seg{border:1px solid var(--border);border-radius:8px;display:inline-flex;overflow:hidden}.tool-saas-tracker .seg button{background:var(--surface);font:inherit;color:var(--text);cursor:pointer;border:0;padding:6px 12px;font-size:.85rem}.tool-saas-tracker .seg button+button{border-left:1px solid var(--border)}.tool-saas-tracker .seg button[aria-pressed=true]{background:var(--accent);color:var(--accent-text)}.tool-saas-tracker ul.plain{margin:0;padding:0;list-style:none}.tool-saas-tracker ul.plain li{border-bottom:1px solid var(--border);padding:8px 0}.tool-saas-tracker ul.plain li:last-child{border-bottom:0}.tool-saas-tracker table{font-size:.92rem}.tool-saas-tracker th{font-weight:600}.tool-saas-tracker thead th{color:var(--muted);text-transform:uppercase;letter-spacing:.03em;font-size:.8rem}.tool-saas-tracker .num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.tool-saas-tracker .actions{text-align:right;white-space:nowrap}.tool-saas-tracker .actions .btn+.btn{margin-left:4px}.tool-saas-tracker .row-off{opacity:.6}.tool-saas-tracker .row-cancel td:first-child{box-shadow:inset 3px 0 0 var(--sbt-warn)}.tool-saas-tracker .bars th[scope=row]{font-weight:500}.tool-saas-tracker .bar{background:var(--surface-2);border-radius:3px;height:6px;margin-top:4px;display:block;overflow:hidden}.tool-saas-tracker .bar>span{background:var(--accent);width:0;height:100%;display:block}.tool-saas-tracker .pill{background:var(--surface-2);border:1px solid var(--border);white-space:nowrap;border-radius:999px;padding:1px 8px;font-size:.75rem;display:inline-block}.tool-saas-tracker .pill-active{background:var(--accent-soft)}.tool-saas-tracker .pill-trial,.tool-saas-tracker .pill-warn{border-color:var(--sbt-warn);color:var(--sbt-warn)}.tool-saas-tracker .pill-cancelled{color:var(--muted)}.tool-saas-tracker .pill-sample{color:var(--muted);border-style:dashed}.tool-saas-tracker .toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.tool-saas-tracker .toolbar h2,.tool-saas-tracker [role=tabpanel]>h2{margin:0 0 8px;font-size:1.3rem}.tool-saas-tracker .filters{flex-wrap:wrap;align-items:flex-end;gap:12px;margin:8px 0 12px;display:flex}.tool-saas-tracker .filters label,.tool-saas-tracker .form-grid label,.tool-saas-tracker .history-add label{flex-direction:column;gap:4px;display:flex}.tool-saas-tracker label.check{align-items:center;gap:8px;flex-direction:row!important}.tool-saas-tracker .file input{margin-top:6px;display:block}.tool-saas-tracker .card label+label{margin-top:8px;display:block}.tool-saas-tracker .empty{text-align:center;border:2px dashed var(--border);border-radius:var(--radius);padding:40px 16px}.tool-saas-tracker .empty .row{justify-content:center}.tool-saas-tracker .watch-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;margin-bottom:16px;display:grid}.tool-saas-tracker .watch p{margin:6px 0 0}.tool-saas-tracker details.card summary{cursor:pointer;font-weight:600}.tool-saas-tracker #watch-json{width:100%;font-family:var(--mono);margin-top:8px;font-size:.85rem}.tool-saas-tracker .rates input{width:9em}.tool-saas-tracker dialog{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);width:min(760px,100vw - 24px);max-height:calc(100vh - 24px);color:var(--text);padding:0;box-shadow:0 10px 40px #0000004d}.tool-saas-tracker dialog::backdrop{background:#00000073}.tool-saas-tracker dialog form{padding:0 18px 16px}.tool-saas-tracker .dialog-head{background:var(--surface);z-index:1;justify-content:space-between;align-items:center;padding:12px 0 8px;display:flex;position:sticky;top:0}.tool-saas-tracker .dialog-head h2{margin:0;font-size:1.2rem}.tool-saas-tracker .dialog-foot{background:var(--surface);justify-content:flex-end;gap:8px;padding:10px 0 0;display:flex;position:sticky;bottom:0}.tool-saas-tracker .form-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;display:grid}.tool-saas-tracker .form-grid .wide{grid-column:1/-1}.tool-saas-tracker .form-grid [hidden]{display:none}.tool-saas-tracker .form-grid input,.tool-saas-tracker .form-grid select,.tool-saas-tracker .form-grid textarea{width:100%}.tool-saas-tracker .form-grid input[type=checkbox]{width:auto}.tool-saas-tracker fieldset.history{border:1px solid var(--border);border-radius:var(--radius);margin-top:16px;padding:8px 14px 12px}.tool-saas-tracker .history-add{flex-wrap:wrap;align-items:flex-end;gap:8px;margin-top:10px;display:flex}.tool-saas-tracker .history-add input{width:9.5em}.tool-saas-tracker .toast{opacity:0;pointer-events:none;background:var(--text);color:var(--bg);border-radius:var(--radius);z-index:200;max-width:calc(100vw - 32px);padding:10px 16px;transition:opacity .2s,transform .2s;position:fixed;bottom:24px;left:50%;transform:translate(-50%,20px)}.tool-saas-tracker .toast.show{opacity:1;transform:translate(-50%)}.tool-saas-tracker .sbt-loading{color:var(--muted)}.tool-saas-tracker.is-ready .sbt-loading{display:none}@media (width<=720px){.tool-saas-tracker table.list thead{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.tool-saas-tracker table.list,.tool-saas-tracker table.list tbody,.tool-saas-tracker table.list tr,.tool-saas-tracker table.list td{width:100%;display:block}.tool-saas-tracker table.list tr{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);margin-bottom:10px;padding:6px 4px}.tool-saas-tracker table.list td{text-align:left;white-space:normal;border:0;padding:4px 8px}.tool-saas-tracker table.list td[data-label]:before{content:attr(data-label);color:var(--muted);text-transform:uppercase;font-size:.75rem;display:block}.tool-saas-tracker table.list td.actions{text-align:left}}@media (prefers-reduced-motion:reduce){.tool-saas-tracker .toast{transition:none}}@media print{.tool-saas-tracker .sbt-tabs,.tool-saas-tracker .sbt-banner,.tool-saas-tracker .actions,.tool-saas-tracker .toolbar .row,.tool-saas-tracker .filters,.tool-saas-tracker .seg,.tool-saas-tracker dialog,.tool-saas-tracker .toast{display:none!important}.tool-saas-tracker [role=tabpanel][hidden]{display:none}.tool-saas-tracker .card,.tool-saas-tracker .kpi{box-shadow:none;break-inside:avoid}}
