:root{--primary: #0369a1;--primary-dark: #075985;--border: #dbe4ea;--surface: #ffffff;--shadow-soft: 0 1px 2px rgba(12,26,38,0.05);--surface-muted: #f4f8fb;--text-main: #0c1a26;--text-muted: #5a6b78;}
.uid-shell{--uid-ink: #0c1a26;--uid-mute: #5a6b78;--uid-line: #dbe4ea;--uid-surface: #ffffff;--uid-soft: #f4f8fb;--uid-accent: #0369a1;--uid-accent-dark: #075985;--uid-accent-soft: #e0f2fe;--uid-amber: #a35709;--uid-amber-soft: #fdf1e0;--uid-good: #15803d;--uid-good-soft: #e8f6ec;--uid-bad: #b42318;--uid-bad-soft: #fdeceb;background: var(--uid-surface);border: 1px solid var(--uid-line);border-radius: 16px;box-shadow: 0 1px 2px rgba(12,26,38,0.05);overflow: hidden;margin-bottom: 2.25rem;}
.uid-sr{position: absolute;width: 1px;height: 1px;padding: 0;margin: -1px;overflow: hidden;clip: rect(0,0,0,0);white-space: nowrap;border: 0;}
.uid-byline{display: flex;flex-wrap: wrap;align-items: center;gap: 0.35rem 0.9rem;padding: 0.7rem 1.25rem;font-size: 0.82rem;color: var(--uid-mute);background: var(--uid-soft);border-bottom: 1px solid var(--uid-line);}
.uid-byline-author a,.uid-byline .author-link{color: var(--uid-accent);font-weight: 600;text-decoration: none;}
.uid-byline-author a:hover,.uid-byline .author-link:hover{text-decoration: underline;}
.uid-byline-updated{margin-left: auto;}
.uid-tabs{display: flex;gap: 0;padding: 0 1.25rem;background: var(--uid-soft);border-bottom: 1px solid var(--uid-line);}
.uid-tab{position: relative;padding: 0.75rem 1.1rem;margin-bottom: -1px;font-size: 0.9rem;font-weight: 600;color: var(--uid-mute);background: none;border: 1px solid transparent;border-bottom: 2px solid transparent;border-radius: 8px 8px 0 0;cursor: pointer;transition: color 0.15s ease,background 0.15s ease;}
.uid-tab:hover{color: var(--uid-ink);}
.uid-tab.is-active{color: var(--uid-accent-dark);background: var(--uid-surface);border-color: var(--uid-line);border-bottom-color: var(--uid-surface);}
.uid-alert{margin: 1rem 1.25rem 0;padding: 0.7rem 0.9rem;font-size: 0.88rem;line-height: 1.5;color: var(--uid-bad);background: var(--uid-bad-soft);border: 1px solid #f4c9c4;border-radius: 8px;}
.uid-panel{padding: 1.35rem 1.25rem 1.5rem;}
.uid-controls{display: grid;grid-template-columns: 1fr;gap: 0.9rem;}
@media (min-width: 700px){.uid-controls{grid-template-columns: 1.2fr 1.2fr 0.7fr;}}
.uid-ns{display: grid;grid-template-columns: 1fr;gap: 0.9rem;margin-top: 0.9rem;padding: 1rem;background: var(--uid-soft);border: 1px solid var(--uid-line);border-radius: 10px;}
@media (min-width: 700px){.uid-ns{grid-template-columns: 1fr 1fr;}}
.uid-field{display: flex;flex-direction: column;gap: 0.35rem;min-width: 0;}
.uid-field-wide{grid-column: 1 / -1;}
.uid-field-inline{flex-direction: row;align-items: center;gap: 0.55rem;flex-wrap: wrap;}
.uid-label{font-size: 0.76rem;font-weight: 700;letter-spacing: 0.05em;text-transform: uppercase;color: var(--uid-mute);}
.uid-select,.uid-input{width: 100%;padding: 0.6rem 0.7rem;font-size: 0.94rem;color: var(--uid-ink);background: var(--uid-surface);border: 1px solid var(--uid-line);border-radius: 8px;transition: border-color 0.15s ease,box-shadow 0.15s ease;}
.uid-select:focus,.uid-input:focus{outline: none;border-color: var(--uid-accent);box-shadow: 0 0 0 3px rgba(3,105,161,0.12);}
.uid-select-sm{width: auto;min-width: 10.5rem;padding: 0.4rem 0.55rem;font-size: 0.86rem;}
.uid-input-lg{font-size: 1.02rem;padding: 0.75rem 0.8rem;}
.uid-mono{font-family: ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing: 0.01em;}
.uid-hint{margin: 0.15rem 0 0;font-size: 0.82rem;line-height: 1.5;color: var(--uid-mute);}
.uid-run{display: flex;flex-wrap: wrap;align-items: center;gap: 0.7rem 1rem;margin-top: 1.1rem;}
.uid-go{display: inline-flex;align-items: center;gap: 0.5rem;padding: 0.7rem 1.4rem;font-size: 0.95rem;font-weight: 700;color: #ffffff;background: var(--uid-accent);border: none;border-radius: 9px;cursor: pointer;transition: background 0.15s ease,transform 0.1s ease;}
.uid-go:hover{background: var(--uid-accent-dark);}
.uid-go:active{transform: translateY(1px);}
.uid-go:disabled{background: #9db4c1;cursor: not-allowed;}
.uid-go svg{width: 1.05rem;height: 1.05rem;}
.uid-readout{margin: 0;font-size: 0.87rem;line-height: 1.5;color: var(--uid-mute);}
.uid-readout.is-warn{color: var(--uid-amber);font-weight: 600;}
.uid-output{margin-top: 1.35rem;border-top: 1px solid var(--uid-line);padding-top: 1.1rem;}
.uid-toolbar{display: flex;flex-wrap: wrap;align-items: center;justify-content: space-between;gap: 0.7rem;margin-bottom: 0.85rem;}
.uid-toolbar-buttons{display: flex;flex-wrap: wrap;gap: 0.5rem;}
.uid-btn{padding: 0.42rem 0.85rem;font-size: 0.85rem;font-weight: 600;color: var(--uid-accent-dark);background: var(--uid-accent-soft);border: 1px solid #bfe3f5;border-radius: 7px;cursor: pointer;transition: background 0.15s ease;}
.uid-btn:hover{background: #cdeafa;}
.uid-btn-quiet{color: var(--uid-mute);background: var(--uid-soft);border-color: var(--uid-line);}
.uid-btn-quiet:hover{background: #e9eff4;}
.uid-list{list-style: none;margin: 0;padding: 0;max-height: 30rem;overflow-y: auto;border: 1px solid var(--uid-line);border-radius: 10px;background: var(--uid-soft);}
.uid-list::-webkit-scrollbar{width: 9px;}
.uid-list::-webkit-scrollbar-thumb{background: #c3d3dd;border-radius: 5px;}
.uid-row{display: flex;align-items: center;gap: 0.7rem;padding: 0.5rem 0.7rem;background: var(--uid-surface);border-bottom: 1px solid var(--uid-line);}
.uid-row:last-child{border-bottom: none;}
.uid-row:hover{background: #fbfdfe;}
.uid-row-index{flex: none;min-width: 2.4rem;font-size: 0.76rem;font-weight: 700;color: var(--uid-mute);text-align: right;font-variant-numeric: tabular-nums;}
.uid-row-value{flex: 1 1 auto;min-width: 0;font-family: ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size: 0.92rem;color: var(--uid-ink);word-break: break-all;}
.uid-row-copy{flex: none;padding: 0.25rem 0.6rem;font-size: 0.76rem;font-weight: 600;color: var(--uid-accent-dark);background: transparent;border: 1px solid var(--uid-line);border-radius: 6px;cursor: pointer;}
.uid-row-copy:hover{background: var(--uid-accent-soft);border-color: #bfe3f5;}
.uid-result{margin-top: 1.25rem;border: 1px solid var(--uid-line);border-radius: 10px;overflow: hidden;}
.uid-verdict{display: flex;flex-wrap: wrap;align-items: baseline;gap: 0.4rem 0.8rem;padding: 0.8rem 1rem;font-size: 0.95rem;font-weight: 700;}
.uid-verdict.is-ok{color: var(--uid-good);background: var(--uid-good-soft);}
.uid-verdict.is-bad{color: var(--uid-bad);background: var(--uid-bad-soft);}
.uid-verdict-note{font-size: 0.84rem;font-weight: 500;color: var(--uid-mute);}
.uid-facts{margin: 0;padding: 0.35rem 0;background: var(--uid-surface);}
.uid-fact{display: grid;grid-template-columns: 1fr;gap: 0.1rem;padding: 0.55rem 1rem;border-top: 1px solid var(--uid-line);}
.uid-fact:first-child{border-top: none;}
@media (min-width: 620px){.uid-fact{grid-template-columns: 11rem 1fr;gap: 0.75rem;align-items: baseline;}}
.uid-fact-key{font-size: 0.78rem;font-weight: 700;letter-spacing: 0.04em;text-transform: uppercase;color: var(--uid-mute);}
.uid-fact-val{font-size: 0.93rem;line-height: 1.5;color: var(--uid-ink);word-break: break-word;}
.uid-fact-val code{padding: 0.05rem 0.3rem;font-family: ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size: 0.88rem;color: var(--uid-accent-dark);background: var(--uid-accent-soft);border-radius: 4px;}
.uid-fact-sub{display: block;margin-top: 0.15rem;font-size: 0.82rem;color: var(--uid-mute);}
.uid-article{margin: 0 auto 2rem;color: #0c1a26;}
.uid-article h2{margin: 2rem 0 0.8rem;font-size: 1.6rem;font-weight: 700;line-height: 1.3;color: #0c1a26;}
.uid-article h2:first-child{margin-top: 0;}
.uid-article h3{margin: 1.6rem 0 0.7rem;font-size: 1.2rem;font-weight: 700;color: #0c1a26;}
.uid-article p{margin: 0 0 1rem;font-size: 1rem;line-height: 1.72;color: #263a47;}
.uid-article strong{color: #0c1a26;}
.uid-article code{padding: 0.06rem 0.32rem;font-family: ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size: 0.89em;color: #075985;background: #e8f3f9;border-radius: 4px;}
.uid-article a{color: #0369a1;text-decoration: underline;text-underline-offset: 2px;}
.uid-article a:hover{color: #075985;}
.uid-bullets{margin: 0 0 1.1rem;padding-left: 1.15rem;}
.uid-bullets li{margin-bottom: 0.5rem;font-size: 0.98rem;line-height: 1.66;color: #263a47;}
.uid-table-wrap{overflow-x: auto;margin: 1.3rem 0 1.6rem;border: 1px solid #dbe4ea;border-radius: 10px;}
.uid-table{width: 100%;min-width: 40rem;border-collapse: collapse;font-size: 0.92rem;}
.uid-table thead th{padding: 0.7rem 0.9rem;text-align: left;font-size: 0.76rem;font-weight: 700;letter-spacing: 0.05em;text-transform: uppercase;color: #5a6b78;background: #f4f8fb;border-bottom: 1px solid #dbe4ea;}
.uid-table tbody th{padding: 0.7rem 0.9rem;text-align: left;font-family: ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-weight: 700;color: #075985;white-space: nowrap;vertical-align: top;}
.uid-table tbody td{padding: 0.7rem 0.9rem;line-height: 1.55;color: #263a47;vertical-align: top;}
.uid-table tbody tr+tr th,.uid-table tbody tr+tr td{border-top: 1px solid #eaf0f4;}
.uid-pre{margin: 1.1rem 0 1.3rem;padding: 1rem 1.1rem;overflow-x: auto;font-size: 0.86rem;line-height: 1.6;color: #0c1a26;background: #f4f8fb;border: 1px solid #dbe4ea;border-left: 3px solid #0369a1;border-radius: 0 10px 10px 0;}
.uid-pre code{padding: 0;font-family: ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;background: none;color: inherit;white-space: pre;}
.uid-pre strong{color: #a35709;}
.uid-callout{margin: 1.5rem 0;padding: 1rem 1.15rem;background: #fdf1e0;border-left: 3px solid #a35709;border-radius: 0 10px 10px 0;}
.uid-callout-title{margin: 0 0 0.3rem;font-size: 0.78rem;font-weight: 700;letter-spacing: 0.05em;text-transform: uppercase;color: #a35709;}
.uid-callout-body{margin: 0;font-size: 0.95rem;line-height: 1.62;color: #0c1a26;}
@media (max-width: 575px){.uid-panel{padding: 1.1rem 0.9rem 1.25rem;}.uid-tabs{padding: 0 0.9rem;}.uid-byline{padding: 0.65rem 0.9rem;}.uid-byline-updated{margin-left: 0;}.uid-article h2{font-size: 1.35rem;}.uid-row{flex-wrap: wrap;}.uid-row-value{flex-basis: 100%;order: 3;}}
@media (prefers-reduced-motion: reduce){.uid-go,.uid-tab,.uid-btn,.uid-select,.uid-input{transition: none;}}
