@font-face{font-family:Plex Sans;src:url(/fonts/IBMPlexSans-Regular.ttf) format("truetype");font-weight:400;font-display:swap}@font-face{font-family:Plex Sans;src:url(/fonts/IBMPlexSans-Medium.ttf) format("truetype");font-weight:500;font-display:swap}@font-face{font-family:Plex Sans;src:url(/fonts/IBMPlexSans-SemiBold.ttf) format("truetype");font-weight:600;font-display:swap}@font-face{font-family:Plex Mono;src:url(/fonts/IBMPlexMono-Regular.ttf) format("truetype");font-weight:400;font-display:swap}@font-face{font-family:Plex Mono;src:url(/fonts/IBMPlexMono-Medium.ttf) format("truetype");font-weight:500;font-display:swap}:root{--ink:#12161a;--graphite:#1e242a;--graphite-soft:#2a3138;--body:#313a42;--muted:#5f6a74;--faint:#8b959e;--rule:#d3d8dd;--hairline:#e3e7ea;--panel:#f4f6f7;--panel-alt:#eceff1;--surface:#ffffff;--canvas:#f7f8f9;--signal-red:#97121f;--signal-red-bg:#fbeced;--signal-amber:#8a5a0f;--signal-amber-bg:#fdf4e5;--signal-green:#1d6136;--signal-green-bg:#ecf5ef;--signal-blue:#1b4f7a;--signal-blue-bg:#eaf1f7;--sans:"Plex Sans","Segoe UI",system-ui,-apple-system,sans-serif;--mono:"Plex Mono","Cascadia Mono",Consolas,monospace;--t-micro:10.5px;--t-caption:11.5px;--t-small:12.5px;--t-body:13.5px;--t-lead:15px;--t-h3:16px;--t-h2:19px;--t-h1:24px;--sidebar-width:232px;--topbar-height:52px;--radius:2px;--focus:0 0 0 2px var(--surface),0 0 0 4px var(--signal-blue)}*,:after,:before{box-sizing:border-box}body,html{margin:0;padding:0;height:100%}body{font-family:var(--sans);font-size:var(--t-body);line-height:1.5;color:var(--body);background:var(--canvas);-webkit-font-smoothing:antialiased}h1,h2,h3,h4{margin:0;color:var(--ink);font-weight:600;line-height:1.25}h1{font-size:var(--t-h1);letter-spacing:-.01em}h2{font-size:var(--t-h2)}h3{font-size:var(--t-h3)}p{margin:0 0 .75em}p:last-child{margin-bottom:0}a{color:var(--signal-blue);text-decoration:none}a:hover{text-decoration:underline}:focus-visible{outline:none;box-shadow:var(--focus);border-radius:var(--radius)}.mono{font-family:var(--mono)}.shell{display:grid;grid-template-columns:var(--sidebar-width) 1fr;min-height:100vh}.sidebar{background:var(--graphite);color:#c9d0d6;display:flex;flex-direction:column;position:-webkit-sticky;position:sticky;top:0;height:100vh;overflow-y:auto}.sidebar__brand{padding:18px 18px 16px;border-bottom:1px solid rgba(255,255,255,.09)}.sidebar__logo{display:block;width:100%;max-width:168px;height:auto}.sidebar__subtitle{font-size:var(--t-micro);letter-spacing:.08em;color:#7d8890;text-transform:uppercase;margin-top:3px;display:block}.sidebar__nav{padding:12px 0;flex:1 1}.sidebar__group-label{font-size:var(--t-micro);letter-spacing:.1em;text-transform:uppercase;color:#6d777f;padding:14px 18px 6px}.sidebar__link{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:7px 18px;color:#c9d0d6;font-size:var(--t-small);border-left:2px solid transparent}.sidebar__link:hover{background:rgba(255,255,255,.05);color:#ffffff;text-decoration:none}.sidebar__link[aria-current=page]{background:rgba(255,255,255,.08);border-left-color:var(--signal-red);color:#ffffff;font-weight:500}.sidebar__count{font-family:var(--mono);font-size:var(--t-micro);background:rgba(255,255,255,.12);padding:1px 5px;border-radius:var(--radius)}.sidebar__count--alert{background:var(--signal-red);color:#fff}.sidebar__footer{border-top:1px solid rgba(255,255,255,.09);padding:12px 18px;font-size:var(--t-micro);color:#7d8890}.main{display:flex;flex-direction:column;min-width:0}.topbar{height:var(--topbar-height);background:var(--surface);border-bottom:1px solid var(--rule);display:flex;align-items:center;gap:16px;padding:0 22px;position:-webkit-sticky;position:sticky;top:0;z-index:20}.topbar__search{flex:1 1;max-width:560px;position:relative}.topbar__search input{width:100%;height:32px;padding:0 10px;border:1px solid var(--rule);border-radius:var(--radius);background:var(--panel);font-family:var(--sans);font-size:var(--t-small);color:var(--ink)}.topbar__search input::placeholder{color:var(--faint)}.topbar__user{margin-left:auto;display:flex;align-items:center;gap:14px;font-size:var(--t-small)}.topbar__user-name{color:var(--ink);font-weight:500}.topbar__user-role{color:var(--muted);font-size:var(--t-caption)}.content{padding:24px 26px 64px;max-width:1560px;width:100%}.content--wide{max-width:none}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding-bottom:14px;border-bottom:2px solid var(--ink);margin-bottom:20px}.page-head__eyebrow{font-size:var(--t-micro);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:4px}.page-head__title{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}.page-head__meta{color:var(--muted);font-size:var(--t-small);margin-top:5px}.page-head__actions{display:flex;gap:8px;flex-shrink:0;flex-wrap:wrap}.panel{background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius);margin-bottom:18px}.panel__head{justify-content:space-between;gap:12px;padding:10px 14px;border-bottom:1px solid var(--rule);background:var(--panel)}.panel__head,.panel__title{display:flex;align-items:center}.panel__title{font-size:var(--t-caption);font-weight:600;letter-spacing:.09em;text-transform:uppercase;color:var(--ink);gap:9px}.panel__index{font-family:var(--mono);font-size:var(--t-micro);color:var(--signal-red);font-weight:500}.panel__body{padding:14px}.panel__body--flush{padding:0}.deflist{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));grid-gap:0 28px;gap:0 28px}.deflist__row{display:flex;gap:12px;padding:6px 0;border-bottom:1px solid var(--hairline);font-size:var(--t-small)}.deflist__label{width:45%;color:var(--muted);flex-shrink:0}.deflist__value{color:var(--ink);font-weight:500;min-width:0;word-break:break-word}.deflist__value--mono{font-family:var(--mono);font-weight:500}.deflist__value--empty{color:var(--faint);font-weight:400}.table-wrap{overflow-x:auto}table.data{width:100%;border-collapse:collapse;font-size:var(--t-small)}table.data th{text-align:left;font-size:var(--t-micro);font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--ink);background:var(--panel);padding:8px 10px;border-bottom:1px solid var(--ink);white-space:nowrap}table.data td{padding:8px 10px;border-bottom:1px solid var(--hairline);vertical-align:top;color:var(--body)}table.data tbody tr:hover{background:var(--panel)}table.data td.mono,table.data th.mono{font-family:var(--mono)}table.data td.num,table.data th.num{text-align:right;font-family:var(--mono)}table.data .row-link{color:var(--ink);font-weight:500}.table-empty{padding:28px 14px;text-align:center;color:var(--faint);font-size:var(--t-small)}.chip{display:inline-flex;align-items:center;gap:5px;font-size:var(--t-micro);font-weight:600;letter-spacing:.06em;text-transform:uppercase;padding:2px 7px;border:1px solid;border-radius:var(--radius);white-space:nowrap}.chip--draft,.chip--neutral{color:var(--muted);background:var(--panel)}.chip--review{color:var(--signal-amber);background:var(--signal-amber-bg)}.chip--approved{color:var(--signal-blue);background:var(--signal-blue-bg)}.chip--released{color:var(--signal-green);background:var(--signal-green-bg)}.chip--superseded{color:var(--faint);background:var(--panel)}.chip--alert,.chip--cancelled{color:var(--signal-red);background:var(--signal-red-bg)}.chip--ok{color:var(--signal-green);background:var(--signal-green-bg)}.chip--warn{color:var(--signal-amber);background:var(--signal-amber-bg)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;height:30px;padding:0 13px;font-family:var(--sans);font-size:var(--t-small);font-weight:500;color:var(--ink);background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius);cursor:pointer;white-space:nowrap;transition:background .12s ease,border-color .12s ease}.btn:hover:not(:disabled){background:var(--panel);border-color:var(--muted);text-decoration:none}.btn:disabled{opacity:.45;cursor:not-allowed}.btn--primary{background:var(--ink);border-color:var(--ink);color:#ffffff}.btn--primary:hover:not(:disabled){background:var(--graphite-soft);border-color:var(--graphite-soft)}.btn--danger{color:var(--signal-red);border-color:var(--signal-red)}.btn--danger:hover:not(:disabled){background:var(--signal-red-bg)}.btn--ghost{border-color:transparent;background:transparent}.btn--ghost:hover:not(:disabled){background:var(--panel);border-color:var(--rule)}.btn--sm{height:25px;padding:0 9px;font-size:var(--t-caption)}.btn--block{width:100%}.field{margin-bottom:14px}.field__label{display:block;font-size:var(--t-caption);font-weight:500;color:var(--ink);margin-bottom:4px}.field__hint{color:var(--muted)}.field__error,.field__hint{font-size:var(--t-caption);margin-top:4px}.field__error{color:var(--signal-red)}input[type=date],input[type=email],input[type=number],input[type=password],input[type=search],input[type=text],select,textarea{width:100%;font-family:var(--sans);font-size:var(--t-small);color:var(--ink);background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius);padding:6px 9px;min-height:30px}input.mono,textarea.mono{font-family:var(--mono)}textarea{resize:vertical;min-height:84px;line-height:1.55}input:disabled,select:disabled,textarea:disabled{background:var(--panel);color:var(--muted)}input:focus,select:focus,textarea:focus{border-color:var(--signal-blue)}.field-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:0 16px;gap:0 16px}.checkline{display:flex;align-items:center;gap:8px;font-size:var(--t-small)}.checkline input{width:auto;min-height:0}.metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));grid-gap:1px;gap:1px;background:var(--rule);border:1px solid var(--rule);border-radius:var(--radius);margin-bottom:18px}.metric{background:var(--surface);padding:13px 15px;display:block;color:inherit}.metric:hover{background:var(--panel);text-decoration:none}.metric__label{font-size:var(--t-micro);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:6px}.metric__value{font-family:var(--mono);font-size:26px;font-weight:500;color:var(--ink);line-height:1}.metric__value--alert{color:var(--signal-red)}.metric__value--warn{color:var(--signal-amber)}.metric__note{font-size:var(--t-caption);color:var(--muted);margin-top:6px}.tabs{display:flex;gap:2px;border-bottom:1px solid var(--rule);margin-bottom:18px;overflow-x:auto}.tabs__tab{padding:8px 14px;font-size:var(--t-small);color:var(--muted);border-bottom:2px solid transparent;margin-bottom:-1px;white-space:nowrap}.tabs__tab:hover{color:var(--ink);text-decoration:none}.tabs__tab[aria-current=page]{color:var(--ink);font-weight:500;border-bottom-color:var(--signal-red)}.notice{border:1px solid var(--rule);border-left-width:3px;border-radius:var(--radius);padding:10px 13px;font-size:var(--t-small);margin-bottom:14px;background:var(--surface)}.notice__title{font-weight:600;color:var(--ink);margin-bottom:3px}.notice--info{border-left-color:var(--signal-blue);background:var(--signal-blue-bg)}.notice--warn{border-left-color:var(--signal-amber);background:var(--signal-amber-bg)}.notice--error{border-left-color:var(--signal-red);background:var(--signal-red-bg)}.notice--ok{border-left-color:var(--signal-green);background:var(--signal-green-bg)}.notice ul{margin:6px 0 0;padding-left:18px}.notice li{margin-bottom:3px}.checklist{list-style:none;margin:0;padding:0}.checklist__item{display:flex;gap:9px;padding:6px 0;border-bottom:1px solid var(--hairline);font-size:var(--t-small);align-items:flex-start}.checklist__mark{font-family:var(--mono);font-weight:500;width:14px;flex-shrink:0;text-align:center}.checklist__mark--pass{color:var(--signal-green)}.checklist__mark--fail{color:var(--signal-red)}.checklist__mark--advisory{color:var(--signal-amber)}.checklist__label{color:var(--ink)}.checklist__detail{color:var(--muted);font-size:var(--t-caption);margin-top:2px}.editor{display:grid;grid-template-columns:minmax(0,1fr) 316px;grid-gap:20px;gap:20px;align-items:start}.editor__aside{position:-webkit-sticky;position:sticky;top:calc(var(--topbar-height) + 22px)}.save-state{display:inline-flex;align-items:center;gap:6px;font-size:var(--t-caption);color:var(--muted)}.save-state__dot{width:6px;height:6px;border-radius:50%;background:var(--faint)}.save-state--saving .save-state__dot{background:var(--signal-amber);animation:pulse 1s ease-in-out infinite}.save-state--saved .save-state__dot{background:var(--signal-green)}.save-state--dirty .save-state__dot{background:var(--signal-amber)}.save-state--error .save-state__dot{background:var(--signal-red)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.35}}.suggestion{border:1px solid var(--signal-blue);border-radius:var(--radius);margin-top:10px;background:var(--surface)}.suggestion__head{padding:7px 11px;background:var(--signal-blue-bg);border-bottom:1px solid var(--rule);font-size:var(--t-micro);letter-spacing:.08em;text-transform:uppercase;font-weight:600;color:var(--signal-blue);display:flex;justify-content:space-between;gap:10px}.suggestion__body{display:grid;grid-template-columns:1fr 1fr;grid-gap:1px;gap:1px;background:var(--hairline)}.suggestion__col{background:var(--surface);padding:10px 11px}.suggestion__col-label{font-size:var(--t-micro);letter-spacing:.07em;text-transform:uppercase;color:var(--muted);margin-bottom:5px}.suggestion__text{font-size:var(--t-small);color:var(--body);white-space:pre-wrap}.suggestion__text--original{color:var(--muted);font-style:italic}.suggestion__actions{padding:9px 11px;border-top:1px solid var(--rule);display:flex;gap:8px}.lines{width:100%;border-collapse:collapse;font-size:var(--t-small)}.lines th{text-align:left;font-size:var(--t-micro);letter-spacing:.07em;text-transform:uppercase;color:var(--muted);font-weight:600;padding:0 6px 5px;border-bottom:1px solid var(--rule)}.lines td{padding:3px 4px;border-bottom:1px solid var(--hairline);vertical-align:top}.lines input,.lines select,.lines textarea{min-height:27px;padding:4px 6px;font-size:var(--t-small)}.lines textarea{min-height:27px}.lines__index{font-family:var(--mono);color:var(--faint);font-size:var(--t-caption);padding-top:9px}.lines__remove{color:var(--signal-red);background:none;border:none;cursor:pointer;padding:5px;font-size:14px;line-height:1}.lines__total{font-family:var(--mono);font-weight:500;color:var(--ink);text-align:right}.photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));grid-gap:12px;gap:12px}.photo-card{border:1px solid var(--rule);border-radius:var(--radius);overflow:hidden;background:var(--surface)}.photo-card__frame{aspect-ratio:4/3;background:var(--panel-alt);display:flex;align-items:center;justify-content:center;border-bottom:1px solid var(--rule)}.photo-card__frame img{max-width:100%;max-height:100%;object-fit:contain;display:block}.photo-card__body{padding:8px 9px}.photo-card__no{font-family:var(--mono);font-size:var(--t-micro);font-weight:500;color:var(--ink);margin-bottom:4px}.login{min-height:100vh;display:grid;grid-template-columns:1fr 460px;background:var(--graphite)}.login__brandside{padding:56px 60px;color:#c9d0d6;display:flex;flex-direction:column;justify-content:space-between}.login__logo{display:block;width:100%;max-width:300px;height:auto}.login__tagline{font-size:var(--t-caption);letter-spacing:.1em;text-transform:uppercase;color:#8b959e;margin-top:8px}.login__blurb{max-width:460px;font-size:var(--t-small);color:#96a0a8;line-height:1.7}.login__legal{font-size:var(--t-micro);color:#6d777f}.login__formside{background:var(--surface);padding:56px 48px;display:flex;flex-direction:column;justify-content:center}.login__form{width:100%;max-width:330px;margin:0 auto}.verify{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:40px 20px;background:var(--canvas)}.verify__card{width:100%;max-width:560px;background:var(--surface);border:1px solid var(--rule);border-top:3px solid var(--ink);border-radius:var(--radius);padding:30px 32px}.verify__mark{font-size:var(--t-micro);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:20px}.stack-sm>*+*{margin-top:8px}.stack>*+*{margin-top:14px}.row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.row--between{justify-content:space-between}.grow{flex:1 1;min-width:0}.muted{color:var(--muted)}.faint{color:var(--faint)}.small{font-size:var(--t-small)}.caption{font-size:var(--t-caption)}.micro{font-size:var(--t-micro)}.strong{font-weight:600;color:var(--ink)}.nowrap{white-space:nowrap}.right{text-align:right}.mt-0{margin-top:0}.mb-0{margin-bottom:0}.mb-12{margin-bottom:12px}.mb-20{margin-bottom:20px}.hidden{display:none}.divider{height:1px;background:var(--hairline);margin:14px 0;border:0}.eyebrow{font-size:var(--t-micro);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}@media (max-width:1180px){.editor{grid-template-columns:minmax(0,1fr)}.editor__aside{position:static}.suggestion__body{grid-template-columns:1fr}}@media (max-width:900px){.shell{grid-template-columns:1fr}.sidebar{position:static;height:auto;flex-direction:row;overflow-x:auto;align-items:center}.sidebar__brand{border-bottom:0;border-right:1px solid rgba(255,255,255,.09);white-space:nowrap}.sidebar__nav{display:flex;padding:0}.sidebar__group-label{display:none}.sidebar__link{border-left:0;border-bottom:2px solid transparent;padding:14px 12px}.sidebar__link[aria-current=page]{border-left-color:transparent;border-bottom-color:var(--signal-red)}.sidebar__footer{display:none}.content{padding:18px 16px 56px}.login{grid-template-columns:1fr}.login__brandside,.login__formside{padding:32px 24px}}@media print{.page-head__actions,.sidebar,.topbar{display:none}.shell{grid-template-columns:1fr}body{background:#fff}}.logo-preview{border:1px solid var(--rule);border-radius:var(--radius);padding:14px;display:flex;align-items:center;justify-content:center;min-height:86px}.logo-preview img{max-height:58px;max-width:100%;object-fit:contain}.logo-preview--dark{background:var(--graphite)}.logo-preview--light{background:var(--surface)}.notfound{min-height:100vh;display:grid;place-items:center;padding:40px;background:var(--graphite)}.notfound__panel{width:100%;max-width:460px;text-align:center;color:#c9d0d6}.notfound__logo{display:block;width:200px;max-width:60%;height:auto;margin:0 auto 32px}.notfound__code{font-family:var(--mono);font-size:var(--t-caption);letter-spacing:.24em;color:#7f8990}.notfound__title{font-size:var(--t-h2);margin:6px 0 10px;color:#eef1f3}.notfound__text{font-size:var(--t-small);line-height:1.7;color:#96a0a8;margin:0 0 24px}