@font-face{font-family:Google Sans;src:local("Google Sans"),local("Google Sans Text"),local("Product Sans");font-display:swap}@font-face{font-family:Google Sans Code;src:local("Google Sans Code"),local("Google Sans Mono"),local("Google Sans Text Mono");font-display:swap}:root{color-scheme:dark;--bg: #1d1d1d;--bg-elevated: #242424;--panel: #2a2a2a;--panel-2: #303030;--panel-3: #353535;--line: #454545;--line-strong: #565656;--text: #dfdfdf;--muted: #adadad;--muted-2: #8a8a8a;--accent: #58a6c4;--accent-soft: rgba(88, 166, 196, .16);--selection: rgba(88, 166, 196, .2);--selection-strong: rgba(88, 166, 196, .34);--match: rgba(160, 196, 84, .16);--match-strong: rgba(160, 196, 84, .28);--shadow: 0 10px 24px rgba(0, 0, 0, .22);--mono: "Google Sans Code", "IBM Plex Mono", "SFMono-Regular", "Menlo", monospace;--sans: "Google Sans", "Google Sans Text", "Avenir Next", "Inter", "Segoe UI", sans-serif}:root[data-theme=light]{color-scheme:light;--bg: #ececec;--bg-elevated: #f5f5f5;--panel: #fcfcfc;--panel-2: #f6f6f6;--panel-3: #efefef;--line: #d8d8d8;--line-strong: #c4c4c4;--text: #1f2328;--muted: #59616a;--muted-2: #7a828a;--accent: #236f8e;--accent-soft: rgba(35, 111, 142, .12);--selection: rgba(35, 111, 142, .12);--selection-strong: rgba(35, 111, 142, .22);--match: rgba(120, 154, 39, .12);--match-strong: rgba(120, 154, 39, .22);--shadow: 0 8px 18px rgba(0, 0, 0, .06)}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--sans)}button,input,textarea,select{font:inherit}button{color:inherit}.app-shell{height:100vh;min-height:100vh;padding:10px;display:grid;grid-template-rows:auto minmax(0,1fr);background:linear-gradient(180deg,rgba(255,255,255,.02),transparent 120px),var(--bg);overflow:hidden}.panel{background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow)}.topbar{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:8px 12px;margin-bottom:10px;min-height:62px}.topbar-brand{display:flex;align-items:center;gap:12px;min-width:0}.brand-mark{width:34px;height:34px;display:grid;place-items:center;border-radius:0;background:linear-gradient(135deg,var(--accent-soft),transparent);border:1px solid var(--line-strong);color:var(--text);font-family:var(--mono);font-size:.84rem;letter-spacing:.08em}.eyebrow{margin:0 0 2px;font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted-2)}.topbar h1{margin:0;font-size:1.18rem;font-weight:600;letter-spacing:-.02em}.command-strip{display:flex;align-items:stretch;gap:6px;flex-wrap:wrap;justify-content:flex-end}.tool-button{min-width:68px;border:1px solid transparent;background:transparent;border-radius:0;padding:6px 10px;display:grid;gap:4px;place-items:center;cursor:pointer;text-align:center;transition:background-color .12s ease,border-color .12s ease,color .12s ease}.tool-button:hover,.tool-button:focus-visible{background:var(--panel-2);border-color:var(--line);outline:none}.tool-button__icon{font-size:1rem;line-height:1;color:var(--text)}.tool-button__label{font-size:.73rem;color:var(--muted)}.file-picker{position:relative;overflow:hidden}.file-picker input{position:absolute;inset:0;opacity:0;pointer-events:none}.workbench{display:grid;grid-template-columns:320px minmax(0,1fr) 340px;gap:10px;align-items:stretch;min-height:0;overflow:hidden}.rail{display:grid;gap:10px;align-content:start;min-height:0;overflow:auto}.rail-panel,.editor-shell{min-height:0}.rail-panel{padding:0;overflow:hidden}.compact-header{padding:8px 12px;margin:0;border-bottom:1px solid var(--line);background:var(--panel-3)}.panel-title{margin:0;font-size:.9rem;font-weight:600}.panel-subtitle{margin:3px 0 0;color:var(--muted);font-size:.76rem;line-height:1.35}.info-table{display:grid;gap:0;margin:0;padding:8px 12px 10px}.info-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(120px,1.2fr);gap:0;width:100%;margin:0;padding:0;border:0;background:transparent;color:inherit;text-align:left}.info-row__label,.info-row__value{padding:7px 0;border-bottom:1px solid var(--line);min-width:0}.info-row__label{color:var(--muted);font-size:.79rem;padding-right:10px}.info-row__value{text-align:right;font-family:var(--mono);font-size:.82rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.info-table.is-interactive .info-row{cursor:pointer;border-radius:0;transition:background-color .12s ease}.info-table.is-interactive .info-row:hover,.info-table.is-interactive .info-row:focus-visible{background:var(--panel-2);outline:none}.inspector-section+.inspector-section{border-top:1px solid var(--line)}.section-title{margin:0;padding:8px 12px 0;color:var(--muted-2);font-size:.7rem;letter-spacing:.08em;text-transform:uppercase}.inspector-section .info-table{padding-top:4px}.inspector-editor{display:grid;padding:4px 12px 10px}.inspector-entry{display:grid;grid-template-columns:minmax(0,1fr) minmax(140px,1.25fr);gap:10px;align-items:start;padding:6px 0;border-bottom:1px solid var(--line)}.inspector-entry.is-stacked{align-items:stretch}.inspector-entry__label{padding:0;border:0;background:transparent;color:var(--muted);text-align:left;font-size:.79rem;cursor:pointer}.inspector-entry__label:hover,.inspector-entry__label:focus-visible{color:var(--text);outline:none}.inspector-entry__fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.inspector-entry__fields.is-single,.inspector-entry.is-stacked .inspector-entry__fields{grid-template-columns:1fr}.line-field{display:grid;gap:3px}.line-field span{color:var(--muted-2);font-size:.64rem;letter-spacing:.06em;text-transform:uppercase}.line-input{width:100%;padding:1px 0 3px;border:0;border-bottom:1px solid var(--line-strong);border-radius:0;background:transparent;color:var(--text);font-family:var(--mono);font-size:.74rem}.line-input:focus-visible{box-shadow:none;border-bottom-color:var(--accent)}.editor-shell{display:grid;grid-template-rows:auto auto auto minmax(0,1fr) auto;min-height:0;height:100%;overflow:hidden}.editor-titlebar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0;border-bottom:1px solid var(--line);background:var(--panel-3)}.tab-strip{display:flex;align-items:stretch;min-width:0}.editor-tab{max-width:320px;padding:10px 14px;border-right:1px solid var(--line);font-size:.86rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--muted)}.editor-tab.is-active{color:var(--text);background:var(--panel)}.editor-metadata{display:flex;flex-wrap:wrap;gap:12px;padding:0 12px;font-size:.74rem;color:var(--muted)}.editor-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 12px;border-bottom:1px solid var(--line)}.toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.compact-toolbar{gap:6px}.toolbar-field{display:inline-grid;grid-template-columns:auto auto;align-items:center;gap:6px;margin-left:6px}.toolbar-field span{color:var(--muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.08em}.bytes-input{width:70px;min-height:28px;padding:4px 8px}.toolbar-hint{margin:0;color:var(--muted);font-size:.74rem;text-align:right}.rail .panel-title{font-size:.84rem}.rail .panel-subtitle,.rail .summary-text,.rail .section-title,.rail .form-grid span,.rail .stack-field span{font-size:.68rem}.rail .info-row__label{font-size:.74rem}.rail .info-row__value,.rail .inspector-entry__label,.rail .line-input,.rail .result-pill,.rail input,.rail select,.rail textarea{font-size:.76rem}.button{display:inline-flex;align-items:center;justify-content:center;min-height:30px;border:1px solid var(--line-strong);background:linear-gradient(180deg,var(--panel-3),var(--panel-2));color:var(--text);border-radius:0;padding:6px 12px;cursor:pointer;transition:background-color .12s ease,border-color .12s ease}.button:hover,.button:focus-visible{background:linear-gradient(180deg,var(--panel),var(--panel-3));border-color:var(--accent);outline:none}.button-primary{background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 40%,var(--panel-3)),color-mix(in srgb,var(--accent) 24%,var(--panel)));border-color:color-mix(in srgb,var(--accent) 60%,var(--line))}.button-primary:hover,.button-primary:focus-visible{border-color:var(--accent)}.button-small{min-height:28px;padding:5px 10px;font-size:.8rem}.hex-grid-header{display:grid;gap:4px;align-items:center;padding:3px 8px;border-bottom:1px solid var(--line);font-size:.7rem;color:var(--muted);letter-spacing:.08em;text-transform:uppercase}.hex-grid-ruler{display:grid;gap:1px;font-family:var(--mono);width:max-content}.hex-grid-ruler span{text-align:center;width:20px}.hex-viewport{position:relative;min-height:480px;overflow:auto;background:linear-gradient(180deg,rgba(255,255,255,.01),transparent),var(--panel)}.hex-viewport:focus-visible{outline:none;box-shadow:inset 0 0 0 1px var(--accent)}.hex-spacer{position:relative;min-height:100%}.hex-rows{position:absolute;inset:0 0 auto}.hex-row{position:absolute;left:0;right:0;display:grid;gap:4px;align-items:center;min-height:22px;padding:0 8px}.offset-cell{font-family:var(--mono);color:var(--muted);font-size:.9rem}.byte-grid,.ascii-grid{display:grid;gap:1px;width:max-content}.byte-cell,.ascii-cell{height:20px;display:grid;place-items:center;border:1px solid transparent;border-radius:0;font-family:var(--mono);font-size:.84rem;line-height:1;-webkit-user-select:none;user-select:none;cursor:default}.byte-cell{color:var(--text);width:20px}.ascii-cell{color:var(--muted);width:10px}.byte-cell.is-selection,.ascii-cell.is-selection{background:var(--selection);border-color:transparent}.byte-cell.is-match,.ascii-cell.is-match{background:var(--match)}.byte-cell.is-active-match,.ascii-cell.is-active-match{background:var(--match-strong)}.byte-cell.is-cursor,.ascii-cell.is-cursor{background:var(--selection-strong);border-color:color-mix(in srgb,var(--accent) 60%,transparent)}.byte-cell.is-hovered,.ascii-cell.is-hovered{border-color:var(--accent)}.byte-cell:hover,.ascii-cell:hover{border-color:var(--line-strong)}.statusline{display:flex;gap:14px;flex-wrap:wrap;align-items:center;padding:7px 12px;border-top:1px solid var(--line);color:var(--muted);font-size:.74rem;background:var(--panel-3)}.compact-grid{padding:10px 12px 12px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.form-grid label,.stack-field{display:grid;gap:5px}.wide{grid-column:1 / -1}.form-grid span,.stack-field span{color:var(--muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.08em}input,select,textarea{width:100%;border:1px solid var(--line-strong);border-radius:0;background:var(--bg-elevated);color:var(--text);padding:7px 9px}textarea{resize:vertical;min-height:88px}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.summary-text{margin:8px 12px 0;color:var(--muted);font-size:.76rem}.results-list{display:grid;gap:6px;max-height:220px;overflow:auto;padding:10px 12px 12px}.compact-results{max-height:260px}.result-pill{display:flex;justify-content:space-between;gap:10px;align-items:center;border-radius:0;border:1px solid var(--line);background:var(--bg-elevated);padding:7px 8px;font-family:var(--mono);font-size:.78rem;cursor:pointer}.result-pill.is-active{border-color:var(--accent);background:var(--accent-soft)}.result-pill strong{font-weight:500}.export-preview{font-family:var(--mono);font-size:.79rem}.inline-form{display:flex;gap:6px}.inline-form input{flex:1}@media(max-width:1380px){.workbench{grid-template-columns:280px minmax(0,1fr) 310px}.hex-grid-header,.hex-row{grid-template-columns:88px minmax(0,1fr) 180px}}@media(max-width:1120px){.workbench{grid-template-columns:1fr}.rail{grid-template-columns:repeat(2,minmax(0,1fr))}.editor-shell{min-height:72vh}}@media(max-width:760px){.app-shell{padding:8px}.topbar,.editor-toolbar,.editor-titlebar{flex-direction:column;align-items:stretch}.command-strip,.rail,.form-grid{grid-template-columns:1fr}.rail{display:grid}.hex-grid-header,.hex-row{grid-template-columns:88px minmax(0,1fr)}.hex-grid-header>:last-child,.hex-row>:last-child{display:none}.toolbar-hint,.editor-metadata{text-align:left}}
