.tool-main{flex:1;display:flex;flex-direction:column;width:100%;max-width:100%;padding:0;overflow:hidden}.tool-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1.5rem;flex-wrap:wrap;padding:1.5rem 2rem;border-bottom:1px solid var(--color-border);background-color:var(--color-surface-raised);flex-shrink:0}.tool-header__title{display:flex;flex-direction:column;gap:.25rem}.tool-title{font-size:1.3rem;font-weight:700;color:var(--color-text-title);margin:0}.tool-subtitle{font-size:.85rem;color:var(--color-text-muted);margin:0}.tool-header__actions{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.action-btn{padding:.4rem .9rem;background:var(--color-accent);border:none;border-radius:6px;color:#0f0f0f;font-size:.82rem;font-weight:600;cursor:pointer;transition:opacity .15s;display:inline-flex;align-items:center;gap:.3rem}.action-btn:hover{opacity:.85}.action-btn--ghost{background:transparent;border:1px solid var(--color-border);color:var(--color-text-secondary)}.action-btn--ghost:hover{border-color:var(--color-accent);color:var(--color-text-primary)}.ad-workspace{flex:1;display:flex;flex-direction:column;overflow:hidden;min-height:0}.ad-input-panel{display:flex;flex-direction:column;flex-shrink:0;border-bottom:1px solid var(--color-border)}.ad-input-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;padding:.55rem 1rem;background:var(--color-surface-raised);border-bottom:1px solid var(--color-border)}.ad-input-label{display:flex;align-items:center;gap:.4rem;font-size:.78rem;font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.04em}.ad-input-label__hint{font-weight:400;text-transform:none;letter-spacing:0;color:var(--color-text-muted)}.ad-input-toolbar__actions{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap}.ad-sample-label{font-size:.76rem;color:var(--color-text-muted)}.ad-sample-btn{padding:.2rem .6rem;background:transparent;border:1px solid var(--color-border);border-radius:4px;color:var(--color-text-secondary);font-size:.75rem;cursor:pointer;transition:border-color .15s,color .15s;white-space:nowrap}.ad-sample-btn:hover{border-color:var(--color-accent);color:var(--color-accent)}.ad-drop-zone{position:relative}.ad-input-textarea{display:block;width:100%;height:130px;padding:.75rem 1rem;background:var(--color-surface-deep);border:none;border-radius:0;color:var(--color-text-primary);font-family:Menlo,Monaco,Consolas,Courier New,monospace;font-size:.8rem;line-height:1.55;resize:vertical;box-sizing:border-box;outline:none}.ad-input-textarea::placeholder{color:var(--color-text-faint)}.ad-drop-overlay{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;background:color-mix(in srgb,var(--color-surface) 88%,transparent);color:var(--color-accent);font-size:.9rem;font-weight:500;pointer-events:none;opacity:0;transition:opacity .15s}.ad-drop-overlay--visible{opacity:1;pointer-events:auto}.ad-error{display:none;align-items:center;gap:.4rem;padding:.4rem 1rem;background:color-mix(in srgb,var(--color-danger) 12%,transparent);color:var(--color-danger);font-size:.8rem;border-top:1px solid color-mix(in srgb,var(--color-danger) 30%,transparent)}.ad-error--visible{display:flex}.ad-hidden{display:none!important}.ad-output-panels{flex:1;display:flex;flex-direction:column;min-height:0;overflow:hidden}.ad-stats-bar{flex-shrink:0}.ad-stats{display:flex;align-items:center;gap:0;padding:.4rem 1rem;background:var(--color-surface-raised);border-bottom:1px solid var(--color-border);flex-wrap:wrap}.ad-stats__item{display:flex;align-items:center;gap:.35rem;padding:0 .75rem;border-right:1px solid var(--color-border);font-size:.78rem}.ad-stats__item:first-child{padding-left:0}.ad-stats__item:last-child{border-right:none}.ad-stats__key{color:var(--color-text-muted)}.ad-stats__val{color:var(--color-text-primary);font-weight:500;font-family:Menlo,Monaco,Consolas,Courier New,monospace;font-size:.77rem}.ad-panels-split{flex:1;display:flex;min-height:0;overflow:hidden}.ad-tree-panel{flex:1;min-width:0;display:flex;flex-direction:column;border-right:1px solid var(--color-border);overflow:hidden}.ad-panel-header{flex-shrink:0;display:flex;align-items:center;gap:.35rem;padding:.4rem .75rem;background:var(--color-surface-raised);border-bottom:1px solid var(--color-border);font-size:.75rem;font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.04em}.ad-panel-header__hint{font-weight:400;text-transform:none;letter-spacing:0;color:var(--color-text-muted);font-size:.72rem}.ad-tree-scroll{flex:1;overflow:auto;padding:.25rem 0}.ad-tree-scroll::-webkit-scrollbar{width:6px;height:6px}.ad-tree-scroll::-webkit-scrollbar-track{background:transparent}.ad-tree-scroll::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:3px}.ad-tree-scroll::-webkit-scrollbar-thumb:hover{background:var(--color-text-faint)}.ad-node{font-size:0}.ad-node-row{display:flex;align-items:center;gap:.35rem;padding:.18rem .5rem .18rem calc(.5rem + var(--depth, 0) * 1.1rem);cursor:default;font-size:.8rem;line-height:1.4;min-height:1.8rem;transition:background .1s;flex-wrap:wrap;border-left:2px solid transparent}.ad-node-row--expandable{cursor:pointer}.ad-node-row:hover{background:color-mix(in srgb,var(--color-border) 40%,transparent)}.ad-node-row--selected{background:color-mix(in srgb,var(--color-accent-bg) 60%,transparent)!important;border-left-color:var(--color-accent)}.ad-chevron{display:inline-flex;align-items:center;flex-shrink:0;width:16px;color:var(--color-text-muted);transition:transform .15s}.ad-chevron--open{transform:rotate(90deg)}.ad-chevron--leaf{visibility:hidden}.ad-tag{display:inline-block;flex-shrink:0;padding:0 .4rem;border-radius:3px;font-size:.7rem;font-weight:600;font-family:Menlo,Monaco,Consolas,Courier New,monospace;line-height:1.7;white-space:nowrap}.ad-tag-universal{background:color-mix(in srgb,var(--color-accent) 18%,transparent);color:var(--color-accent)}.ad-tag-context{background:color-mix(in srgb,#a78bfa 14%,transparent);color:#a78bfa}.ad-tag-application{background:color-mix(in srgb,#34d399 14%,transparent);color:#34d399}.ad-tag-private{background:color-mix(in srgb,var(--color-warning) 14%,transparent);color:var(--color-warning)}[data-theme=light] .ad-tag-universal{background:#e0edff;color:#1a56a0}[data-theme=light] .ad-tag-context{background:#ede9fe;color:#5b21b6}[data-theme=light] .ad-tag-application{background:#d1fae5;color:#065f46}[data-theme=light] .ad-tag-private{background:#fef3c7;color:#92400e}.ad-size-chip{font-size:.68rem;color:var(--color-text-faint);font-family:Menlo,Monaco,Consolas,Courier New,monospace;flex-shrink:0}.ad-child-count{font-size:.7rem;color:var(--color-text-muted);background:color-mix(in srgb,var(--color-border) 60%,transparent);padding:0 .35rem;border-radius:3px;flex-shrink:0}.ad-child-count--nested{color:var(--color-warning);background:color-mix(in srgb,var(--color-warning) 12%,transparent)}.ad-badge{font-size:.65rem;font-weight:600;padding:0 .35rem;border-radius:3px;flex-shrink:0}.ad-badge--warn{background:color-mix(in srgb,var(--color-warning) 18%,transparent);color:var(--color-warning)}.ad-badge--info{background:color-mix(in srgb,var(--color-accent) 14%,transparent);color:var(--color-accent)}.ad-decoded{font-family:Menlo,Monaco,Consolas,Courier New,monospace;font-size:.74rem;color:var(--color-text-secondary);white-space:pre-wrap;word-break:break-all;flex:1;min-width:0}.ad-decoded-oid{display:inline-flex;align-items:baseline;gap:.4rem;flex-wrap:wrap}.ad-oid-dotted{color:var(--color-text-secondary)}.ad-oid-label{font-size:.7rem;color:var(--color-accent);background:color-mix(in srgb,var(--color-accent) 10%,transparent);padding:0 .35rem;border-radius:3px}.ad-hex-preview{font-family:Menlo,Monaco,Consolas,Courier New,monospace;font-size:.72rem;color:var(--color-text-faint);flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ad-meta{margin-left:auto;font-family:Menlo,Monaco,Consolas,Courier New,monospace;font-size:.68rem;color:var(--color-text-faint);white-space:nowrap;flex-shrink:0}.ad-children{font-size:.8rem}.ad-children--nested{border-left:2px dashed color-mix(in srgb,var(--color-warning) 40%,transparent);margin-left:1.5rem}.ad-nested-label{display:flex;align-items:center;gap:.3rem;padding:.2rem .75rem;font-size:.7rem;color:var(--color-warning);font-style:italic}.ad-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;padding:3rem 2rem;text-align:center;color:var(--color-text-faint)}.ad-placeholder p{margin:0;font-size:.88rem;color:var(--color-text-muted)}.ad-placeholder__sub{font-size:.78rem!important;color:var(--color-text-faint)!important;max-width:460px}.ad-hex-panel-wrap{width:420px;flex-shrink:0;display:flex;flex-direction:column;overflow:hidden;background:var(--color-surface-deep)}.ad-hex-scroll{flex:1;overflow:auto;padding:.25rem 0}.ad-hex-scroll::-webkit-scrollbar{width:6px;height:6px}.ad-hex-scroll::-webkit-scrollbar-track{background:transparent}.ad-hex-scroll::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:3px}.ad-hex-scroll::-webkit-scrollbar-thumb:hover{background:var(--color-text-faint)}.ad-hex-panel{padding:.25rem .5rem;font-family:Menlo,Monaco,Consolas,Courier New,monospace;font-size:.72rem;line-height:1.6;color:var(--color-text-secondary)}.ad-hex-row{display:flex;gap:.75rem;padding:0 .25rem;white-space:pre}.ad-hex-row:hover{background:color-mix(in srgb,var(--color-border) 25%,transparent)}.ad-hex-offset{color:var(--color-text-faint);flex-shrink:0;-webkit-user-select:none;user-select:none}.ad-hex-bytes{display:flex;gap:.2rem;flex-wrap:nowrap}.ad-hex-bytes span{display:inline-block;width:1.6ch;text-align:center}.ad-hex-gap{display:inline-block;width:.5ch!important}.ad-hex-ascii{color:var(--color-text-muted);border-left:1px solid var(--color-border);padding-left:.5rem;letter-spacing:.05em}.ad-hex-pad{color:transparent!important;-webkit-user-select:none;user-select:none}.ad-hex-hi{background:color-mix(in srgb,var(--color-accent) 28%,transparent);color:var(--color-accent)!important;border-radius:2px}@media(max-width:900px){.ad-hex-panel-wrap{width:320px}}@media(max-width:700px){.ad-panels-split{flex-direction:column}.ad-hex-panel-wrap{width:100%;max-height:220px;border-top:1px solid var(--color-border);border-right:none}.ad-tree-panel{border-right:none}.ad-input-toolbar{flex-direction:column;align-items:flex-start}}
