openvibers/openvibe.tools Commits
Theme-aware tints and status colours (#180)
Changes
@@@ -53,7 +53,7 @@ a{color:inherit;text-decoration:none}.ab-s{background:var(--bg3);color:var(--tx2);border:1px solid var(--brd)}.ab-s:hover{background:#252738;color:var(--tx)}#out{min-height:100px;padding:16px;background:var(--bg2);border:1px solid var(--brd);border-radius:var(--r);font-family:'JetBrains Mono',monospace;font-size:.85rem;white-space:pre-wrap;word-break:break-all;overflow-x:auto;line-height:1.6}#out:empty::before{content:'Output will appear here...';color:var(--tx3)}--#out .err{color:#f87171}#out .ok{color:#34d399}++#out .err{color:var(--danger-text, #f87171)}#out .ok{color:var(--success-text, #34d399)}.dl{display:flex;font-size:.82rem;line-height:1.7}.dl .ln{width:34px;text-align:right;padding:0 6px;color:var(--tx3);user-select:none;flex-shrink:0}.dl .lc{flex:1;padding:0 8px;white-space:pre-wrap}.dl.da{background:rgba(52,211,153,.1);color:#6ee7b7}.dl.dd{background:rgba(248,113,113,.1);color:#fca5a5}@@@ -81,7 +81,7 @@ a{color:inherit;text-decoration:none}.ovk-tool-modes .ovk-seg{flex-wrap:wrap;max-width:100%}.ovk-tool-buttons{display:flex;gap:8px;flex-wrap:wrap}.ovk-dev-out{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;font:.86rem/1.65 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;color:var(--text-primary,#f1f4fb)}--.ovk-dev-out table{border-collapse:collapse;width:100%;font-size:.82rem}.ovk-dev-out td,.ovk-dev-out th{border:1px solid var(--border,rgba(255,255,255,.07));padding:6px 10px;text-align:left}++.ovk-dev-out table{border-collapse:collapse;width:100%;font-size:.82rem}.ovk-dev-out td,.ovk-dev-out th{border:1px solid var(--border,color-mix(in srgb, var(--text-primary, #fff) 7%, transparent));padding:6px 10px;text-align:left}.ov-tool-page .page{padding:0}</style><script type="application/ld+json">@@@ -183,7 +183,7 @@/* The domain's history (WHOIS / RDAP): when it was first seen here and what changed when. */.hist-note { margin: 0 0 8px; font-size: 13px; color: var(--text-secondary, #a8b3c4); }.hist-note b { color: var(--text-primary, #e6edf7); }-- .hist-list { list-style: none; margin: 4px 0 8px; padding: 0 0 0 14px; border-left: 2px solid var(--border, rgba(255,255,255,.12)); display: grid; gap: 10px; }++ .hist-list { list-style: none; margin: 4px 0 8px; padding: 0 0 0 14px; border-left: 2px solid var(--border, color-mix(in srgb, var(--text-primary, #fff) 12%, transparent)); display: grid; gap: 10px; }.hist-list > li { position: relative; font-size: 13px; }.hist-list > li::before { content: ''; position: absolute; left: -20px; top: 4px; width: 10px; height: 10px; border-radius: 50%; background: var(--accent, #3b82f6); }.hist-day { display: block; font-weight: 700; font-size: 12px; color: var(--text-muted, #8693a8); margin-bottom: 2px; }@@@ -25,11 +25,11 @@.compare-pane label { display: block; font-size: 0.85rem; color: var(--text-secondary); margin-bottom: 6px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.05em; }.compare-pane textarea { width: 100%; min-height: 200px; resize: vertical; }.diff-output { background: var(--bg-input); border: 1px solid var(--border); border-radius: var(--radius-sm); padding: 16px; font-family: var(--font-mono); font-size: 0.88rem; line-height: 1.7; white-space: pre-wrap; min-height: 120px; }-- .diff-add { background: rgba(34,197,94,0.15); color: #4ade80; text-decoration: none; }-- .diff-del { background: rgba(239,68,68,0.15); color: #f87171; text-decoration: line-through; }++ .diff-add { background: rgba(34,197,94,0.15); color: var(--success-text, #4ade80); text-decoration: none; }++ .diff-del { background: rgba(239,68,68,0.15); color: var(--danger-text, #f87171); text-decoration: line-through; }.diff-stats { display: flex; gap: 16px; margin-bottom: 12px; font-size: 0.85rem; font-weight: 600; }-- .diff-stats .added { color: #4ade80; }-- .diff-stats .removed { color: #f87171; }++ .diff-stats .added { color: var(--success-text, #4ade80); }++ .diff-stats .removed { color: var(--danger-text, #f87171); }.diff-stats .unchanged { color: var(--text-muted); }@media (max-width: 640px) { .compare-grid { grid-template-columns: 1fr; } }</style>@@@ -31,7 +31,7 @@align-items: center;gap: 16px;}-- .alert-banner i { font-size: 1.8rem; color: #fbbf24; flex-shrink: 0; }++ .alert-banner i { font-size: 1.8rem; color: var(--warning-text, #fbbf24); flex-shrink: 0; }.alert-banner p { color: #fef2f2; margin: 0; line-height: 1.5; }.alert-banner strong { color: #fff; }@@@ -72,11 +72,11 @@display: flex; align-items: center; justify-content: center;font-size: 1.2rem; flex-shrink: 0;}-- .emergency-card .em-icon.red { background: #991b1b33; color: #f87171; }++ .emergency-card .em-icon.red { background: #991b1b33; color: var(--danger-text, #f87171); }.emergency-card .em-icon.blue { background: #1e3a5f33; color: #60a5fa; }-- .emergency-card .em-icon.green { background: #14532d33; color: #4ade80; }++ .emergency-card .em-icon.green { background: #14532d33; color: var(--success-text, #4ade80); }.emergency-card .em-icon.purple { background: #581c8733; color: #c084fc; }-- .emergency-card .em-icon.amber { background: #78350f33; color: #fbbf24; }++ .emergency-card .em-icon.amber { background: #78350f33; color: var(--warning-text, #fbbf24); }.emergency-card .em-info h4 { margin: 0; font-size: 0.9rem; color: var(--text-primary); }.emergency-card .em-info p { margin: 2px 0 0; font-size: 0.82rem; color: var(--text-secondary); }.emergency-card .em-info a { color: var(--accent); text-decoration: none; font-weight: 600; }@@@ -34,8 +34,8 @@.json-brace { color: var(--text-secondary); }.json-error { background: rgba(239,68,68,0.1); border-color: rgba(239,68,68,0.3); }.json-status { font-size: 0.85rem; font-weight: 600; margin-bottom: 8px; display: flex; align-items: center; gap: 8px; }-- .json-status.valid { color: #4ade80; }-- .json-status.invalid { color: #f87171; }++ .json-status.valid { color: var(--success-text, #4ade80); }++ .json-status.invalid { color: var(--danger-text, #f87171); }.json-meta { display: flex; gap: 16px; margin-top: 8px; font-size: 0.82rem; color: var(--text-muted); font-weight: 500; }@media (max-width: 768px) { .json-grid { grid-template-columns: 1fr; } }</style>@@@ -112,7 +112,7 @@.common-row .to { color: var(--accent); font-weight: 600; }.error-msg {-- text-align: center; color: #f87171; padding: 12px;++ text-align: center; color: var(--danger-text, #f87171); padding: 12px;font-size: 0.85rem; display: none;}</style>
@@ -53,7 +53,7 @@ a{color:inherit;text-decoration:none}
@@ -53,7 +53,7 @@ a{color:inherit;text-decoration:none}
.ab-s{background:var(--bg3);color:var(--tx2);border:1px solid var(--brd)}.ab-s:hover{background:#252738;color:var(--tx)}
.ab-s{background:var(--bg3);color:var(--tx2);border:1px solid var(--brd)}.ab-s:hover{background:#252738;color:var(--tx)}
#out{min-height:100px;padding:16px;background:var(--bg2);border:1px solid var(--brd);border-radius:var(--r);font-family:'JetBrains Mono',monospace;font-size:.85rem;white-space:pre-wrap;word-break:break-all;overflow-x:auto;line-height:1.6}
#out{min-height:100px;padding:16px;background:var(--bg2);border:1px solid var(--brd);border-radius:var(--r);font-family:'JetBrains Mono',monospace;font-size:.85rem;white-space:pre-wrap;word-break:break-all;overflow-x:auto;line-height:1.6}
#out:empty::before{content:'Output will appear here...';color:var(--tx3)}
#out:empty::before{content:'Output will appear here...';color:var(--tx3)}
-#out .err{color:#f87171}#out .ok{color:#34d399}
+#out .err{color:var(--danger-text, #f87171)}#out .ok{color:var(--success-text, #34d399)}
.dl{display:flex;font-size:.82rem;line-height:1.7}.dl .ln{width:34px;text-align:right;padding:0 6px;color:var(--tx3);user-select:none;flex-shrink:0}
.dl{display:flex;font-size:.82rem;line-height:1.7}.dl .ln{width:34px;text-align:right;padding:0 6px;color:var(--tx3);user-select:none;flex-shrink:0}
.dl .lc{flex:1;padding:0 8px;white-space:pre-wrap}
.dl .lc{flex:1;padding:0 8px;white-space:pre-wrap}
.dl.da{background:rgba(52,211,153,.1);color:#6ee7b7}.dl.dd{background:rgba(248,113,113,.1);color:#fca5a5}
.dl.da{background:rgba(52,211,153,.1);color:#6ee7b7}.dl.dd{background:rgba(248,113,113,.1);color:#fca5a5}
@@ -81,7 +81,7 @@ a{color:inherit;text-decoration:none}
@@ -81,7 +81,7 @@ a{color:inherit;text-decoration:none}
.ovk-tool-modes .ovk-seg{flex-wrap:wrap;max-width:100%}
.ovk-tool-modes .ovk-seg{flex-wrap:wrap;max-width:100%}
.ovk-tool-buttons{display:flex;gap:8px;flex-wrap:wrap}
.ovk-tool-buttons{display:flex;gap:8px;flex-wrap:wrap}
.ovk-dev-out{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;font:.86rem/1.65 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;color:var(--text-primary,#f1f4fb)}
.ovk-dev-out{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;font:.86rem/1.65 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;color:var(--text-primary,#f1f4fb)}
-.ovk-dev-out table{border-collapse:collapse;width:100%;font-size:.82rem}.ovk-dev-out td,.ovk-dev-out th{border:1px solid var(--border,rgba(255,255,255,.07));padding:6px 10px;text-align:left}
+.ovk-dev-out table{border-collapse:collapse;width:100%;font-size:.82rem}.ovk-dev-out td,.ovk-dev-out th{border:1px solid var(--border,color-mix(in srgb, var(--text-primary, #fff) 7%, transparent));padding:6px 10px;text-align:left}
.ov-tool-page .page{padding:0}
.ov-tool-page .page{padding:0}
</style>
</style>
<script type="application/ld+json">
<script type="application/ld+json">
@@ -183,7 +183,7 @@
@@ -183,7 +183,7 @@
/* The domain's history (WHOIS / RDAP): when it was first seen here and what changed when. */
/* The domain's history (WHOIS / RDAP): when it was first seen here and what changed when. */
.hist-note { margin: 0 0 8px; font-size: 13px; color: var(--text-secondary, #a8b3c4); }
.hist-note { margin: 0 0 8px; font-size: 13px; color: var(--text-secondary, #a8b3c4); }
.hist-note b { color: var(--text-primary, #e6edf7); }
.hist-note b { color: var(--text-primary, #e6edf7); }
- .hist-list { list-style: none; margin: 4px 0 8px; padding: 0 0 0 14px; border-left: 2px solid var(--border, rgba(255,255,255,.12)); display: grid; gap: 10px; }
+ .hist-list { list-style: none; margin: 4px 0 8px; padding: 0 0 0 14px; border-left: 2px solid var(--border, color-mix(in srgb, var(--text-primary, #fff) 12%, transparent)); display: grid; gap: 10px; }
.hist-list > li { position: relative; font-size: 13px; }
.hist-list > li { position: relative; font-size: 13px; }
.hist-list > li::before { content: ''; position: absolute; left: -20px; top: 4px; width: 10px; height: 10px; border-radius: 50%; background: var(--accent, #3b82f6); }
.hist-list > li::before { content: ''; position: absolute; left: -20px; top: 4px; width: 10px; height: 10px; border-radius: 50%; background: var(--accent, #3b82f6); }
.hist-day { display: block; font-weight: 700; font-size: 12px; color: var(--text-muted, #8693a8); margin-bottom: 2px; }
.hist-day { display: block; font-weight: 700; font-size: 12px; color: var(--text-muted, #8693a8); margin-bottom: 2px; }
@@ -25,11 +25,11 @@
@@ -25,11 +25,11 @@
.compare-pane label { display: block; font-size: 0.85rem; color: var(--text-secondary); margin-bottom: 6px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.05em; }
.compare-pane label { display: block; font-size: 0.85rem; color: var(--text-secondary); margin-bottom: 6px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.05em; }
.compare-pane textarea { width: 100%; min-height: 200px; resize: vertical; }
.compare-pane textarea { width: 100%; min-height: 200px; resize: vertical; }
.diff-output { background: var(--bg-input); border: 1px solid var(--border); border-radius: var(--radius-sm); padding: 16px; font-family: var(--font-mono); font-size: 0.88rem; line-height: 1.7; white-space: pre-wrap; min-height: 120px; }
.diff-output { background: var(--bg-input); border: 1px solid var(--border); border-radius: var(--radius-sm); padding: 16px; font-family: var(--font-mono); font-size: 0.88rem; line-height: 1.7; white-space: pre-wrap; min-height: 120px; }
- .diff-add { background: rgba(34,197,94,0.15); color: #4ade80; text-decoration: none; }
- .diff-del { background: rgba(239,68,68,0.15); color: #f87171; text-decoration: line-through; }
+ .diff-add { background: rgba(34,197,94,0.15); color: var(--success-text, #4ade80); text-decoration: none; }
+ .diff-del { background: rgba(239,68,68,0.15); color: var(--danger-text, #f87171); text-decoration: line-through; }
.diff-stats { display: flex; gap: 16px; margin-bottom: 12px; font-size: 0.85rem; font-weight: 600; }
.diff-stats { display: flex; gap: 16px; margin-bottom: 12px; font-size: 0.85rem; font-weight: 600; }
- .diff-stats .added { color: #4ade80; }
- .diff-stats .removed { color: #f87171; }
+ .diff-stats .added { color: var(--success-text, #4ade80); }
+ .diff-stats .removed { color: var(--danger-text, #f87171); }
.diff-stats .unchanged { color: var(--text-muted); }
.diff-stats .unchanged { color: var(--text-muted); }
@media (max-width: 640px) { .compare-grid { grid-template-columns: 1fr; } }
@media (max-width: 640px) { .compare-grid { grid-template-columns: 1fr; } }
</style>
</style>
@@ -31,7 +31,7 @@
@@ -31,7 +31,7 @@
align-items: center;
align-items: center;
gap: 16px;
gap: 16px;
}
}
- .alert-banner i { font-size: 1.8rem; color: #fbbf24; flex-shrink: 0; }
+ .alert-banner i { font-size: 1.8rem; color: var(--warning-text, #fbbf24); flex-shrink: 0; }
.alert-banner p { color: #fef2f2; margin: 0; line-height: 1.5; }
.alert-banner p { color: #fef2f2; margin: 0; line-height: 1.5; }
.alert-banner strong { color: #fff; }
.alert-banner strong { color: #fff; }
@@ -72,11 +72,11 @@
@@ -72,11 +72,11 @@
display: flex; align-items: center; justify-content: center;
display: flex; align-items: center; justify-content: center;
font-size: 1.2rem; flex-shrink: 0;
font-size: 1.2rem; flex-shrink: 0;
}
}
- .emergency-card .em-icon.red { background: #991b1b33; color: #f87171; }
+ .emergency-card .em-icon.red { background: #991b1b33; color: var(--danger-text, #f87171); }
.emergency-card .em-icon.blue { background: #1e3a5f33; color: #60a5fa; }
.emergency-card .em-icon.blue { background: #1e3a5f33; color: #60a5fa; }
- .emergency-card .em-icon.green { background: #14532d33; color: #4ade80; }
+ .emergency-card .em-icon.green { background: #14532d33; color: var(--success-text, #4ade80); }
.emergency-card .em-icon.purple { background: #581c8733; color: #c084fc; }
.emergency-card .em-icon.purple { background: #581c8733; color: #c084fc; }
- .emergency-card .em-icon.amber { background: #78350f33; color: #fbbf24; }
+ .emergency-card .em-icon.amber { background: #78350f33; color: var(--warning-text, #fbbf24); }
.emergency-card .em-info h4 { margin: 0; font-size: 0.9rem; color: var(--text-primary); }
.emergency-card .em-info h4 { margin: 0; font-size: 0.9rem; color: var(--text-primary); }
.emergency-card .em-info p { margin: 2px 0 0; font-size: 0.82rem; color: var(--text-secondary); }
.emergency-card .em-info p { margin: 2px 0 0; font-size: 0.82rem; color: var(--text-secondary); }
.emergency-card .em-info a { color: var(--accent); text-decoration: none; font-weight: 600; }
.emergency-card .em-info a { color: var(--accent); text-decoration: none; font-weight: 600; }
@@ -34,8 +34,8 @@
@@ -34,8 +34,8 @@
.json-brace { color: var(--text-secondary); }
.json-brace { color: var(--text-secondary); }
.json-error { background: rgba(239,68,68,0.1); border-color: rgba(239,68,68,0.3); }
.json-error { background: rgba(239,68,68,0.1); border-color: rgba(239,68,68,0.3); }
.json-status { font-size: 0.85rem; font-weight: 600; margin-bottom: 8px; display: flex; align-items: center; gap: 8px; }
.json-status { font-size: 0.85rem; font-weight: 600; margin-bottom: 8px; display: flex; align-items: center; gap: 8px; }
- .json-status.valid { color: #4ade80; }
- .json-status.invalid { color: #f87171; }
+ .json-status.valid { color: var(--success-text, #4ade80); }
+ .json-status.invalid { color: var(--danger-text, #f87171); }
.json-meta { display: flex; gap: 16px; margin-top: 8px; font-size: 0.82rem; color: var(--text-muted); font-weight: 500; }
.json-meta { display: flex; gap: 16px; margin-top: 8px; font-size: 0.82rem; color: var(--text-muted); font-weight: 500; }
@media (max-width: 768px) { .json-grid { grid-template-columns: 1fr; } }
@media (max-width: 768px) { .json-grid { grid-template-columns: 1fr; } }
</style>
</style>
@@ -112,7 +112,7 @@
@@ -112,7 +112,7 @@
.common-row .to { color: var(--accent); font-weight: 600; }
.common-row .to { color: var(--accent); font-weight: 600; }
.error-msg {
.error-msg {
- text-align: center; color: #f87171; padding: 12px;
+ text-align: center; color: var(--danger-text, #f87171); padding: 12px;
font-size: 0.85rem; display: none;
font-size: 0.85rem; display: none;
}
}
</style>
</style>