:root{--font-main:"Alibaba PuHuiTi 3.0","Plangothic P1","Plangothic P2","PingFang SC","Microsoft YaHei","WenQuanYi Micro Hei",sans-serif;--font-han:"Alibaba PuHuiTi 3.0","Plangothic P1","Plangothic P2","PingFang SC","Microsoft YaHei",serif;--font-mono:"Alibaba PuHuiTi 3.0","Plangothic P1","Plangothic P2",ui-monospace,"SF Mono",Menlo,Consolas,monospace;--font-brand:"Alibaba PuHuiTi 3.0","Plangothic P1","Plangothic P2","PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;--bg:#f3f1ed;--surface:#fff;--surface-2:#f9f7f4;--border:#e6e2dc;--border-strong:#ccc6bf;--text:#262320;--text-2:#5c5650;--text-3:#948d85;--brand-header:#2f2b26;--brand:#57534e;--brand-dark:#44403c;--brand-deep:#292524;--brand-gold:#e8c684;--brand-gold-soft:#ffe1a6;--header-h:calc(74px * var(--header-k));--brand-soft:#eae6e1;--brand-border:#d5d0c9;--header-k:1;--header-pad-inline:max(calc(26px * var(--header-k)),calc((100% - 1780px) / 2 + 24px));--ok:#15803d;--ok-bg:#ecfdf3;--ok-border:#b7e6c9;--warn:#b45309;--warn-bg:#fff7e8;--warn-border:#f3d9a4;--danger:#dc2626;--danger-bg:#fef2f2;--danger-border:#f5c0c0;--shadow-s:0 1px 2px rgba(43,38,32,.05),0 3px 10px -4px rgba(43,38,32,.08);--shadow-m:0 8px 24px -10px rgba(43,38,32,.17);--shadow-l:0 24px 60px -18px rgba(38,33,27,.32);--r-s:8px;--r:12px;--r-l:16px;--r-xl:22px}*{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%}body{font-family:var(--font-main);background:var(--bg);color:var(--text);line-height:1.65;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;display:flex;flex-direction:column;min-height:100vh}button,input,select,textarea{font:inherit;color:inherit;outline:none}button{cursor:pointer;background:none;border:none}a{color:var(--brand)}a,a:hover{text-decoration:none}::selection{background:rgba(63,57,50,.18)}:focus-visible{outline:2px solid rgba(63,57,50,.5);outline-offset:2px}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:#d3cec7;border-radius:8px;border:2px solid var(--bg)}::-webkit-scrollbar-thumb:hover{background:#bcb5ad}@keyframes spin{to{transform:rotate(1turn)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes popIn{0%{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes toastIn{0%{opacity:0;transform:translate(-50%,12px)}to{opacity:1;transform:translate(-50%)}}.field{position:relative;display:flex;align-items:center}.field>svg{position:absolute;left:14px;top:50%;transform:translateY(-50%);width:17px;height:17px;color:var(--text-3);pointer-events:none;flex:0 0 auto}.field input{padding-left:40px!important}input[type=number],input[type=search],input[type=text],select,textarea{border:1px solid var(--border-strong);background:var(--surface);border-radius:var(--r);font-size:14px;transition:border-color .15s ease,box-shadow .15s ease,background-color .15s ease}input[type=number]:hover,input[type=search]:hover,input[type=text]:hover,select:hover,textarea:hover{border-color:#b3ada4}input[type=number]:focus,input[type=search]:focus,input[type=text]:focus,select:focus,textarea:focus{border-color:#b3ada4;box-shadow:none;outline:none}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none}input[type=number]{-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield}select{-moz-appearance:none;appearance:none;-webkit-appearance:none;padding-right:34px;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%235c5650' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:42px;padding:0 22px;background:var(--brand);color:#fff;border-radius:var(--r);font-size:14px;font-weight:600;box-shadow:0 6px 16px -6px rgba(63,57,50,.5);transition:background-color .15s ease,transform .12s ease,box-shadow .15s ease;white-space:nowrap}.btn:hover{background:var(--brand-dark);box-shadow:0 8px 20px -8px rgba(63,57,50,.6)}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}.btn svg{width:17px;height:17px}.btn-ghost{background:var(--surface);color:var(--text-2);border:1px solid var(--border-strong);box-shadow:none}.btn-ghost:hover{background:var(--surface-2);color:var(--brand-dark);border-color:var(--brand-border);box-shadow:none}.btn-sm{height:34px;padding:0 14px;font-size:13px;border-radius:9px}.copy-toast{position:fixed;left:50%;bottom:36px;transform:translateX(-50%);display:inline-flex;align-items:center;gap:9px;background:rgba(15,32,58,.92);color:#fff;font-size:14px;padding:11px 20px;border-radius:999px;z-index:400;box-shadow:var(--shadow-l);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);animation:toastIn .22s ease;pointer-events:none;max-width:calc(100vw - 32px)}.copy-toast:before{content:"";width:18px;height:18px;flex:0 0 auto;border-radius:50%;background:#2faf6a;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 13 4 4L19 7'/%3E%3C/svg%3E");background-size:11px 11px;background-position:50%;background-repeat:no-repeat}.site-header{position:-webkit-sticky;position:sticky;top:0;z-index:100;isolation:isolate;justify-content:space-between;gap:20px;min-height:var(--header-h);padding:calc(15px * var(--header-k)) var(--header-pad-inline);color:#fff;background:var(--brand-header);box-shadow:0 6px 20px -8px rgba(38,33,27,.35);border-bottom:1px solid hsla(0,0%,100%,.14)}.brand,.site-header{display:flex;align-items:center}.brand{position:relative;z-index:1;gap:calc(8px * var(--header-k));flex-shrink:0;text-decoration:none;color:inherit}.brand-mark{flex:0 0 auto;width:calc(43px * var(--header-k));height:calc(43px * var(--header-k));display:flex;align-items:center;justify-content:center;border-radius:calc(14px * var(--header-k));background:hsla(0,0%,100%,.08);border:calc(1px * var(--header-k)) solid hsla(40,68%,71%,.5);color:var(--brand-gold);transition:background-color .18s ease,border-color .18s ease}.brand-mark .brand-grid{width:calc(28px * var(--header-k));height:calc(28px * var(--header-k))}.brand:hover .brand-mark{background-color:hsla(0,0%,100%,.14);border-color:var(--brand-gold-soft)}.brand-text{display:grid;grid-gap:calc(4px * var(--header-k));gap:calc(4px * var(--header-k))}.brand-title{font-size:calc(23px * var(--header-k));font-weight:700;line-height:1;letter-spacing:calc(.5px * var(--header-k))}.brand-note{font-family:var(--font-brand);font-size:calc(11.9px * var(--header-k));line-height:1.2;color:hsla(0,0%,100%,.66);letter-spacing:calc(.4px * var(--header-k));white-space:nowrap}.brand-note em{font-style:normal;font-weight:700;color:var(--brand-gold);letter-spacing:calc(.2px * var(--header-k))}@media (max-width:600px){:root{--header-k:.84}.site-header{gap:12px 14px}}.tabs{display:flex;flex-wrap:wrap;gap:8px;width:100%;max-width:1780px;margin:0 auto;padding:16px 24px 0}.tab{height:40px;padding:0 24px;cursor:pointer;font-size:14px;font-weight:600;color:var(--text-2);background:var(--surface);border:1px solid var(--border-strong);border-radius:999px;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:color .15s,background-color .15s,border-color .15s,box-shadow .15s,transform .12s;-webkit-user-select:none;-moz-user-select:none;user-select:none;white-space:nowrap;-webkit-tap-highlight-color:transparent}.tab svg{width:16px;height:16px;opacity:.75}.tab:hover{color:var(--brand);border-color:var(--brand);transform:translateY(-1px)}.tab:active{transform:translateY(0)}.tab.active{color:#fff;background:var(--brand);border-color:var(--brand);box-shadow:0 8px 18px -8px rgba(63,57,50,.55)}.compose-bar,.toolbar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;width:calc(100% - 48px);max-width:1732px;margin:16px auto 0;padding:14px 24px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-l);box-shadow:var(--shadow-s)}.toolbar .field{flex:1 1;min-width:200px;height:42px}.toolbar input[type=text]{width:100%;height:42px;padding:0 14px;border-radius:11px;font-size:14px}.sel{position:relative}.sel-btn{display:inline-flex;align-items:center;gap:7px;height:42px;padding:0 11px 0 10px;max-width:100%;background:var(--surface-2);border:1px solid var(--border);border-radius:11px;cursor:pointer;font-family:var(--font-main);font-size:13.6px;color:var(--brand-dark);transition:border-color .14s ease;-webkit-tap-highlight-color:transparent}.sel-btn:hover{border-color:#c6c0b7}.sel-ico{flex:0 0 auto;width:26px;height:26px;display:inline-flex;align-items:center;justify-content:center;background:var(--surface);border:1px solid var(--border);border-radius:8px;color:var(--brand)}.sel-ico svg{width:13px;height:13px}.sel-txt{display:inline-flex;align-items:baseline;white-space:nowrap}.sel-txt b{font-weight:400;color:var(--brand-dark)}.sel-caret{flex:0 0 auto;width:13px;height:13px;color:var(--text-3)}.sel-panel{position:absolute;z-index:60;top:calc(100% + 8px);left:0;width:max-content;min-width:100%;max-width:calc(100vw - 32px);padding:6px;display:grid;grid-template-columns:repeat(var(--cols,1),minmax(0,1fr));grid-gap:2px;gap:2px;background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow-m);max-height:min(70vh,520px);overflow-y:auto;animation:menuIn .15s cubic-bezier(.2,.9,.3,1.06)}.sel-panel.up{top:auto;bottom:calc(100% + 8px);animation-name:menuInUp}.sel-panel.right{left:auto;right:0}@keyframes menuIn{0%{opacity:0;transform:translateY(-6px) scale(.985)}to{opacity:1;transform:none}}@keyframes menuInUp{0%{opacity:0;transform:translateY(6px) scale(.985)}to{opacity:1;transform:none}}.sel-opt{display:flex;align-items:center;gap:8px;min-height:34px;padding:5px 9px;border-radius:9px;cursor:pointer;text-align:left;font-family:var(--font-main);font-size:13.6px;font-weight:400;color:var(--text-2);transition:background-color .12s ease,color .12s ease}.sel-opt .t{flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sel-opt .ck{flex:0 0 auto;width:13px;height:13px;color:var(--brand);opacity:0}.sel-opt.on{background:var(--surface-2);font-weight:600;color:var(--brand-dark)}.sel-opt.on .ck{opacity:1}.sel-opt.cur,.sel-opt:hover{background:var(--brand-soft);color:var(--brand-dark)}.sel-opt.span{grid-column:1/-1}.toolbar .count{display:inline-flex;align-items:center;height:42px;font-size:13.6px;font-weight:400;color:var(--brand-dark);background:var(--surface-2);border:1px solid var(--border);border-radius:999px;padding:0 15px;white-space:nowrap}.toolbar .count b{font-weight:700;color:inherit;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.toolbar .reset{display:inline-flex;align-items:center;gap:5px;height:42px;padding:0 15px;border-radius:999px;cursor:pointer;font-family:var(--font-main);font-size:13.6px;color:var(--text-2);background:var(--surface-2);border:1px solid var(--border);transition:color .12s,background-color .12s,border-color .12s}.toolbar .reset svg{width:14px;height:14px}.toolbar .reset:hover{color:var(--danger);background:var(--danger-bg);border-color:var(--danger-border)}.grid{display:grid;grid-template-columns:repeat(26,1fr);grid-gap:7px;gap:7px;padding:16px 24px;width:100%;max-width:1780px;margin:0 auto}@media (max-width:1200px){.grid{grid-template-columns:repeat(22,1fr)}}@media (max-width:1000px){.grid{grid-template-columns:repeat(auto-fill,minmax(46px,1fr))}}.cell{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:8px 2px 7px;text-align:center;cursor:pointer;font-size:21px;line-height:1;font-family:var(--font-han);display:flex;flex-direction:column;align-items:center;justify-content:center;transition:transform .12s ease,border-color .12s ease,box-shadow .12s ease,background-color .12s ease;-webkit-tap-highlight-color:transparent}.cell:hover{transform:translateY(-2px);border-color:var(--brand);background:var(--brand-soft);box-shadow:0 6px 14px -6px rgba(63,57,50,.35)}.cell:active{transform:translateY(0)}.cell .code{display:block;font-family:var(--font-mono);font-size:9px;letter-spacing:.4px;color:var(--text-3);margin-top:6px;line-height:1}.empty,.loading{grid-column:1/-1;text-align:center;padding:44px 20px;color:var(--text-3);font-size:14px}.loading{display:flex;align-items:center;justify-content:center;gap:10px;font-weight:600}.loading:before{content:"";width:16px;height:16px;border-radius:50%;border:2px solid var(--border-strong);border-top-color:var(--brand);animation:spin .8s linear infinite}.pagination{display:flex;justify-content:center;padding:18px 16px 34px}.pagination .pg-wrap{display:inline-flex;flex-wrap:wrap;gap:4px;align-items:center;background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:8px 10px;box-shadow:var(--shadow-s)}.pagination .pg-cur,.pagination button.pg-btn{min-width:34px;height:34px;padding:0 9px;border-radius:9px;border:1px solid transparent;background:transparent;color:var(--text-2);font-size:13px;line-height:1;font-weight:600;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:background-color .12s,color .12s;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.pagination button.pg-btn:hover:not(:disabled){background:var(--brand-soft);color:var(--brand-dark)}.pagination button.pg-btn:disabled{opacity:.35;cursor:not-allowed}.pagination .pg-cur{background:var(--brand);color:#fff;box-shadow:0 4px 10px -4px rgba(63,57,50,.5);cursor:default}.pagination .pg-ellipsis{color:var(--text-3);padding:0 2px;font-size:13px}.pagination .page-info{font-size:12px;color:var(--text-2);background:var(--surface-2);border-radius:999px;padding:0 13px;height:26px;display:inline-flex;align-items:center;margin-left:6px;white-space:nowrap}.pagination .go{display:inline-flex;align-items:center;gap:4px;margin-left:2px}.pagination .go input{width:58px;height:34px;border-radius:9px;padding:0 4px;font-size:13px;text-align:center;color:var(--text)}.pagination button.pg-btn.pg-go{border:1px solid var(--border-strong)}#bihuaPanel{padding-bottom:10px}.stroke-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;width:calc(100% - 48px);max-width:1732px;margin:16px auto 0}.stroke-title{display:flex;align-items:baseline;gap:8px;font-size:17px;font-weight:800;color:var(--brand-dark);letter-spacing:.3px}.stroke-title b{font-size:28px;line-height:1;color:var(--brand);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.stroke-back,.stroke-title span{font-size:13px;font-weight:600;color:var(--text-2)}.stroke-back{display:inline-flex;align-items:center;gap:5px;height:34px;padding:0 14px;border-radius:999px;background:var(--surface);border:1px solid var(--border-strong);transition:color .12s,border-color .12s,background-color .12s;position:relative;top:-3px}.stroke-back svg{width:14px;height:14px}.stroke-back:hover{color:var(--brand-dark);border-color:var(--brand);background:var(--surface-2)}.stroke-picker{display:flex;flex-wrap:wrap;gap:6px;align-items:center;width:calc(100% - 48px);max-width:1732px;margin:14px auto 0;padding:12px 24px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-l);box-shadow:var(--shadow-s)}.stroke-picker-label{font-size:12px;font-weight:700;color:var(--text-3);margin-right:2px;letter-spacing:.4px;white-space:nowrap}.stroke-chip{min-width:34px;height:34px;padding:0 8px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:9px;background:var(--surface-2);color:var(--text-2);font-size:13px;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;transition:color .12s,background-color .12s,border-color .12s,transform .12s}.stroke-chip:hover{border-color:var(--brand);color:var(--brand-dark);background:var(--brand-soft);transform:translateY(-1px)}.stroke-chip.on{background:var(--brand);border-color:var(--brand);color:#fff;box-shadow:0 4px 10px -4px rgba(63,57,50,.5)}.stroke-chip.on:hover{transform:none;color:#fff}.stroke-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(124px,1fr));grid-gap:8px;gap:8px;padding:16px 24px 34px;width:100%;max-width:1780px;margin:0 auto}.stroke-card{display:flex;flex-direction:column;gap:7px;padding:11px 13px 10px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r);color:var(--text);-webkit-tap-highlight-color:transparent;transition:transform .12s ease,border-color .12s ease,box-shadow .12s ease,background-color .12s ease}.stroke-card:hover{transform:translateY(-2px);border-color:var(--brand);background:var(--brand-soft);box-shadow:0 6px 14px -6px rgba(63,57,50,.35)}.sc-head{display:flex;align-items:baseline;gap:5px}.sc-num{font-size:20px;font-weight:800;line-height:1;color:var(--brand-dark);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.sc-unit{font-style:normal;font-size:12px;color:var(--text-2)}.sc-count{margin-left:auto;font-size:11px;color:var(--text-3);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.sc-samples{display:flex;gap:7px;align-items:center;font-family:var(--font-han);font-size:15px;line-height:1;color:var(--text-2)}.sc-samples i{font-style:normal;opacity:.75}#composerPanel{padding-bottom:10px}.guide{gap:14px;width:calc(100% - 48px);max-width:1732px;margin:16px auto 0;padding:13px 18px;background:var(--brand-soft);border:1px solid var(--brand-border);border-radius:var(--r-l)}.guide,.guide .cg-icon{display:flex;align-items:center}.guide .cg-icon{flex:0 0 auto;width:40px;height:40px;border-radius:12px;justify-content:center;background:var(--surface);border:1px solid var(--brand-border);color:var(--brand)}.guide .cg-icon svg{width:19px;height:19px}.guide .cg-body{min-width:0;flex:1 1}.guide .cg-title{font-size:14px;font-weight:800;color:var(--brand-dark);letter-spacing:.2px}.guide .cg-desc{font-size:12.5px;line-height:1.75;color:var(--text-2);margin-top:1px}.guide .cg-desc code{font-family:var(--font-han);font-size:12px;color:var(--brand-dark);background:var(--surface);border:1px solid var(--brand-border);border-radius:6px;padding:0 6px;margin:0 2px;white-space:nowrap}.guide .cg-desc a{color:var(--brand);font-weight:600;border-bottom:1px solid var(--brand-border)}.guide .cg-desc a:hover{border-bottom-color:var(--brand)}.compose-bar input[type=text]{width:100%;height:44px;padding:0 14px;font-size:14px}.compose-bar .field{width:100%;height:44px}.comp-chips{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:6px}.comp-chip{display:inline-flex;align-items:center;gap:7px;height:32px;padding:0 6px 0 13px;border-radius:999px;background:var(--brand-soft);border:1px solid var(--brand-border);color:var(--brand-dark);font-size:15px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;font-family:var(--font-han);transition:background-color .12s,transform .12s}.comp-chip:hover{background:#e7e3de;transform:translateY(-1px)}.comp-chip b{width:20px;height:20px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:hsla(0,0%,100%,.85);color:var(--brand);font-size:11px;font-weight:700}.comp-clear{margin-left:2px;height:32px;padding:0 12px;background:transparent;color:var(--text-3);font-size:12px;font-weight:600;border-radius:999px}.comp-clear:hover{color:var(--danger);background:var(--danger-bg)}.radical-row{display:flex;flex-wrap:wrap;gap:7px;align-items:center;width:calc(100% - 48px);max-width:1732px;margin:10px auto 0;padding:14px 24px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-l);box-shadow:var(--shadow-s)}.radical-label{font-size:13.6px;font-weight:700;color:var(--text-3);margin-right:4px;white-space:nowrap;letter-spacing:.4px}.radical-btn{width:38px;height:38px;border:1px solid var(--border);border-radius:10px;background:var(--surface-2);color:var(--text);font-size:18px;cursor:pointer;font-family:var(--font-han);display:inline-flex;align-items:center;justify-content:center;transition:color .12s,background-color .12s,border-color .12s,transform .12s}.radical-btn:hover{border-color:var(--brand);color:var(--brand-dark);background:var(--brand-soft);transform:translateY(-1px)}.radical-btn.on{background:var(--brand);border-color:var(--brand);color:#fff;cursor:default;box-shadow:0 5px 12px -5px rgba(63,57,50,.55)}#bushouPanel{padding-bottom:10px}.radical-row-last{margin-bottom:32px}.compose-tip{padding:12px 24px 0;font-size:12px;color:var(--text-3)}.compose-tip strong{color:var(--warn);font-weight:600}.comp-count{text-align:center;padding:8px 24px 34px;font-size:13px;color:var(--text-2)}.comp-count strong{color:var(--brand)}.wrap{width:100%;max-width:1080px;margin:0 auto;padding:16px 24px 20px}.probe-header{margin:14px 0 22px}.probe-header p{color:var(--text-2);font-size:13px;gap:8px;flex-wrap:wrap}.probe-header p,.probe-header p .pill{display:inline-flex;align-items:center}.probe-header p .pill{gap:5px;background:var(--brand-soft);color:var(--brand-dark);border:1px solid var(--brand-border);border-radius:999px;padding:2px 10px;font-size:12px;font-weight:600}.probe-header p .pill.online{background:var(--ok-bg);color:var(--ok);border-color:var(--ok-border)}.probe-header p .pill svg{width:13px;height:13px}.probe-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-l);padding:24px;box-shadow:var(--shadow-s);margin-bottom:18px}.probe-tabs{display:flex;gap:8px;margin-bottom:18px;flex-wrap:wrap}.probe-tab{display:inline-flex;align-items:center;gap:8px;height:38px;padding:0 18px;border-radius:999px;border:1px solid var(--border-strong);background:var(--surface-2);color:var(--text-2);cursor:pointer;font-size:13px;font-weight:600;transition:background-color .15s,color .15s,border-color .15s,transform .12s;-webkit-user-select:none;-moz-user-select:none;user-select:none}.probe-tab svg{width:15px;height:15px}.probe-tab:hover{color:var(--brand);border-color:var(--brand);transform:translateY(-1px)}.probe-tab.active{background:var(--brand);color:#fff;border-color:var(--brand);box-shadow:0 6px 14px -6px rgba(63,57,50,.5)}.drop{border:2px dashed var(--border-strong);border-radius:14px;padding:30px 20px;min-height:190px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:var(--text-2);cursor:pointer;transition:border-color .18s,background-color .18s,transform .12s;background:var(--surface-2)}.drop.hover,.drop:hover{border-color:var(--brand);background:var(--brand-soft)}.drop .drop-icon{width:54px;height:54px;border-radius:16px;display:flex;align-items:center;justify-content:center;background:var(--brand);color:#fff;box-shadow:0 10px 20px -8px rgba(63,57,50,.55);margin-bottom:14px}.drop .drop-icon svg{width:26px;height:26px}.drop strong{color:var(--brand)}.drop .note{font-size:12px;color:var(--text-3);margin-top:8px}.text-scan{display:flex;flex-direction:column;width:100%;min-height:220px}.text-scan textarea{flex:1 1;min-height:170px;width:100%;display:block;resize:vertical;border-radius:12px;padding:14px 16px;line-height:1.8}.text-scan .btn{align-self:flex-start;margin-top:14px;margin-bottom:0}.probe-card .note{font-size:12px;color:var(--text-3);margin-top:6px;margin-bottom:12px}textarea{width:100%;min-height:120px;padding:14px 16px;resize:vertical;font-family:var(--font-main);line-height:1.8}.export-btns{display:flex;gap:12px;margin-bottom:18px;flex-wrap:wrap;align-items:center}.export-btns .note{font-size:12px;color:var(--text-3);display:inline-flex;align-items:center;height:40px}.summary{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:14px;gap:14px;margin-bottom:18px}@media (max-width:720px){.summary{grid-template-columns:repeat(2,1fr)}}.stat{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-l);padding:18px 12px 14px;text-align:center;box-shadow:var(--shadow-s);position:relative;overflow:hidden;transition:transform .15s,box-shadow .15s}.stat:before{content:"";position:absolute;top:0;left:18px;right:18px;height:3px;border-radius:0 0 4px 4px}.stat:hover{transform:translateY(-2px);box-shadow:var(--shadow-m)}.stat .num{font-size:30px;font-weight:800;line-height:1.15;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.stat .label{font-size:12px;color:var(--text-2);margin-top:4px}.stat.safe:before{background:var(--ok)}.stat.warn:before{background:var(--warn)}.stat.danger:before{background:var(--danger)}.stat.safe .num{color:var(--ok)}.stat.warn .num{color:var(--warn)}.stat.danger .num{color:var(--danger)}.bar{height:10px;background:#e7edf5;overflow:hidden;margin:14px 0 12px}.bar,.bar>i{border-radius:6px}.bar>i{display:block;height:100%;transition:width .5s ease}.bar .f-low{background:var(--ok)}.bar .f-mid{background:var(--warn)}.bar .f-high{background:var(--danger)}.verdict{display:flex;align-items:flex-start;gap:10px;font-size:13px;line-height:1.7;margin-top:6px;padding:12px 14px;border-radius:var(--r);background:var(--surface-2)}.verdict .v-tag{display:inline-flex;align-items:center;flex:0 0 auto;height:22px;padding:0 11px;border-radius:999px;font-size:12px;font-weight:700;line-height:1;color:#fff}.verdict.v-low .v-tag{background:var(--ok)}.verdict.v-mid .v-tag{background:var(--warn)}.verdict.v-high .v-tag{background:var(--danger)}.verdict .v-text{color:var(--text-2)}.verdict.v-low .v-text{color:#166534}.verdict.v-mid .v-text{color:#92400e}.verdict.v-high .v-text{color:#991b1b}table{width:100%;border-collapse:collapse;font-size:13px}td,th{padding:9px 10px;text-align:left;border-bottom:1px solid var(--border)}th{background:var(--surface-2);font-weight:700;color:var(--text-2);font-size:12px;letter-spacing:.3px;white-space:nowrap}tbody tr{transition:background-color .1s}tbody tr:hover{background:#fafcff}tbody tr:last-child td{border-bottom:none}.char-cell{font-size:18px;font-family:var(--font-han);line-height:1.4}.badge{display:inline-flex;align-items:center;padding:2px 10px;border-radius:999px;font-size:11px;font-weight:700}.b-safe{background:var(--ok-bg);color:var(--ok)}.b-warn{background:var(--warn-bg);color:var(--warn)}.b-danger{background:var(--danger-bg);color:var(--danger)}.detail-note{font-size:12px;color:var(--text-3);margin-top:10px;line-height:1.8}#reportArea .detail-note{margin-bottom:18px}@media (max-width:720px){.probe-card{padding:18px 14px}table{font-size:12px}td,th{padding:7px 6px;text-align:center;word-break:break-all}th{white-space:normal;letter-spacing:0}.char-cell{font-size:17px}.badge{padding:2px 8px}}#reportArea .probe-card>.detail-note:last-child{margin-bottom:0}.modal{display:flex;position:fixed;inset:0;background:rgba(11,23,41,.55);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);z-index:300;align-items:center;justify-content:center;padding:18px;animation:fadeIn .18s ease}.modal .card{position:relative;background:var(--surface);border-radius:var(--r-xl);padding:26px 26px 22px;max-width:380px;width:100%;text-align:center;box-shadow:var(--shadow-l);animation:popIn .22s cubic-bezier(.2,.9,.3,1.2);max-height:calc(100vh - 40px);overflow:auto}.modal .char{width:96px;height:96px;margin:4px auto 16px;border-radius:22px;font-size:64px;color:var(--brand-dark);font-family:var(--font-han);background:var(--brand-soft);border:1px solid var(--brand-border)}.modal .char,.modal .close-x{display:flex;align-items:center;justify-content:center;line-height:1}.modal .close-x{position:absolute;top:14px;right:14px;width:30px;height:30px;border-radius:50%;color:var(--text-3);font-size:15px;transition:background-color .12s,color .12s}.modal .close-x:hover{background:var(--surface-2);color:var(--text)}.modal .info{margin-top:6px;font-size:13px;text-align:left;display:grid;grid-template-columns:1fr;grid-gap:0;gap:0;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r);padding:6px 14px}.modal .info div{display:flex;align-items:center;gap:12px;padding:7px 0;border-bottom:1px dashed var(--border)}.modal .info div:last-child{border-bottom:none}.modal .info span{color:var(--text-3);flex:0 0 62px;font-size:12px}.modal .info b{font-weight:600;font-family:var(--font-han)}.modal .info .u{font-family:var(--font-mono);font-weight:600;color:var(--brand-dark)}.modal .modal-actions{margin-top:16px;display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.modal .modal-actions .close,.modal .modal-actions .png-btn{height:42px;padding:0 20px;border-radius:var(--r);background:var(--surface);color:var(--text-2);border:1px solid var(--border-strong);font-size:14px;transition:background-color .12s}.modal .modal-actions .close:hover,.modal .modal-actions .png-btn:hover{background:var(--surface-2)}.modal .modal-actions .png-btn:disabled{opacity:.6;cursor:default;background:var(--surface)}.modal .copy-btn{height:42px;padding:0 22px;border-radius:var(--r);background:var(--brand);color:#fff;font-size:14px;font-weight:600;box-shadow:0 6px 14px -6px rgba(63,57,50,.5);transition:background-color .12s}.modal .copy-btn:hover{background:var(--brand-dark)}.modal-detail-link{display:flex;align-items:center;justify-content:center;width:-moz-fit-content;width:fit-content;height:36px;padding:0 16px;margin:22px auto 0;border-radius:var(--r);background:var(--surface);color:var(--brand);border:1px solid var(--brand-border);font-size:12px;font-weight:400;text-decoration:none;transition:background-color .12s}.modal-detail-link:hover{background:var(--surface-2)}.char-page{display:flex;flex-direction:column;min-height:100vh}.cp-head{display:flex;justify-content:space-between;gap:16px;background:var(--brand-header);padding:calc(15px * var(--header-k)) var(--header-pad-inline);position:-webkit-sticky;position:sticky;top:0;z-index:100;min-height:var(--header-h);border-bottom:1px solid hsla(0,0%,100%,.14);box-shadow:0 6px 20px -8px rgba(38,33,27,.35)}.cp-back,.cp-head{align-items:center;color:#fff}.cp-back{display:inline-flex;gap:7px;text-decoration:none;font-size:13px;font-weight:600;opacity:.92;padding:7px 16px;border:1px solid hsla(0,0%,100%,.35);border-radius:999px;transition:background-color .15s;white-space:nowrap}.cp-back:hover{background:hsla(0,0%,100%,.14)}.cp-back svg{width:14px;height:14px}@media (max-width:600px){.cp-back{font-size:12px;padding:6px 12px}}.cp-main{width:100%;max-width:840px;margin:0 auto;padding:26px 20px 46px;flex:1 1}.cp-hero{position:relative;display:flex;align-items:center;gap:26px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-xl);padding:30px 32px;margin-bottom:20px;box-shadow:var(--shadow-s);overflow:hidden}.cp-hero:before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:var(--brand)}.cp-char{font-size:92px;line-height:1;color:var(--brand-dark);font-weight:700;font-family:var(--font-han);min-width:0;word-break:break-all}.cp-hero-info{display:flex;flex-direction:column;gap:6px;min-width:0}.cp-cp{font-size:26px;font-weight:800;color:var(--brand);font-family:var(--font-mono);letter-spacing:1px;display:inline-flex;align-items:center;gap:10px;flex-wrap:wrap}.cp-py{font-size:17px;color:var(--text-2);font-family:var(--font-han)}@media (max-width:600px){.cp-hero{flex-direction:column;text-align:center;padding:26px 20px;gap:14px}.cp-hero:before{width:100%;height:5px;bottom:auto}.cp-char{font-size:68px}.cp-cp{font-size:20px;justify-content:center}}.cp-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-l);padding:22px 24px;box-shadow:var(--shadow-s);margin-bottom:18px}.cp-card h2{display:flex;align-items:center;gap:10px;font-size:15px;font-weight:800;color:var(--brand-dark);margin-bottom:14px;padding-bottom:11px;border-bottom:1px solid var(--border);letter-spacing:.3px}.cp-card h2:before{content:"";width:4px;height:16px;border-radius:2px;background:var(--brand)}.cp-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:0 36px;gap:0 36px}@media (max-width:640px){.cp-grid{grid-template-columns:1fr}}.cp-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:8px 0;border-bottom:1px dashed var(--border);font-size:14px}.cp-row span{color:var(--text-3);width:66px;flex-shrink:0;font-size:12.5px}.cp-row b{color:var(--text);font-weight:700}.cp-row .cp-dec{font-size:12px;color:var(--text-3);font-style:normal;font-weight:400}.cp-row .cp-code{font-family:var(--font-mono);font-size:12.5px;font-weight:600;color:var(--brand-dark);background:var(--brand-soft);padding:2px 9px;border-radius:7px;word-break:break-all}.cp-safe{color:var(--ok)}.cp-warn{color:var(--warn)}.cp-row span.cp-lb{width:auto;min-width:66px;white-space:nowrap}.cp-norm .cp-n1{grid-column:1;grid-row:1}.cp-norm .cp-n2{grid-column:2;grid-row:1}.cp-norm .cp-n3{grid-column:2;grid-row:2}.cp-norm-2row .cp-n1{grid-row:1/span 2}.cp-norm .cp-stack{flex-direction:column;align-items:flex-start;justify-content:center;gap:3px}@media (max-width:640px){.cp-norm .cp-n1,.cp-norm .cp-n2,.cp-norm .cp-n3,.cp-norm-2row .cp-n1{grid-column:auto;grid-row:auto}}.cp-sub{display:block;font-size:12px;line-height:1.5;color:var(--text-3);font-style:normal;font-weight:400}.cp-vars{display:flex;flex-wrap:wrap;gap:4px 10px}.cp-vars a{display:inline-flex;align-items:baseline;gap:5px;color:var(--brand-dark);text-decoration:none;font-weight:600;border-bottom:1px solid transparent}.cp-vars a:hover{color:var(--brand);border-bottom-color:var(--brand)}.cp-vars .cp-vcode{font-family:var(--font-mono);font-size:11px;font-style:normal;font-weight:400;opacity:.6}.cp-vars .cp-var-offsite{display:inline-flex;align-items:baseline;gap:5px;color:var(--text-2);font-weight:600;border-bottom:1px dashed var(--border-strong)}.cp-mute{color:var(--text-3);font-weight:400}.cp-tag{display:inline-block;margin-left:8px;font-size:11.5px;font-weight:600;color:var(--brand-dark);white-space:nowrap}.cp-more{margin-top:10px}.cp-more>summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:var(--brand-dark);padding:6px 0}.cp-more>summary::-webkit-details-marker{display:none}.cp-more>summary:before{content:"▸";font-size:11px}.cp-more[open]>summary:before{content:"▾"}.cp-more>.cp-grid{margin-top:4px}.cp-danger{color:var(--danger)}.cp-verdict{margin-top:16px;padding:13px 15px;border-radius:var(--r);font-size:13px;line-height:1.75;background:var(--surface-2);border-left:3px solid var(--text-3);color:var(--text-2)}.cp-verdict.ok{background:var(--ok-bg);border-left-color:var(--ok);color:#14532d}.cp-verdict.warn{background:var(--warn-bg);border-left-color:var(--warn);color:#7c2d12}.cp-verdict.danger{background:var(--danger-bg);border-left-color:var(--danger);color:#7f1d1d}.cp-change2005{border-color:var(--warn-border)}.cp-change2005 h2{color:var(--warn)}.cp-change2005 h2:before{background:var(--warn)}.cp-change-desc{font-size:13px;color:var(--warn);margin-bottom:12px;line-height:1.7}.cp-change-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:0 36px;gap:0 36px;margin-bottom:14px}@media (max-width:640px){.cp-change-grid{grid-template-columns:1fr}}.cp-change-warn{margin-top:12px;padding:13px 15px;border-radius:var(--r);font-size:13px;line-height:1.75;color:#7c2d12;background:var(--warn-bg);border-left:3px solid var(--warn)}.cp-actions{display:flex;align-items:center;justify-content:center;gap:14px;flex-wrap:wrap;margin:20px 0 22px}.cp-actions .copy-big{background:var(--brand);color:#fff;border:none;height:46px;padding:0 30px;border-radius:var(--r);font-size:14px;font-weight:600;box-shadow:0 8px 18px -8px rgba(63,57,50,.55);display:inline-flex;align-items:center;gap:8px;transition:background-color .15s,transform .12s}.cp-actions .copy-big:hover{background:var(--brand-dark);transform:translateY(-1px)}.cp-actions .copy-big svg{width:16px;height:16px}.cp-search-link{font-size:13px;color:var(--brand);text-decoration:none;font-weight:600}.cp-search-link:hover{text-decoration:underline}.cp-nav{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px}.cp-nav-btn{display:inline-flex;align-items:center;gap:10px;text-decoration:none;padding:12px 16px;border-radius:var(--r-l);background:var(--surface);border:1px solid var(--border);color:var(--text);font-size:13px;box-shadow:var(--shadow-s);transition:border-color .15s,color .15s,background-color .15s,transform .12s,box-shadow .15s;max-width:42%}.cp-nav-btn:hover{border-color:var(--brand);color:var(--brand-dark);background:var(--surface);transform:translateY(-2px);box-shadow:var(--shadow-m)}.cp-nav-btn.disabled{visibility:hidden}.cp-nav-char{font-size:21px;font-family:var(--font-han);line-height:1}.cp-nav-cp{font-size:11px;color:var(--text-3);font-family:var(--font-mono)}.cp-nav-cp,.cp-nav-cp b{font-weight:700}.cp-nav-arrow{font-size:17px;color:var(--text-3);line-height:1}.cp-nav-btn:hover .cp-nav-arrow{color:var(--brand)}.cp-nav-cur{font-size:13px;color:var(--text-2);font-weight:700}@media (max-width:600px){.cp-nav-btn{padding:10px 12px;gap:6px}.cp-nav-char{font-size:18px}.cp-nav-cp{display:none}}footer{text-align:center;padding:16px;font-size:11px;color:var(--text-3)}footer a{color:var(--brand);text-decoration:none}footer a:hover{text-decoration:underline}#mainFooter{margin-top:auto;background:var(--surface);border-top:1px solid var(--border);padding:26px 24px 30px;text-align:center;font-size:12px;color:var(--text-2);line-height:1.9}#mainFooter .footer-desc{margin:0 auto 2px;max-width:720px}#mainFooter .footer-links{color:var(--text-3)}#mainFooter .footer-links a{color:var(--brand);text-decoration:none;font-weight:600}#mainFooter .footer-links a:hover{text-decoration:underline}@media (max-width:600px){#mainFooter{padding:22px 16px 26px;font-size:11px}}.print-only{display:none}@page{margin:0}@media print{html{-webkit-print-color-adjust:exact;print-color-adjust:exact}body{background:#fff;padding:24px 16px;display:block;min-height:auto}.probe-card,.stat{box-shadow:none}.export-btns,.no-print,.probe-header,.probe-tabs,.tabs,footer,header{display:none!important}.print-only{display:block!important}.wrap{padding:0}#reportArea table thead{display:table-header-group}#reportArea table tr{page-break-inside:avoid;break-inside:avoid}}