@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{color:#172033;font-synthesis:none;--ink:#172033;--muted:#687287;--subtle:#9299a9;--line:#dfe3e9;--line-strong:#ccd2dc;--surface:#fff;--surface-soft:#f8f9fb;--nav:#161a22;--nav-soft:#252b36;--red:#df2b20;--red-dark:#be2017;--blue:#2563eb;--green:#14804a;--amber:#a05a00;--purple:#7650b5;--radius:10px;--shadow:0 1px 2px #1018280d, 0 8px 28px #10182812;background:#f5f6f8;font-family:Inter Variable,Inter,system-ui,-apple-system,sans-serif}*{box-sizing:border-box}html{min-width:320px;min-height:100%}body{min-width:320px;min-height:100vh;margin:0}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit}h1,h2,h3,p{margin-top:0}.app{grid-template-columns:244px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{color:#f8fafc;background:var(--nav);flex-direction:column;height:100vh;padding:22px 16px;display:flex;position:sticky;top:0}.brand{align-items:center;gap:11px;padding:0 8px 24px;display:flex}.brand__mark{background:var(--red);color:#fff;letter-spacing:-.04em;border-radius:9px;place-items:center;width:38px;height:38px;font-weight:850;display:grid}.brand__name{letter-spacing:.1em;font-size:13px;font-weight:800;line-height:1.15}.brand__sub{color:#939bab;letter-spacing:.04em;margin-top:3px;font-size:10px;font-weight:600;display:block}.nav{gap:6px;display:grid}.nav__link{color:#aeb5c2;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:8px;align-items:center;gap:10px;width:100%;padding:10px 12px;font-size:13px;font-weight:600;text-decoration:none;display:flex}.nav__link:hover{color:#fff;background:var(--nav-soft)}.nav__link--active{color:#fff;background:var(--nav-soft);box-shadow:inset 3px 0 var(--red)}.nav__icon{text-align:center;width:20px;font-size:17px}.sidebar__foot{border-top:1px solid #2c323e;margin-top:auto;padding:16px 8px 0}.account{color:#e4e7ec;overflow-wrap:anywhere;font-size:12px}.account__role{color:#8f98a9;text-transform:uppercase;letter-spacing:.08em;margin-top:4px;font-size:10px}.sidebar__signout{color:#aeb5c2;cursor:pointer;background:0 0;border:0;margin-top:12px;padding:0;font-size:12px}.sidebar__signout:hover{color:#fff}.main{min-width:0}.topbar{z-index:20;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffeb;justify-content:space-between;align-items:center;gap:16px;min-height:66px;padding:12px clamp(18px,4vw,48px);display:flex;position:sticky;top:0}.topbar__title{font-size:14px;font-weight:750}.topbar__context{color:var(--muted);margin-top:3px;font-size:11px}.content{width:min(1320px,100%);margin:0 auto;padding:32px clamp(18px,4vw,48px) 64px}.page-head{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:24px;display:flex}.page-head h1{color:var(--ink);letter-spacing:-.035em;margin-bottom:7px;font-size:clamp(24px,3vw,34px);line-height:1.1}.page-head p{color:var(--muted);margin-bottom:0;font-size:13px;line-height:1.55}.page-actions{flex-wrap:wrap;flex-shrink:0;gap:8px;display:flex}.card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow)}.card__head{border-bottom:1px solid var(--line);padding:18px 20px 14px}.card__head h2,.card__head h3{margin:0;font-size:15px}.card__body{padding:20px}.card+.card{margin-top:18px}.section-title{margin-bottom:14px;font-size:14px}.button{cursor:pointer;border:1px solid #0000;border-radius:7px;justify-content:center;align-items:center;gap:7px;min-height:38px;padding:0 15px;font-size:12.5px;font-weight:700;line-height:1;text-decoration:none;transition:border-color .15s,background .15s,color .15s,transform 80ms;display:inline-flex}.button:active:not(:disabled){transform:translateY(1px)}.button:focus-visible,.control:focus-visible,.nav__link:focus-visible{outline-offset:1px;outline:3px solid #2563eb38}.button:disabled{opacity:.48;cursor:not-allowed}.button--primary{color:#fff;background:var(--red);border-color:var(--red)}.button--primary:hover:not(:disabled){background:var(--red-dark)}.button--secondary{color:var(--ink);border-color:var(--line-strong);background:#fff}.button--secondary:hover:not(:disabled){background:var(--surface-soft);border-color:#9fa8b8}.button--ghost{color:var(--muted);background:0 0}.button--ghost:hover:not(:disabled){color:var(--ink);background:#eef0f4}.button--danger{color:#b42318;background:#fff5f4;border-color:#f5cbc7}.button--small{min-height:31px;padding:0 10px;font-size:11.5px}.control{border:1px solid var(--line-strong);width:100%;min-height:39px;color:var(--ink);background:#fff;border-radius:7px;outline:none;padding:8px 10px;font-size:13px;line-height:1.35;transition:border-color .15s,box-shadow .15s}.control:focus{border-color:#7da2f5;box-shadow:0 0 0 3px #2563eb1a}.control:disabled,.control[readonly]{color:var(--muted);background:#f4f5f7}.textarea{resize:vertical;min-height:92px}.select{cursor:pointer}.label{color:#3d4658;font-size:11.5px;font-weight:700;display:block}.required{color:var(--red)}.hint{color:var(--subtle);font-size:10.5px}.field{min-width:0;display:block}.field__head{justify-content:space-between;gap:8px;min-height:20px;display:flex}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.form-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}.span-2{grid-column:span 2}.form-actions{border-top:1px solid var(--line);justify-content:flex-end;gap:9px;margin-top:20px;padding-top:17px;display:flex}.fieldset-plain{border:0;min-width:0;margin:0;padding:0}.fieldset-plain:disabled{opacity:.72}.fieldset-contents{display:contents}.badge{white-space:nowrap;border-radius:999px;align-items:center;padding:3px 8px;font-size:10.5px;font-weight:750;display:inline-flex}.badge--neutral{color:#4b5565;background:#edf0f3}.badge--blue{color:#2457b8;background:#e9f0ff}.badge--green{color:#087343;background:#e3f6ec}.badge--amber{color:#925000;background:#fff0d5}.badge--red{color:#b42318;background:#fee9e7}.badge--purple{color:#634397;background:#f0eafd}.badge-row{flex-wrap:wrap;align-items:center;gap:5px;display:flex}.alert{border:1px solid;border-radius:8px;margin-bottom:18px;padding:11px 13px;font-size:12px;line-height:1.5}.alert--info{color:#28519a;background:#f0f5ff;border-color:#ccdafe}.alert--success{color:#126b42;background:#edfaf3;border-color:#bce8d0}.alert--warning{color:#835006;background:#fff8e8;border-color:#f3dba7}.alert--error{color:#a1261d;background:#fff2f0;border-color:#f2c4bf}.scope-norm{background:#f7f9ff;border:1px solid #ccdafe;border-radius:8px;margin-bottom:18px}.scope-norm summary{color:#28519a;cursor:pointer;padding:11px 13px;font-size:11.5px;font-weight:750}.scope-norm summary:focus-visible{outline-offset:1px;outline:3px solid #2563eb38}.scope-norm__body{color:#46536c;padding:0 13px 11px;font-size:11px;line-height:1.5}.scope-norm__body p{margin:7px 0 0}.release-plan__gate{gap:12px;display:grid}.release-plan__checklist{margin:8px 0 0;padding-left:18px}.release-plan__checklist li+li{margin-top:4px}.release-plan__confirmation{background:#f7f9ff;border:1px solid #b9caf3;border-radius:8px;padding:13px}.release-plan__confirmation p{color:#34415b;margin:0;font-size:12px;line-height:1.55}.release-plan__confirmation p+p{margin-top:6px}.release-plan__confirmation .form-actions{margin-top:12px}.toolbar{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);margin-bottom:16px;padding:14px}.quick-filters{flex-wrap:wrap;gap:6px;display:flex}.quick-filter{border:1px solid var(--line);min-height:31px;color:var(--muted);cursor:pointer;background:#fff;border-radius:999px;padding:0 10px;font-size:11px;font-weight:650}.quick-filter--active{color:#fff;border-color:var(--nav);background:var(--nav)}.filter-grid{grid-template-columns:2fr repeat(4,1fr);gap:9px;margin-top:12px;display:grid}.table-wrap{overflow-x:auto}.table{border-collapse:collapse;text-align:left;width:100%}.table th{color:var(--muted);border-bottom:1px solid var(--line);text-transform:uppercase;letter-spacing:.055em;background:#f7f8fa;padding:11px 13px;font-size:10px}.table td{vertical-align:top;border-bottom:1px solid #eceef2;padding:13px;font-size:12px}.table tbody tr:last-child td{border-bottom:0}.table tbody tr:hover{background:#fbfbfc}.row-link{color:var(--ink);font-weight:720;text-decoration:none}.row-link:hover{color:var(--red)}.row-key{color:var(--red);letter-spacing:.025em;margin-bottom:5px;font-size:10.5px;font-weight:800;display:block}.row-meta{color:var(--subtle);margin-top:4px;font-size:10.5px}.stat-grid{grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:10px;margin-bottom:18px;display:grid}.stat{border:1px solid var(--line);background:#fff;border-radius:9px;padding:14px 16px}.stat--link{color:inherit;text-align:left;cursor:pointer;text-decoration:none;transition:border-color .15s,box-shadow .15s,transform .15s;display:block}.stat--link:hover{border-color:#aeb7c5;transform:translateY(-1px);box-shadow:0 5px 16px #171f2c14}.stat--link:focus-visible{outline:3px solid var(--blue);outline-offset:2px}.stat--active{border-color:var(--nav);box-shadow:inset 0 0 0 1px var(--nav)}.stat--active .stat__value{color:var(--nav)}.stat__value{letter-spacing:-.04em;font-size:25px;font-weight:780}.stat__label{color:var(--muted);margin-top:3px;font-size:10.5px}.detail-grid{grid-template-columns:minmax(0,1fr) 340px;align-items:start;gap:18px;display:grid}.detail-main,.detail-aside{min-width:0}.detail-aside{position:sticky;top:86px}.prose{color:#364054;white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px;line-height:1.65}.observation-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.observation{background:#f7f8fa;border-radius:8px;padding:13px}.observation__label{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:6px;font-size:10px;font-weight:750}.meta-list{gap:10px;display:grid}.meta-row{justify-content:space-between;gap:18px;font-size:11.5px;display:flex}.meta-row__label{color:var(--muted)}.meta-row__value{text-align:right;overflow-wrap:anywhere}.timeline{gap:0;display:grid;position:relative}.timeline:before{content:"";background:var(--line);width:1px;position:absolute;top:8px;bottom:8px;left:7px}.timeline__item{padding:0 0 17px 26px;position:relative}.timeline__item:last-child{padding-bottom:0}.timeline__dot{background:#9da6b5;border-radius:50%;width:9px;height:9px;position:absolute;top:5px;left:3px;box-shadow:0 0 0 3px #fff}.timeline__head{margin-bottom:5px;font-size:11.5px;font-weight:700}.timeline__time{color:var(--subtle);font-size:10px;font-weight:500}.timeline__body{color:#4a5365;font-size:11.5px;line-height:1.5}.diff{overflow-wrap:anywhere;background:#f5f6f8;border-radius:6px;margin-top:5px;padding:7px 9px}.diff__field{color:var(--muted);font-weight:700}.diff__old{color:#a1261d;text-decoration:line-through}.diff__new{color:#087343}.audit-value{margin-top:5px}.audit-value__summary{cursor:pointer;color:#4a5365;overflow-wrap:anywhere}.audit-value__summary:focus-visible{outline-offset:2px;outline:3px solid #2563eb38}.audit-value__label{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.audit-value__action{color:#28519a;margin-left:8px;font-weight:750;text-decoration:none}.audit-value__action--collapse,.audit-value[open] .audit-value__action--expand{display:none}.audit-value[open] .audit-value__action--collapse{display:inline}.audit-value__full{border:1px solid var(--line);white-space:pre-wrap;overflow-wrap:anywhere;background:#fff;border-radius:6px;max-height:min(52vh,520px);margin-top:8px;padding:9px 10px;line-height:1.55;overflow:auto}.audit-field-change{gap:7px;margin-top:6px;display:grid}.audit-field-change__side{border:1px solid var(--line);background:#fff;border-radius:6px;min-width:0;padding:7px 9px}.audit-field-change__label{color:var(--muted);letter-spacing:.045em;text-transform:uppercase;margin-bottom:3px;font-size:10px;font-weight:800;display:block}.audit-changes{margin-top:6px}.audit-changes__summary{cursor:pointer;color:#28519a;width:fit-content;font-weight:750}.audit-changes__summary:focus-visible{outline-offset:2px;outline:3px solid #2563eb38}.audit-changes__action--collapse,.audit-changes[open] .audit-changes__action--expand{display:none}.audit-changes[open] .audit-changes__action--collapse{display:inline}.audit-changes__body{margin-top:6px}.comment{border-bottom:1px solid var(--line);padding:12px 0}.comment:last-child{border-bottom:0}.comment__head{justify-content:space-between;gap:12px;margin-bottom:5px;font-size:10.5px;display:flex}.comment__author{font-weight:750}.comment__time{color:var(--subtle)}.comment__body{color:#384257;white-space:pre-wrap;font-size:12.5px;line-height:1.55}.attachment-list,.reference-list{gap:8px;display:grid}.attachment,.reference{border:1px solid var(--line);border-radius:7px;justify-content:space-between;align-items:center;gap:12px;padding:10px 11px;font-size:11.5px;display:flex}.attachment__name,.reference__name{overflow-wrap:anywhere;min-width:0}.attachment__meta{color:var(--subtle);margin-top:3px;font-size:10px}.attachment__preview{border:1px solid var(--line);object-fit:cover;background:var(--surface-soft);border-radius:5px;flex:none;width:48px;height:38px}.attachment-paste-hint{color:#43506a;background:#f8faff;border:1px dashed #aeb8ca;border-radius:8px;outline:none;gap:4px;margin-bottom:12px;padding:12px;display:grid}.attachment-paste-hint:focus-visible{border-color:var(--blue);box-shadow:0 0 0 3px #2563eb1a}.attachment-paste-hint strong{font-size:11.5px}.attachment-paste-hint span{color:var(--muted);font-size:10.5px;line-height:1.45}.clipboard-upload-list{gap:8px;margin-bottom:12px;display:grid}.clipboard-upload{border:1px solid var(--line);background:var(--surface-soft);border-radius:8px;grid-template-columns:72px minmax(0,1fr) auto;align-items:center;gap:10px;min-width:0;padding:9px;display:grid}.clipboard-upload--ready{background:#f3fbf7;border-color:#bce8d0}.clipboard-upload--error{background:#fff7f6;border-color:#f2c4bf}.clipboard-upload__preview{object-fit:cover;background:#e9ecf2;border-radius:6px;width:72px;height:52px}.clipboard-upload__body{min-width:0}.clipboard-upload__name{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:700;overflow:hidden}.clipboard-upload__status{color:var(--muted);overflow-wrap:anywhere;margin:4px 0 6px;font-size:10px}.clipboard-upload--error .clipboard-upload__status{color:#a1261d}.clipboard-upload progress{width:100%;height:5px;accent-color:var(--blue);display:block}.empty-state{text-align:center;padding:48px 20px}.empty-state__icon{color:var(--subtle);margin-bottom:12px;font-size:32px;display:block}.empty-state h3{margin-bottom:7px;font-size:16px}.empty-state p{max-width:480px;color:var(--muted);margin:0 auto 18px;font-size:12px;line-height:1.55}.spinner{min-height:180px;color:var(--muted);justify-content:center;align-items:center;gap:9px;font-size:12px;display:flex}.spinner__dot{border:2px solid #d9dde5;border-top-color:var(--red);border-radius:50%;width:15px;height:15px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.auth-page{background:#fff;grid-template-columns:minmax(320px,440px) minmax(0,1fr);min-height:100vh;display:grid}.auth-panel{flex-direction:column;justify-content:center;padding:clamp(28px,7vw,72px);display:flex}.auth-panel .brand{color:var(--ink);padding:0 0 42px}.auth-panel .brand__sub{color:var(--muted)}.auth-panel h1{letter-spacing:-.04em;margin-bottom:9px;font-size:30px}.auth-panel>p{color:var(--muted);margin-bottom:26px;font-size:13px;line-height:1.6}.auth-form{gap:15px;display:grid}.auth-art{color:#fff;background:#171b23;place-items:center;display:grid;position:relative;overflow:hidden}.auth-art:before{content:"";border:1px solid #3b424f;border-radius:50%;width:600px;height:600px;position:absolute}.auth-art:after{content:"";border:1px solid #3b424f;border-radius:50%;width:380px;height:380px;position:absolute}.auth-art__copy{z-index:1;width:min(500px,70%);position:relative}.auth-art__kicker{color:#f66960;text-transform:uppercase;letter-spacing:.12em;font-size:11px;font-weight:800}.auth-art h2{letter-spacing:-.05em;margin:15px 0;font-size:clamp(30px,4vw,54px);line-height:1.05}.auth-art p{color:#aab2c1;max-width:400px;font-size:13px;line-height:1.65}.member{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:18px;padding:14px 16px;display:flex}.member:last-child{border-bottom:0}.member__email{font-size:12.5px;font-weight:700}.member__name{color:var(--muted);margin-top:4px;font-size:11px}.switch{flex:none;width:40px;height:23px;position:relative}.switch input{opacity:0;position:absolute}.switch span{cursor:pointer;background:#c9ced8;border-radius:999px;transition:all .2s;position:absolute;inset:0}.switch span:before{content:"";background:#fff;border-radius:50%;width:17px;height:17px;transition:all .2s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #00000040}.switch input:checked+span{background:var(--green)}.switch input:checked+span:before{transform:translate(17px)}.switch input:disabled+span{opacity:.5;cursor:wait}.mobile-bar{display:none}@media (width<=980px){.app{grid-template-columns:78px minmax(0,1fr)}.sidebar{padding-inline:10px}.brand{justify-content:center;padding-inline:0}.brand__text,.nav__text,.account,.sidebar__signout{display:none}.nav__link{justify-content:center;padding-inline:8px}.nav__icon{width:auto}.detail-grid{grid-template-columns:1fr}.detail-aside{position:static}.filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.filter-grid>:first-child{grid-column:span 2}}@media (width<=700px){.app{padding-bottom:64px;display:block}.sidebar{z-index:30;border-top:1px solid #303642;width:100%;height:64px;padding:8px 12px;position:fixed;top:auto;bottom:0}.sidebar .brand,.sidebar__foot{display:none}.nav{grid-auto-columns:1fr;grid-auto-flow:column;height:100%}.nav__link{flex-direction:column;gap:2px;height:48px;padding:5px;font-size:9px}.nav__link--active{box-shadow:inset 0 -3px var(--red)}.nav__text{display:block}.nav__icon{font-size:15px}.topbar{min-height:58px}.content{padding-top:23px}.page-head{display:block}.page-actions{margin-top:15px}.form-grid,.form-grid--3,.observation-grid{grid-template-columns:1fr}.span-2{grid-column:auto}.filter-grid{grid-template-columns:1fr}.filter-grid>:first-child{grid-column:auto}.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hide-mobile{display:none}.auth-page{display:block}.auth-panel{min-height:100vh}.auth-art{display:none}}
