@font-face{font-family:'猫啃网糖圆体';src:url('/fonts/mao-tangyuan.ttf') format('truetype');font-display:swap}
@font-face{font-family:'创客贴金刚体';src:url('/fonts/chuangketie-kingkong.otf') format('opentype');font-display:swap}
@font-face{font-family:'武林江湖体';src:url('/fonts/wulin-jianghu.ttf') format('truetype');font-display:swap}
@font-face{font-family:'仓迹高德国妙黑';src:url('/fonts/cangji-gaode.otf') format('opentype');font-display:swap}
.yuni-font-preview,.yuni-color-picker{border:1px solid #c6d9e7;border-radius:7px;margin:12px 0;background:#fff;color:#183e63}
.yuni-font-preview>summary,.yuni-color-picker>summary{cursor:pointer;padding:11px 12px;font-size:14px;list-style:none;display:flex;align-items:center;gap:9px}
.yuni-font-preview>summary:after,.yuni-color-picker>summary:after{content:'▾';margin-left:auto}
.yuni-font-preview[open]>summary:after,.yuni-color-picker[open]>summary:after{content:'▴'}
.yuni-font-samples{display:grid;gap:7px;padding:0 10px 10px}
.yuni-font-samples button{display:block;text-align:left;white-space:normal;width:100%;padding:8px;border:1px solid #d3e0ea;border-radius:6px;background:#fff;color:#183e63}
.yuni-font-samples button[aria-pressed=true]{border-color:#28699b;background:#edf6fb}
.yuni-font-samples small{display:block;font:12px 'Microsoft YaHei',sans-serif;color:#66849d;margin-bottom:5px}
.yuni-font-samples span{display:block;font-size:22px;line-height:1.4}
.yuni-color-chip{display:inline-block;width:24px;height:24px;flex-shrink:0;border:1px solid #94a9b9;border-radius:50%}
.yuni-color-picker summary small{color:#66849d;font-size:12px}
.yuni-color-controls{padding:0 12px 12px;display:grid;gap:10px}
.yuni-color-plane{position:relative;height:155px;border-radius:4px;background-image:linear-gradient(to top,#000,transparent),linear-gradient(to right,#fff,transparent);cursor:crosshair;touch-action:none;overflow:hidden}
.yuni-color-plane i{position:absolute;width:14px;height:14px;transform:translate(-50%,-50%);border:2px solid #fff;border-radius:50%;box-shadow:0 0 0 1px #222;pointer-events:none}
.yuni-color-controls label{margin:0;display:grid;gap:5px;font-size:12px}
.yuni-color-controls input.yuni-color-hue{appearance:none;width:100%;height:14px;min-height:0;padding:0;border:0;border-radius:8px;background:linear-gradient(to right,#f00,#ff0,#0f0,#0ff,#00f,#f0f,#f00);cursor:pointer}
.yuni-color-hue::-webkit-slider-thumb{appearance:none;width:18px;height:18px;border:2px solid #fff;border-radius:50%;box-shadow:0 0 0 1px #678;background:transparent}
.yuni-color-code{grid-template-columns:auto 1fr;align-items:center}
.yuni-color-code input{min-width:0;height:34px;padding:5px 8px}
.yuni-color-plane:focus-visible,.yuni-font-samples button:focus-visible{outline:3px solid #db8a35;outline-offset:2px}
