:root{--code-bg:#f8fafc;--code-text:#1f2937}[data-theme=dark]{--code-bg:#1e293b;--code-text:#e5e7eb}.code-block{margin:var(--space-6) 0;border-radius:var(--radius-md);overflow:visible;border:1px solid var(--color-border-default);background-color:#fff;transition:background-color var(--transition-base) var(--transition-timing),border-color var(--transition-base) var(--transition-timing);position:relative;margin-top:calc(var(--space-8) + 12px);margin-bottom:var(--space-8)}.code-block+.code-block{margin-top:calc(var(--space-10) + 12px)}[data-theme=dark] .code-block{background-color:var(--code-bg)}.code-block:hover{box-shadow:var(--shadow-md)}.code-block__header{display:flex;align-items:center;justify-content:space-between;padding:0;background:linear-gradient(180deg,#f0f3f7,#e8eef3);border-bottom:1px solid var(--color-border-default);position:relative;min-height:32px}[data-theme=dark] .code-block__header{background:linear-gradient(180deg,#2d3748,#1e293b)}.code-block__header-left{display:flex;align-items:center;flex:1 1;padding-left:var(--space-3)}.code-block__filename{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);color:var(--color-text-secondary);font-size:var(--text-xs);font-family:var(--font-mono);font-weight:var(--font-weight-medium)}.code-block__file-icon{width:14px;height:14px;color:var(--color-text-muted)}.code-block__language{display:inline-flex;align-items:center;padding:3px 10px;color:var(--color-text-muted);font-size:11px;font-family:var(--font-mono);font-weight:var(--font-weight-medium);text-transform:lowercase;letter-spacing:.3px;background-color:rgba(0,0,0,.05);border-radius:4px;transition:all var(--transition-base) var(--transition-timing)}[data-theme=dark] .code-block__language{background-color:hsla(0,0%,100%,.08);color:var(--color-text-secondary)}.code-block__copy{display:flex;align-items:center;gap:var(--space-2);padding:6px 16px;border:1px solid #c27803;border-bottom:none;color:#1a1a1a;font-size:12px;font-weight:var(--font-weight-semibold);cursor:pointer;transition:all .2s ease;top:-28px;right:16px;z-index:10;border-radius:6px 6px 0 0;box-shadow:0 -2px 4px rgba(0,0,0,.08),inset 0 1px 0 hsla(0,0%,100%,.25)}.code-block__copy,.code-block__copy:after{background:linear-gradient(180deg,#f59e0b,#d97706);position:absolute}.code-block__copy:after{content:"";bottom:-1px;left:0;right:0;height:2px}.code-block__copy:hover{background:linear-gradient(180deg,#fbbf24,#f59e0b);transform:translateY(-2px);box-shadow:0 -4px 8px rgba(245,158,11,.25),inset 0 1px 0 hsla(0,0%,100%,.3)}.code-block__copy:active{transform:translateY(0)}.code-block__copy:focus{outline:none;box-shadow:0 -2px 4px rgba(0,0,0,.08),inset 0 1px 0 hsla(0,0%,100%,.25),0 0 0 3px rgba(245,158,11,.4)}.code-block__copy:focus:not(:focus-visible){box-shadow:0 -2px 4px rgba(0,0,0,.08),inset 0 1px 0 hsla(0,0%,100%,.25)}.code-block__copy-icon{width:14px;height:14px;transition:all var(--transition-fast) var(--transition-timing);stroke-width:2}.code-block__copy--success .code-block__copy-icon--default,.code-block__copy-icon--success{display:none}.code-block__copy--success .code-block__copy-icon--success{display:block;color:#1a1a1a;animation:check-bounce .5s cubic-bezier(.68,-.55,.265,1.55)}@keyframes check-bounce{0%{transform:scale(.5) rotate(-45deg);opacity:0}50%{transform:scale(1.1) rotate(5deg)}to{transform:scale(1) rotate(0deg);opacity:1}}.code-block__copy-text{-webkit-user-select:none;-moz-user-select:none;user-select:none;font-weight:var(--font-weight-semibold)}.code-block__copy--success .code-block__copy-text,.code-block__copy-text--success{display:none}.code-block__copy--success .code-block__copy-text--success{display:inline;color:#1a1a1a}.code-block__copy--success{border-color:#15803d}.code-block__copy--success,.code-block__copy--success:after{background:linear-gradient(180deg,#22c55e,#16a34a)}.code-block__copy--success:hover{background:linear-gradient(180deg,#4ade80,#22c55e)}.code-block__content{overflow-x:auto;background-color:#f8fafc}.code-block__content,.code-block__content pre{transition:background-color var(--transition-base) var(--transition-timing)}.code-block__content pre{margin:0!important;background-color:var(--code-bg)!important}.code-block__content code{font-family:var(--font-mono)!important;background-color:transparent!important;color:var(--code-text)!important}.code-block .code-block__content pre>code,.code-block .code-block__content pre[class*=language-]{background:var(--code-bg)!important;color:var(--code-text)!important}.code-block .code-block__content code[class*=language-]{background:transparent!important;color:var(--code-text)!important}.code-block .code-block__content .hljs,.code-block .code-block__content code.hljs{background:var(--code-bg)!important;color:var(--code-text)!important}.code-block .code-block__content span,.code-block .code-block__content span[style]{background:transparent!important}.code-block .code-block__content pre,.code-block .code-block__content pre[style]{background:var(--code-bg)!important;color:var(--code-text)!important}.code-block .code-block__content code,.code-block .code-block__content code[style]{background:transparent!important;color:inherit!important}.code-block__content>div,.code-block__content>div>pre,.code-block__content>div>pre>code{background:var(--code-bg)!important;color:var(--code-text)!important;transition:background-color var(--transition-base) var(--transition-timing),color var(--transition-base) var(--transition-timing)}.code-block__content::-webkit-scrollbar{height:8px}.code-block__content::-webkit-scrollbar-track{background:var(--color-bg-tertiary)}.code-block__content::-webkit-scrollbar-thumb{background:var(--color-border-dark);border-radius:var(--radius-sm)}.code-block__content::-webkit-scrollbar-thumb:hover{background:var(--color-text-muted)}[data-theme=dark] .code-block{border-color:#4b5563;background-color:#0f172a}[data-theme=dark] .code-block__header{background-color:transparent;border-bottom-color:#4b5563}[data-theme=dark] .code-block__header-left{background:linear-gradient(180deg,#1e293b,#1a2332);border-bottom:1px solid hsla(0,0%,100%,.05)}[data-theme=dark] .code-block__filename{background-color:#1e293b;border-right-color:#4b5563}[data-theme=dark] .code-block__language{background-color:hsla(0,0%,100%,.05);border-color:#4b5563;opacity:.7}[data-theme=dark] .code-block__copy{background:linear-gradient(180deg,rgba(251,191,36,.95),rgba(251,191,36,.9));color:#1a1a1a;box-shadow:0 -2px 8px rgba(251,191,36,.25),0 2px 4px rgba(0,0,0,.3),inset 0 1px 0 hsla(0,0%,100%,.2)}[data-theme=dark] .code-block__copy:before{background:linear-gradient(180deg,hsla(0,0%,100%,.15),transparent 50%)}[data-theme=dark] .code-block__copy:hover{background:linear-gradient(180deg,#f59e0b,rgba(245,158,11,.95));box-shadow:0 -4px 12px rgba(251,191,36,.35),0 4px 8px rgba(0,0,0,.4),inset 0 1px 0 hsla(0,0%,100%,.25)}[data-theme=dark] .code-block__copy--success{background:linear-gradient(180deg,rgba(46,204,113,.95),rgba(46,204,113,.9));color:#1a1a1a;box-shadow:0 -2px 8px rgba(46,204,113,.3),0 2px 4px rgba(0,0,0,.3),inset 0 1px 0 hsla(0,0%,100%,.25)}[data-theme=dark] .code-block__copy--success:hover{background:linear-gradient(180deg,rgba(88,214,141,.95),rgba(88,214,141,.9));box-shadow:0 -4px 12px rgba(46,204,113,.4),0 4px 8px rgba(0,0,0,.4),inset 0 1px 0 hsla(0,0%,100%,.3)}[data-theme=dark] .code-block__content::-webkit-scrollbar-track{background:#0f172a}[data-theme=dark] .code-block__content::-webkit-scrollbar-thumb{background:var(--color-border-default)}@media (max-width:768px){.code-block__filename,.code-block__language{font-size:9px;padding:var(--space-1) var(--space-2)}.code-block__copy{padding:var(--space-2) var(--space-4);padding-left:var(--space-5);font-size:var(--text-xs)}.code-block__copy--success .code-block__copy-text--success,.code-block__copy-text{display:none}}@media (prefers-contrast:high){.code-block,.code-block__copy{border-width:2px}}@media print{.code-block{border:1px solid #000;page-break-inside:avoid}.code-block__copy{display:none}.code-block__content{overflow:visible}}@media (prefers-reduced-motion:reduce){.code-block,.code-block__copy,.code-block__copy-icon{transition:none}.code-block__copy--success .code-block__copy-icon--success{animation:none}.code-block__copy:active{transform:none}}.spec-table-wrapper{width:100%;overflow-x:auto;margin:var(--space-6) 0;border-radius:var(--radius-lg);border:1px solid var(--color-border-default);background-color:var(--color-bg-primary)}.spec-table{width:100%;border-collapse:collapse;font-size:var(--text-sm);line-height:var(--line-height-normal)}.spec-table thead{border-bottom:2px solid var(--color-border-default)}.spec-table thead,.spec-table thead tr{background-color:var(--color-bg-secondary)}.spec-table th{padding:var(--space-3) var(--space-4);text-align:left;font-weight:var(--font-weight-semibold);color:var(--color-text-primary);font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.05em;border-bottom:2px solid var(--color-border-default);white-space:nowrap}.spec-table tbody tr{border-bottom:1px solid var(--color-border-light);transition:all var(--transition-base) var(--transition-timing)}.spec-table tbody tr:last-child{border-bottom:none}.spec-table tbody tr:hover{background-color:var(--color-bg-secondary);box-shadow:inset 0 0 0 1px rgba(0,0,0,.05)}.spec-table td{padding:var(--space-3) var(--space-4);vertical-align:middle;transition:all var(--transition-fast) var(--transition-timing)}.spec-table td code,.spec-table th code{font-family:var(--font-mono);font-size:.9em;padding:.125rem .25rem;background-color:var(--color-bg-code);color:#e2e8f0;border-radius:var(--radius-sm);white-space:nowrap}.spec-table td strong,.spec-table th strong{font-weight:var(--font-weight-semibold);color:inherit}.spec-table td a,.spec-table th a{color:var(--color-link);text-decoration:none;transition:color var(--transition-fast) var(--transition-timing)}.spec-table td a:hover,.spec-table th a:hover{color:var(--color-link-hover);text-decoration:underline}.spec-table--compact td,.spec-table--compact th{padding:var(--space-2) var(--space-3)}.spec-table--compact{font-size:var(--text-xs)}.spec-table--striped tbody tr:nth-child(2n){background-color:var(--color-bg-secondary)}.spec-table--striped tbody tr:hover{background-color:var(--color-bg-tertiary)}.spec-table [style*="text-align: center"],.spec-table td[style*="text-align: center"],.spec-table th[style*="text-align: center"]{text-align:center}.spec-table [style*="text-align: right"],.spec-table td[style*="text-align: right"],.spec-table th[style*="text-align: right"]{text-align:right}@media (max-width:768px){.spec-table{font-size:var(--text-xs)}.spec-table td,.spec-table th{padding:var(--space-2) var(--space-3)}.spec-table--compact td,.spec-table--compact th{padding:var(--space-1) var(--space-2)}.spec-table td,.spec-table th{white-space:normal}}[data-theme=dark] .spec-table-wrapper{border-color:var(--color-border-light)}[data-theme=dark] .spec-table thead,[data-theme=dark] .spec-table thead tr{background-color:var(--color-bg-tertiary)}[data-theme=dark] .spec-table tbody tr{border-bottom-color:var(--color-border-light)}[data-theme=dark] .spec-table tbody tr:hover{background-color:var(--color-bg-tertiary);box-shadow:inset 0 0 0 1px hsla(0,0%,100%,.05)}[data-theme=dark] .spec-table--striped tbody tr:nth-child(2n){background-color:hsla(0,0%,100%,.02)}[data-theme=dark] .spec-table--striped tbody tr:hover{background-color:var(--color-bg-tertiary)}[data-theme=dark] .spec-table td code,[data-theme=dark] .spec-table th code{background-color:rgba(0,0,0,.3)}@media (prefers-contrast:high){.spec-table{border-width:2px}.spec-table td,.spec-table th{border-width:1px;border-style:solid;border-color:var(--color-border-default)}}@media print{.spec-table-wrapper{border:1px solid #000}.spec-table tbody tr,.spec-table-wrapper{page-break-inside:avoid}.spec-table tbody tr:hover{background-color:transparent;box-shadow:none}}@media (prefers-reduced-motion:reduce){.spec-table tbody tr,.spec-table td{transition:none}.spec-table tbody tr:hover{transform:none}}.spec-table tbody tr:hover td[style*=background-color]{background-color:var(--cell-bg)!important}.spec-table tbody tr[style*=background-color] td{color:inherit}