:root{--ink:#16181d;--ink-soft:#545a66;--ink-faint:#7c8493;--line:#e2e5ea;--line-soft:#eef0f4;--bg:#f6f7f9;--surface:#fff;--brand:#1f4fd8;--brand-dark:#1b41b0;--brand-wash:#eef2fe;--danger:#c0392f;--danger-wash:#fdf0ee;--warn:#8a5a00;--warn-wash:#fff8e6;--ok:#17693f;--radius:8px;--shadow:0 1px 2px #1018280f, 0 1px 3px #1018280a;color:var(--ink);background:var(--bg);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}*{box-sizing:border-box}body{-webkit-font-smoothing:antialiased;margin:0;font-size:14px;line-height:1.5}h1,h2,h3{margin:0;line-height:1.25}code{background:var(--line-soft);border-radius:4px;padding:.1em .35em;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.92em}:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.app{flex-direction:column;min-height:100vh;display:flex}.topbar{background:var(--surface);border-bottom:1px solid var(--line);z-index:20;flex-wrap:wrap;align-items:center;gap:20px;padding:12px 20px;display:flex;position:sticky;top:0}.topbar__brand{align-items:center;gap:10px;display:flex}.topbar__mark{background:linear-gradient(135deg, var(--brand), #6a5cf0);border-radius:6px;flex:none;width:26px;height:26px}.topbar__title{letter-spacing:-.01em;font-size:15px;font-weight:650}.topbar__sub{color:var(--ink-faint);margin:0;font-size:11.5px}.topbar__actions{flex-wrap:wrap;align-items:center;gap:8px;margin-left:auto;display:flex}.dirty{color:var(--ink-faint);background:var(--line-soft);white-space:nowrap;border-radius:999px;padding:3px 9px;font-size:12px}.dirty--on{background:var(--warn-wash);color:var(--warn);font-weight:550}.filepicker{background:var(--line-soft);border-radius:var(--radius);gap:2px;padding:3px;display:flex}.filepicker__btn{font:inherit;color:var(--ink-soft);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:6px 14px;font-size:13px;font-weight:500}.filepicker__btn:hover{color:var(--ink)}.filepicker__btn--on{background:var(--surface);color:var(--ink);box-shadow:var(--shadow);font-weight:600}.tabbar{background:var(--surface);border-bottom:1px solid var(--line);z-index:15;flex-wrap:wrap;align-items:center;gap:4px;padding:0 20px;display:flex;position:sticky;top:61px}.tabbar__tab{font:inherit;color:var(--ink-faint);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;align-items:center;gap:6px;padding:11px 12px;font-size:13px;font-weight:550;display:flex}.tabbar__tab:hover{color:var(--ink)}.tabbar__tab--on{color:var(--brand);border-bottom-color:var(--brand)}.tabbar__count{background:var(--brand);color:#fff;border-radius:999px;justify-content:center;align-items:center;min-width:17px;height:17px;padding:0 5px;font-size:11px;font-weight:650;display:inline-flex}.tabbar__source{color:var(--ink-faint);margin:0 0 0 auto;padding:8px 0;font-size:11.5px}.layout{align-items:flex-start;gap:28px;width:100%;max-width:1280px;margin:0 auto;padding:24px 20px 64px;display:flex}.sidenav{flex:none;width:190px;position:sticky;top:110px}.sidenav ul{flex-direction:column;gap:1px;margin:0;padding:0;list-style:none;display:flex}.sidenav a{color:var(--ink-soft);border-radius:6px;padding:6px 10px;font-size:13px;text-decoration:none;display:block}.sidenav a:hover{background:var(--surface);color:var(--ink)}.content{flex-direction:column;flex:1;gap:20px;min-width:0;display:flex}.footnote{color:var(--ink-faint);text-align:center;margin:0;font-size:12px}.section{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:20px;scroll-margin-top:120px}.section__header{margin-bottom:16px}.section__title{letter-spacing:-.01em;font-size:15px;font-weight:650}.section__description{color:var(--ink-faint);max-width:62ch;margin:4px 0 0;font-size:12.5px}.field-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.field{flex-direction:column;gap:5px;min-width:0;display:flex}.field--full{grid-column:1/-1}.field--half{grid-column:span 1}.field__label{color:var(--ink-soft);align-items:center;gap:7px;font-size:12px;font-weight:600;display:flex}.field__badge{text-transform:uppercase;letter-spacing:.04em;color:var(--brand);background:var(--brand-wash);border-radius:3px;padding:1px 5px;font-size:9.5px;font-weight:600}.control{width:100%;font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--line);resize:vertical;border-radius:6px;padding:7px 10px}.control:hover{border-color:#cfd4dc}.control:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-wash);outline:none}.control--mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12.5px}.field__help,.field__meta{color:var(--ink-faint);margin:0;font-size:11.5px}.field__meta--warn{color:var(--warn)}.field__error{color:var(--danger)}.color-input{align-items:center;gap:8px;display:flex}.color-input input[type=color]{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:6px;flex:none;width:38px;height:34px;padding:2px}.subgroup{border:1px solid var(--line-soft);background:#fcfcfd;border-radius:8px;grid-column:1/-1;margin:0;padding:14px}.subgroup__legend{text-transform:uppercase;letter-spacing:.05em;color:var(--ink-faint);padding:0 6px;font-size:11px;font-weight:650}.media-preview{min-height:110px;margin-top:2px}.media-preview img,.media-preview video{border:1px solid var(--line);background:var(--line-soft);border-radius:6px;max-width:200px;max-height:110px;display:block}.media-preview--error img,.media-preview--error video{display:none}.media-preview__note{color:var(--ink-faint);margin:0;font-size:11.5px}.section>.field-grid+.array-editor{border-top:1px solid var(--line-soft);margin-top:18px;padding-top:18px}.array-list{flex-direction:column;gap:8px;margin:0 0 14px;padding:0;list-style:none;display:flex}.card{border:1px solid var(--line);background:var(--surface);border-radius:8px;overflow:hidden}.card--open{box-shadow:var(--shadow);border-color:#cdd7f5}.card__bar{background:#fcfcfd;align-items:center;gap:8px;padding:6px 8px 6px 4px;display:flex}.card--open .card__bar{border-bottom:1px solid var(--line-soft);background:var(--brand-wash)}.card__toggle{min-width:0;font:inherit;text-align:left;cursor:pointer;color:var(--ink);background:0 0;border:0;border-radius:6px;flex:1;align-items:center;gap:9px;padding:5px 6px;display:flex}.card__chevron{color:var(--ink-faint);flex:none;width:10px;font-size:11px}.card__index{color:var(--ink-faint);background:var(--line-soft);text-align:center;border-radius:4px;flex:none;min-width:19px;padding:1px 4px;font-size:11px;font-weight:650}.card__title{text-overflow:ellipsis;white-space:nowrap;font-weight:550;overflow:hidden}.card__variant{color:var(--ink-faint);border:1px solid var(--line);background:var(--surface);border-radius:999px;flex:none;padding:1px 7px;font-size:10.5px}.card__actions{flex:none;gap:2px;display:flex}.card__body{padding:16px}.icon-btn{cursor:pointer;width:26px;height:26px;color:var(--ink-soft);background:0 0;border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;font-size:13px;line-height:1;display:inline-flex}.icon-btn:hover:not(:disabled){background:var(--surface);border-color:var(--line);color:var(--ink)}.icon-btn:disabled{opacity:.3;cursor:default}.icon-btn--danger:hover:not(:disabled){background:var(--danger-wash);color:var(--danger);border-color:#f0c8c2}.array-editor__add{flex-wrap:wrap;gap:8px;display:flex}.confirm{background:var(--danger-wash);border-top:1px solid #f3d5d0;flex-wrap:wrap;align-items:center;gap:14px;padding:10px 14px;display:flex}.confirm p{margin:0;font-size:13px}.confirm__actions{gap:8px;margin-left:auto;display:flex}.btn{font:inherit;border:1px solid var(--brand);background:var(--brand);color:#fff;cursor:pointer;white-space:nowrap;border-radius:6px;padding:7px 14px;font-size:13px;font-weight:550}.btn:hover:not(:disabled){background:var(--brand-dark);border-color:var(--brand-dark)}.btn:disabled{opacity:.45;cursor:default}.btn--quiet{background:var(--surface);border-color:var(--line);color:var(--ink-soft)}.btn--quiet:hover:not(:disabled){background:var(--surface);color:var(--ink);border-color:#cfd4dc}.btn--danger{background:var(--danger);border-color:var(--danger)}.btn--danger:hover:not(:disabled){background:#a5302a;border-color:#a5302a}.state{justify-content:center;padding:64px 20px;display:flex}.state__msg{color:var(--ink-faint)}.notice{border-radius:8px;max-width:60ch;padding:16px 18px;font-size:13px}.notice h2{margin-bottom:6px;font-size:14px}.notice p{margin:0 0 10px}.notice--error{background:var(--danger-wash);color:#7d241e;border:1px solid #f0c8c2}.notice--warn{background:var(--warn-wash);color:var(--warn);border:1px solid #f0dfb0;margin:0 0 12px}.notice__hint{color:var(--ink-soft)}.empty{color:var(--ink-faint);margin:0 0 12px;font-size:13px;font-style:italic}.content--wide{max-width:none}.json-tab__bar{flex-wrap:wrap;align-items:center;gap:14px;margin-bottom:10px;display:flex}.json-tab__status{color:var(--ok);margin:0;font-size:12.5px;font-weight:550}.json-tab__status--bad{color:var(--danger)}.json-tab__actions{gap:8px;margin-left:auto;display:flex}.json-tab__editor{tab-size:2;border:1px solid var(--line);background:var(--surface);resize:vertical;border-radius:8px;width:100%;min-height:62vh;padding:14px 16px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12.5px;line-height:1.6}.json-tab__editor:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-wash);outline:none}.changes__lede{color:var(--ink-soft);margin:0 0 14px;font-size:13px}.changes__list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.change{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:12px 14px}.change__head{flex-wrap:wrap;align-items:center;gap:9px;margin-bottom:8px;display:flex}.change__path{font-size:12.5px;font-weight:600}.tag{text-transform:uppercase;letter-spacing:.04em;border-radius:999px;flex:none;padding:2px 7px;font-size:10px;font-weight:650}.tag--added{color:var(--ok);background:#e6f5ec}.tag--removed{background:var(--danger-wash);color:var(--danger)}.tag--changed{background:var(--brand-wash);color:var(--brand)}.tag--count{background:var(--warn-wash);color:var(--warn)}.tag--moved{color:#5b32c0;background:#ede9fe}.change__moved{color:var(--ink-soft);margin:0;font-size:12.5px}.change__values{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.change__side{flex-direction:column;gap:3px;min-width:0;display:flex}.change__side-label{text-transform:uppercase;letter-spacing:.05em;color:var(--ink-faint);font-size:10px;font-weight:650}.change__before,.change__after{overflow-wrap:anywhere;border-radius:5px;padding:6px 9px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px}.change__before{background:var(--danger-wash);color:#7d241e}.change__after{color:#10502f;background:#e6f5ec}@media (width<=900px){.sidenav{display:none}.field-grid,.change__values{grid-template-columns:minmax(0,1fr)}.field--half{grid-column:1/-1}.topbar,.tabbar{position:static}.layout{padding:16px 12px 48px}}.signin{background:radial-gradient(120% 120% at 50% 0%, #eef2fe 0%, var(--bg) 55%);justify-content:center;align-items:center;min-height:100vh;padding:24px 16px;display:flex}.signin__card{background:var(--surface);border:1px solid var(--line);text-align:center;border-radius:14px;width:100%;max-width:380px;padding:32px 28px;box-shadow:0 10px 30px #10182814}.signin__mark{background:linear-gradient(135deg, var(--brand), #6a5cf0);border-radius:10px;width:40px;height:40px;margin:0 auto 16px;display:block}.signin__title{letter-spacing:-.015em;font-size:19px;font-weight:650}.signin__sub{color:var(--ink-faint);margin:8px 0 22px;font-size:13px}.signin__button{justify-content:center;min-height:44px;display:flex}.signin__error{background:var(--danger-wash);color:#7d241e;text-align:left;border:1px solid #f0c8c2;border-radius:8px;margin:0 0 16px;padding:10px 12px;font-size:12.5px}.signin__foot{color:var(--ink-faint);margin:18px 0 0;font-size:11.5px}.account{border-left:1px solid var(--line);align-items:center;gap:8px;margin-left:4px;padding-left:12px;display:flex}.account__email{color:var(--ink-faint);text-overflow:ellipsis;white-space:nowrap;max-width:190px;font-size:12px;overflow:hidden}.publishbar{background:var(--surface);border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:14px;padding:12px 20px;display:flex}.publishbar__meta{color:var(--ink-faint);min-width:0;font-size:12px}.publishbar .btn--publish{margin-left:auto}.publishbar .notice{flex-basis:100%;max-width:none;margin:0;padding:10px 14px;font-size:12.5px}.btn--publish{background:var(--ok);border-color:var(--ok)}.btn--publish:hover:not(:disabled){background:#115433;border-color:#115433}.notice--ok{color:#10502f;background:#e6f5ec;border:1px solid #bfe3ce}.notice__list{margin:6px 0 0;padding-left:20px}.notice__list li{margin:2px 0}@media (width<=900px){.publishbar{align-items:flex-start}.publishbar .btn--publish{margin-left:0}.account{border-left:0;margin-left:0;padding-left:0}}.targetpicker{flex:none;align-items:center;gap:7px;display:flex}.targetpicker__label{text-transform:uppercase;letter-spacing:.05em;color:var(--ink-faint);font-size:11px;font-weight:650}.targetpicker__select{font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--line);cursor:pointer;border-radius:6px;padding:5px 8px;font-size:13px;font-weight:550}.targetpicker__select:hover:not(:disabled){border-color:#cfd4dc}.targetpicker__select:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-wash);outline:none}.targetpicker--production .targetpicker__select{color:#8a4b00;background:#fff8f0;border-color:#e0b48a;font-weight:650}.publishbar--production{background:linear-gradient(to right, #fffaf4, var(--surface) 320px);border-bottom-color:#f0dcc4}.btn--publish-production{background:#a5502a;border-color:#a5502a}.btn--publish-production:hover:not(:disabled){background:#8c4222;border-color:#8c4222}.publishbar__dest{color:var(--ink);margin:0;font-size:13px}.publishbar--production .publishbar__dest{color:#8c4222;font-weight:650}@media (width<=900px){.targetpicker{width:100%}.targetpicker__select{flex:1}}
