:root{--bg: #ECEEEC;--surface: #FFFFFF;--surface-2: #F5F6F5;--ink: #1C2328;--muted: #5E6A72;--line: #D3D8DA;--line-strong: #AEB7BC;--signal: #F2B705;--on-ink: #FFFFFF;--danger: #B3261E;--danger-bg: #FBEAE9;--ok: #2E7D4F;--ok-bg: #E6F2EA;--font: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--mono: ui-monospace, "Cascadia Mono", "Segoe UI Mono", Consolas, "Roboto Mono", "Liberation Mono", monospace;--radius: 6px;--gutter: 16px;--inset-top: var(--safe-area-inset-top, env(safe-area-inset-top, 0px));--inset-bottom: var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px));--inset-left: var(--safe-area-inset-left, env(safe-area-inset-left, 0px));--inset-right: var(--safe-area-inset-right, env(safe-area-inset-right, 0px));color-scheme:light;font-family:var(--font);line-height:1.45;color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}@media(prefers-color-scheme:dark){:root{--bg: #14181B;--surface: #1D2327;--surface-2: #232A2F;--ink: #E6EAEC;--muted: #97A3AA;--line: #2E363B;--line-strong: #46525A;--on-ink: #14181B;--danger: #F2867E;--danger-bg: #3A1F1D;--ok: #7CC79A;--ok-bg: #1C3326;color-scheme:dark}}*,*:before,*:after{box-sizing:border-box}body{margin:0;min-height:100vh;background:var(--bg);padding-left:var(--inset-left);padding-right:var(--inset-right)}#root{min-height:100vh}h1,h2,h3{margin:0;line-height:1.15;font-weight:700;letter-spacing:-.01em}a{color:inherit}button,input,select{font:inherit;color:inherit}:focus-visible{outline:3px solid var(--signal);outline-offset:2px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 18px;border-radius:var(--radius);border:1px solid var(--line-strong);background:var(--surface);font-weight:600;cursor:pointer;transition:background .15s,border-color .15s;white-space:nowrap;text-decoration:none}.btn:hover:not(:disabled){border-color:var(--ink)}.btn:disabled{opacity:.5;cursor:default}.btn-primary{background:var(--ink);color:var(--on-ink);border-color:var(--ink)}.btn-primary:hover:not(:disabled){background:color-mix(in srgb,var(--ink) 88%,var(--bg))}.btn-danger{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 45%,transparent)}.btn-danger:hover:not(:disabled){border-color:var(--danger);background:var(--danger-bg)}.btn-link{border:0;background:none;padding:0;min-height:0;color:var(--muted);font-weight:500;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.btn-link:hover:not(:disabled){color:var(--ink)}.btn-block{width:100%}.field{display:flex;flex-direction:column;gap:6px}.field-label{font-size:14px;font-weight:600}.field-hint{font-size:13px;color:var(--muted)}.input,.select{min-height:44px;width:100%;padding:0 12px;border-radius:var(--radius);border:1px solid var(--line-strong);background:var(--surface)}.input:focus,.select:focus{border-color:var(--ink);outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--signal) 70%,transparent)}.notice{padding:10px 12px;border-radius:var(--radius);font-size:14px}.notice-error{background:var(--danger-bg);color:var(--danger)}.notice-ok{background:var(--ok-bg);color:var(--ok)}.login{min-height:100vh;display:grid;place-items:center;padding:calc(24px + var(--inset-top)) var(--gutter) calc(24px + var(--inset-bottom))}.login-card{width:100%;max-width:400px;background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:28px 24px 24px;display:flex;flex-direction:column;gap:18px}.login-brand{display:flex;align-items:center;gap:12px}.login-brand img{width:44px;height:44px;border-radius:10px}.login-brand-name{font-weight:700;font-size:18px}.login-brand-sub{font-size:13px;color:var(--muted)}.login h1{font-size:24px}.login-lead{margin:-8px 0 0;color:var(--muted);font-size:15px}.login-lead strong{color:var(--ink);font-weight:600}.login-meta{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:14px;color:var(--muted);flex-wrap:wrap}.otp{display:grid;grid-template-columns:repeat(6,1fr);gap:8px}.otp-cell{aspect-ratio:4 / 5;width:100%;min-width:0;text-align:center;font-family:var(--mono);font-size:clamp(22px,7vw,30px);font-weight:700;border-radius:var(--radius);border:1px solid var(--line-strong);border-bottom-width:3px;background:var(--surface-2);padding:0;caret-color:var(--ink)}.otp-cell:focus{outline:none;border-color:var(--ink);border-bottom-color:var(--signal);background:var(--surface)}.otp.has-error .otp-cell{border-color:var(--danger)}.topbar{position:sticky;top:0;z-index:10;background:var(--ink);color:var(--on-ink);padding-top:var(--inset-top)}@media(prefers-color-scheme:dark){.topbar{background:#0e1113;color:var(--ink);border-bottom:1px solid var(--line)}}.topbar-inner{max-width:1120px;margin:0 auto;padding:0 var(--gutter);height:56px;display:flex;align-items:center;gap:16px}.topbar-brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-weight:700;font-size:16px;min-width:0}.topbar-brand img{width:30px;height:30px;border-radius:7px;flex:none}.topbar-nav{display:flex;gap:4px;margin-left:8px}.topbar-nav a{text-decoration:none;font-size:14px;font-weight:600;padding:6px 10px;border-radius:var(--radius);opacity:.75}.topbar-nav a:hover{opacity:1}.topbar-nav a[aria-current=page]{opacity:1;box-shadow:inset 0 -3px 0 var(--signal);border-radius:0}.topbar-user{margin-left:auto;display:flex;align-items:center;gap:12px;min-width:0}.topbar-user-name{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:220px;opacity:.85}.topbar .btn-link{color:inherit;opacity:.75;font-size:14px}.topbar .btn-link:hover{opacity:1;color:inherit}.page{max-width:1120px;margin:0 auto;padding:28px var(--gutter) calc(64px + var(--inset-bottom))}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:20px;flex-wrap:wrap}.page-head h1{font-size:26px}.page-sub{margin:6px 0 0;color:var(--muted)}.crumb{font-size:14px;color:var(--muted);text-decoration:none;display:inline-block;margin-bottom:10px}.crumb:hover{color:var(--ink)}@media(max-width:640px){.topbar-user-name{display:none}.topbar-nav{margin-left:0}.topbar-inner{gap:10px}.topbar-brand.has-nav span{display:none}.page{padding-top:14px}.page-head{margin-bottom:14px}.page-head h1{font-size:21px}}.tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px}.tile{position:relative;display:flex;flex-direction:column;gap:18px;min-height:132px;padding:18px 18px 16px;background:var(--surface);border:1px solid var(--line);border-radius:8px;text-decoration:none;transition:border-color .15s,transform .15s;overflow:hidden}.tile:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--signal);transform:scaleY(0);transform-origin:bottom;transition:transform .18s ease-out}@media(hover:hover){.tile:hover{border-color:var(--line-strong)}.tile:hover:before{transform:scaleY(1)}}.tile:focus-visible:before,.tile:active:before{transform:scaleY(1)}.tile-name{font-size:19px;font-weight:700;line-height:1.2}.tile-foot{margin-top:auto;display:flex;justify-content:space-between;align-items:center;gap:10px}.tile-ext{font-weight:400;color:var(--muted)}.tile-off{opacity:.55;cursor:not-allowed}.tile-off:before{display:none}.tile-note{font-size:13px;color:var(--muted);text-align:right}.module-frame{display:block;width:100%;height:calc(100dvh - 56px - var(--inset-top));border:0;background:var(--surface)}.stamp{font-family:var(--mono);font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);border:1px solid var(--line);border-radius:3px;padding:2px 6px;background:var(--surface-2)}.role{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:var(--muted)}.role:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--line-strong)}.role-operator:before{background:var(--ink)}.role-admin:before{background:var(--signal);box-shadow:0 0 0 1px color-mix(in srgb,var(--ink) 30%,transparent)}.empty{border:1px dashed var(--line-strong);border-radius:8px;padding:32px 20px;text-align:center;color:var(--muted);background:color-mix(in srgb,var(--surface) 50%,transparent)}.empty strong{display:block;color:var(--ink);font-size:17px;margin-bottom:6px}.seg{display:inline-flex;gap:2px;padding:3px;margin-bottom:14px;background:var(--surface-2);border:1px solid var(--line);border-radius:8px}.seg-btn{min-height:38px;padding:0 14px;border:0;border-radius:6px;background:none;font-weight:600;color:var(--muted);cursor:pointer;display:inline-flex;align-items:center;gap:8px}.seg-btn:hover{color:var(--ink)}.seg-btn[aria-selected=true],.seg-btn[aria-checked=true]{background:var(--surface);color:var(--ink);box-shadow:0 1px 2px #0000001f,inset 0 -2px 0 var(--signal)}.seg-count{font-family:var(--mono);font-size:13px}.seg-sm{margin-bottom:0}.seg-sm .seg-btn{min-height:34px;padding:0 12px;font-size:14px}.panel{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:20px}.facts{display:grid;grid-template-columns:max-content 1fr;gap:10px 20px;margin:0}.facts dt{color:var(--muted);font-size:14px}.facts dd{margin:0;font-weight:600}.tabs{display:flex;gap:4px;border-bottom:1px solid var(--line);margin-bottom:20px}.tabs a{text-decoration:none;padding:10px 14px;font-weight:600;color:var(--muted);border-bottom:3px solid transparent;margin-bottom:-1px}.tabs a:hover{color:var(--ink)}.tabs a[aria-current=page]{color:var(--ink);border-bottom-color:var(--signal)}.admin-grid{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:20px;align-items:start}@media(max-width:960px){.admin-grid{grid-template-columns:1fr}}.toolbar{display:flex;gap:10px;margin-bottom:12px;flex-wrap:wrap}.toolbar .input{flex:1 1 220px;width:auto}.list{background:var(--surface);border:1px solid var(--line);border-radius:8px;overflow:hidden}.list-row{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) auto;gap:12px;align-items:center;width:100%;padding:12px 16px;border:0;border-bottom:1px solid var(--line);background:none;text-align:left;cursor:pointer}.list-row:last-child{border-bottom:0}.list-row:hover{background:var(--surface-2)}.list-row[aria-selected=true]{background:var(--surface-2);box-shadow:inset 4px 0 0 var(--signal)}.list-main{min-width:0}.list-title{display:block;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.list-sub{display:block;font-size:13px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.list-tags{display:flex;gap:6px;flex-wrap:wrap;min-width:0}.list-count{font-size:13px;color:var(--muted)}@media(max-width:640px){.list-row{grid-template-columns:minmax(0,1fr);gap:8px}.list-count{display:none}}.tag{font-size:12px;font-weight:600;padding:2px 8px;border-radius:999px;background:var(--surface-2);border:1px solid var(--line);white-space:nowrap}.tag-admin{background:var(--signal);border-color:var(--signal);color:#1c2328}.tag-muted{color:var(--muted)}.side{position:sticky;top:calc(76px + var(--inset-top));display:flex;flex-direction:column;gap:16px}@media(max-width:960px){.side{position:static}}.side-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.side-head h2{font-size:18px}.form{display:flex;flex-direction:column;gap:14px}.form-actions{display:flex;gap:10px;flex-wrap:wrap}.section-title{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:4px 0 -4px}.access{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.access-row{display:grid;grid-template-columns:minmax(0,1fr) 150px;gap:10px;align-items:center;padding:8px 10px;border-bottom:1px solid var(--line)}.access-row:last-child{border-bottom:0}.access-name{font-weight:600;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.access-name .stamp{margin-left:6px;font-size:11px}.access-off{color:var(--muted)}.access .select{min-height:38px}.mod-row{display:grid;grid-template-columns:minmax(0,1fr) 90px auto auto;gap:10px;align-items:center;padding:12px 16px;border-bottom:1px solid var(--line)}.mod-row:last-child{border-bottom:0}.mod-row .input{min-height:40px}.mod-extra{grid-column:1 / -1;display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px}.mod-url{flex:1 1 320px;margin:0}.mod-delete{color:var(--danger);margin-left:auto}.mod-confirm{display:inline-flex;flex-wrap:wrap;align-items:center;gap:8px;margin-left:auto;font-size:14px}.new-module{margin-top:14px;display:grid;gap:12px;max-width:640px}.switch{display:inline-flex;align-items:center;gap:8px;font-size:14px;cursor:pointer;white-space:nowrap}.switch input{width:18px;height:18px;accent-color:var(--ink)}@media(max-width:640px){.mod-row{grid-template-columns:1fr 80px}}.center{display:grid;place-items:center;min-height:40vh;color:var(--muted)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.check-line{display:flex;gap:10px;align-items:flex-start;cursor:pointer}.check-line input{width:20px;height:20px;margin:2px 0 0;flex:none;accent-color:var(--ink)}.check-line>span{display:flex;flex-direction:column;gap:2px}.kpp .page-head{margin-bottom:12px}@media(max-width:640px){.kpp .page-head{margin-bottom:4px}.kpp-tabs{margin-bottom:14px}}.kpp-tabs{margin-bottom:18px;overflow-x:auto;scrollbar-width:none}.kpp-tabs a{white-space:nowrap}.tab-short{display:none}@media(max-width:640px){.tab-long{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.tab-short{display:inline}.kpp-tabs{gap:0;justify-content:space-between}.kpp-tabs a{padding:10px 4px;font-size:14px}}@media(max-width:370px){.kpp-tabs a{padding:10px 2px;font-size:13px}}.plate{display:inline-flex;align-items:stretch;background:#fff;color:#000;border:1.5px solid #000;border-radius:4px;font-family:var(--mono);font-weight:700;font-size:17px;line-height:1;white-space:nowrap;flex:none}.plate-lg{font-size:22px}.plate-num{display:inline-flex;align-items:center;padding:5px 7px;letter-spacing:.04em}.plate-digits{font-size:1.12em;margin:0 .12em}.plate-side{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:2px 5px;font-size:8px;font-weight:900;letter-spacing:.02em}.plate-side-ru{border-left:1.5px solid #000}.plate-transit .plate-side-ru{background:#ffd500}.plate-flag{display:flex;flex-direction:column;width:16px;height:11px;outline:1px solid rgba(0,0,0,.25)}.plate-flag i{flex:1}.plate-flag-by{width:16px}.plate-empty{background:none;border:0;color:var(--muted)}.passes,.cars{list-style:none;margin:0;padding:0;display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}@media(max-width:640px){.passes,.cars{grid-template-columns:1fr}}.pass,.car{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:14px 16px;display:flex;flex-direction:column;gap:8px;min-width:0}.pass-top{display:flex;justify-content:space-between;align-items:center;gap:12px}.pass-time{font-family:var(--mono);font-size:20px;font-weight:700}.pass-badges{display:flex;gap:6px;flex-wrap:wrap}.pass-info{display:flex;flex-wrap:wrap;column-gap:6px;font-size:15px}.pass-info span+span:before{content:"·";margin-right:6px;color:var(--muted)}.pass-author{font-size:13px;color:var(--muted)}.pass-reason{font-size:13px;color:var(--danger)}.pass-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:2px}.pass-actions:empty{display:none}.pass-void .pass-top .plate,.pass-void .pass-info{opacity:.55;text-decoration:line-through}.status{font-size:12px;font-weight:700;padding:3px 8px;border-radius:4px;border:1px solid transparent}.st-wait{background:#fff1cc;color:#7a5300;border-color:#f2d488}.st-in{background:var(--ok-bg);color:var(--ok);border-color:color-mix(in srgb,var(--ok) 35%,transparent)}.st-out{background:var(--surface-2);color:var(--muted);border-color:var(--line)}.st-void{background:var(--danger-bg);color:var(--danger)}.st-skip{background:var(--ink);color:var(--on-ink);text-transform:uppercase;letter-spacing:.04em;font-size:11px}@media(prefers-color-scheme:dark){.st-wait{background:#3a2e10;color:#f2c75c;border-color:#5a4718}}.btn-sm{min-height:36px;padding:0 12px;font-size:14px}.btn-danger-solid{background:var(--danger);border-color:var(--danger);color:#fff}.btn-danger-solid:hover:not(:disabled){background:color-mix(in srgb,var(--danger) 85%,#000)}@media(prefers-color-scheme:dark){.btn-danger-solid{color:#1a0e0d}}.bell:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--line-strong)}.bell-on{border-color:var(--ink)}.bell-on:before{background:var(--signal);box-shadow:0 0 0 2px color-mix(in srgb,var(--signal) 35%,transparent)}.kpp-form{max-width:640px}.fieldset{border:0;padding:0;margin:0;min-width:0;gap:8px}.fieldset legend{padding:0;margin-bottom:6px}.field-opt{font-weight:400;color:var(--muted)}.field-error{font-size:13px;color:var(--danger)}.field-warn{font-size:13px;color:#7a5300;background:#fff1cc;padding:6px 10px;border-radius:var(--radius)}@media(prefers-color-scheme:dark){.field-warn{background:#3a2e10;color:#f2c75c}}.input-error{border-color:var(--danger)}.input-plate{font-family:var(--mono);font-size:20px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.input-plate::placeholder{font-weight:400;letter-spacing:.02em}.form-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}@media(max-width:520px){.form-row{grid-template-columns:1fr 1fr}.form-row>:first-child{grid-column:1 / -1}}.check{display:flex;gap:10px;align-items:flex-start;font-size:14px;cursor:pointer}.check input{width:20px;height:20px;margin:0;flex:none;accent-color:var(--ink)}.check-box{padding:12px;border:1px solid var(--line-strong);border-radius:var(--radius)}.check-on{border-color:var(--ink);box-shadow:inset 4px 0 0 var(--signal)}.suggest-wrap{position:relative}.suggest{list-style:none;margin:4px 0 0;padding:4px;position:absolute;left:0;right:0;top:100%;z-index:20;background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius);box-shadow:0 8px 24px #00000024;max-height:300px;overflow-y:auto}.suggest button{width:100%;text-align:left;border:0;background:none;cursor:pointer;display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:8px 10px;border-radius:4px}.suggest button:hover,.suggest button:focus-visible{background:var(--surface-2);outline:none;box-shadow:inset 3px 0 0 var(--signal)}.suggest-main{font-weight:600}.suggest-plate{font-family:var(--mono);font-weight:700;letter-spacing:.04em}.suggest-sub{font-size:13px;color:var(--muted)}.car-head{display:flex;align-items:flex-start;gap:14px;flex-wrap:wrap}.car-info{display:flex;flex-direction:column;min-width:0;gap:2px}.car-driver{font-weight:600}.car-company,.car-note{font-size:14px;color:var(--muted)}.car-note:before{content:"Примечание: "}.car-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:4px}.car-confirm{display:flex;flex-direction:column;gap:10px}.dialog{border:1px solid var(--line-strong);border-radius:10px;padding:0;width:min(440px,calc(100vw - 32px));background:var(--surface);color:var(--ink);box-shadow:0 24px 60px #0000004d}.dialog::backdrop{background:#14181b8c}.dialog-body{padding:20px;display:flex;flex-direction:column;gap:14px}.dialog-body h2{font-size:19px}.dialog-lead{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-weight:600}.dialog-text{margin:0}.report-filter{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap;margin-bottom:16px;padding:14px 16px}.report-filter .field{flex:0 1 180px}.report-filter .report-q{flex:1 1 260px}.report-head{margin:4px 0 12px}.report-title{font-size:20px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.report-bar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:10px}.report-bar-actions{display:flex;align-items:center;gap:10px}.report-count{color:var(--muted)}.report-count b{color:var(--ink);font-family:var(--mono)}.is-loading{opacity:.55;transition:opacity .15s}.mono{font-family:var(--mono)}.table-wrap{background:var(--surface);border:1px solid var(--line);border-radius:8px;overflow-x:auto}.report-table,.rights{width:100%;border-collapse:collapse;font-size:14px}.report-table th,.rights th[scope=col]{text-align:left;font-size:12px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;padding:10px 12px;border-bottom:1px solid var(--line);background:var(--surface-2);white-space:nowrap}.report-table td{padding:10px 12px;border-bottom:1px solid var(--line);vertical-align:middle}.report-table tr:last-child td{border-bottom:0}.report-table td .status{margin-left:8px}.report-table .mono{white-space:nowrap}.pager{display:flex;justify-content:center;align-items:center;gap:12px;margin-top:14px}@media(max-width:760px){.table-wrap{background:none;border:0;overflow:visible}.report-table thead,.rights thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.report-table,.report-table tbody,.report-table tr,.report-table td,.rights,.rights tbody,.rights tr,.rights td,.rights th[scope=row]{display:block;width:100%}.report-table tr,.rights tr{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:6px 14px;margin-bottom:10px}.report-table td,.rights td{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:7px 0;border-bottom:1px solid var(--line);text-align:right}.report-table td:last-child,.rights td:last-child{border-bottom:0}.report-table td:before,.rights td:before{content:attr(data-label);color:var(--muted);font-size:13px;text-align:left}.report-table td[data-label=Номер]{justify-content:flex-start;flex-wrap:wrap}.report-table td[data-label=Номер]:before{display:none}}.entity-list{list-style:none;margin:0;padding:0;background:var(--surface);border:1px solid var(--line);border-radius:8px}.entity{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:6px 14px;padding:12px 16px;border-bottom:1px solid var(--line)}.entity:last-child{border-bottom:0}.entity-name{font-weight:600}.entity-sub{font-size:13px;color:var(--muted)}.entity-actions{display:flex;gap:8px;justify-content:flex-end}@media(max-width:640px){.entity{grid-template-columns:minmax(0,1fr)}.entity-actions{justify-content:flex-start}}.rights-note{margin:-4px 0 12px;max-width:780px}.rights th[scope=col]{text-align:center;white-space:normal;min-width:84px;line-height:1.25}.rights th[scope=col]:first-child{text-align:left;min-width:220px}.rights td{text-align:center;padding:8px;border-bottom:1px solid var(--line)}.rights th[scope=row]{text-align:left;font-weight:400;padding:10px 12px;border-bottom:1px solid var(--line)}.rights tr:last-child td,.rights tr:last-child th{border-bottom:0}.rights tbody tr:hover{background:var(--surface-2)}.rights-user{display:table-cell}.rights-name{display:block;font-weight:600}.rights-sub{display:block;font-size:12px;color:var(--muted)}.rights-user .tag{display:inline-block;margin-top:4px}.cell-check{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:40px;cursor:pointer}.cell-check input{width:20px;height:20px;margin:0;accent-color:var(--ink);cursor:pointer}.cell-check input:disabled{cursor:default;opacity:.45}@media(max-width:760px){.rights th[scope=row]{padding:6px 0 10px;border-bottom:1px solid var(--line)}.rights tbody tr:hover{background:var(--surface)}.cell-check{min-height:32px;justify-content:flex-end}}.log{list-style:none;margin:0;padding:0;background:var(--surface);border:1px solid var(--line);border-radius:8px}.log-row{display:grid;grid-template-columns:150px 180px minmax(0,1fr);gap:4px 14px;padding:9px 14px;border-bottom:1px solid var(--line);font-size:14px}.log-row:last-child{border-bottom:0}.log-time{color:var(--muted);font-size:13px;white-space:nowrap}.log-actor{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:760px){.log-row{grid-template-columns:1fr auto}.log-actor{order:-1}.log-desc{grid-column:1 / -1}}.cut-bar{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;margin-bottom:16px}.cut-bar .seg{margin-bottom:0}.cut-date{flex:0 0 170px}.cut-bar-actions{margin-left:auto;display:flex;gap:8px}.cut-range{display:inline-flex;align-items:center;gap:8px;color:var(--muted);font-size:14px}.cut-range .input{width:160px;color:var(--ink)}.cut-presets{flex-basis:100%;display:flex;flex-wrap:wrap;gap:6px}.chip{min-height:32px;padding:0 12px;border-radius:999px;border:1px solid var(--line-strong);background:var(--surface);font-size:13px;font-weight:600;color:var(--muted);cursor:pointer}.chip:hover{color:var(--ink);border-color:var(--ink)}.chip[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:var(--on-ink)}.cut-tabs{margin-bottom:16px}.cut-head{margin-bottom:8px}.cut-period{margin:-4px 0 14px;font-weight:600}.cut-hint{font-weight:400;color:var(--muted);font-size:13px}.cut-loading{background:var(--surface-2);color:var(--muted);margin-bottom:12px}.cut-section-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin:0 16px 8px}.cut-section .cut-section-head h2{margin:0}.cut-section-head .seg{margin-bottom:0}.cut-when{white-space:nowrap}.link-btn{border:0;background:none;padding:0;font:inherit;color:var(--ink);text-decoration:underline;text-decoration-color:var(--signal);text-decoration-thickness:2px;text-underline-offset:3px;cursor:pointer}.link-btn:hover{text-decoration-color:var(--ink)}.cut-details{padding:0}.cut-details summary{cursor:pointer;padding:14px 16px;font-weight:700;font-size:15px}.cut-details[open] summary{border-bottom:1px solid var(--line)}.print-only{display:none}.cut-body{display:grid;gap:16px;transition:opacity .15s}.cut-body.is-loading{opacity:.55}.cut-kpis{display:grid;grid-template-columns:repeat(3,minmax(130px,max-content)) minmax(0,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:8px;overflow:hidden}.cut-kpi{background:var(--surface);padding:14px 18px;display:flex;flex-direction:column;gap:2px}.cut-kpi b{font-family:var(--mono);font-size:28px;line-height:1.1;font-variant-numeric:tabular-nums}.cut-kpi span{color:var(--muted);font-size:13px}.cut-kpi-ops b{font-family:inherit;font-size:16px;line-height:1.35;font-weight:600}.cut-section{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:14px 0 4px;min-width:0}.cut-section h2{font-size:15px;margin:0 16px 8px}.cut-scroll{overflow-x:auto}.cut-pair{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;align-items:start}.cut-table{width:100%;border-collapse:collapse;font-size:14px;font-variant-numeric:tabular-nums}.cut-table th{text-align:left;font-size:12px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;padding:6px 16px;border-bottom:1px solid var(--line);white-space:nowrap}.cut-table td{padding:9px 16px;border-bottom:1px solid var(--line);vertical-align:top}.cut-table tbody tr:last-child td{border-bottom:0}.cut-table .n{text-align:right;white-space:nowrap}.cut-table .mono{font-family:var(--mono);white-space:nowrap}.cut-table tfoot td{font-weight:700;border-top:2px solid var(--line-strong);border-bottom:0}.cut-sub{color:var(--muted);font-size:12px}@media(max-width:860px){.cut-pair{grid-template-columns:1fr}}@media(max-width:640px){.cut-date{flex:1 1 150px}.cut-bar-actions{margin-left:0;width:100%}.cut-range{flex:1 1 140px}.cut-range .input{width:100%}.cut-bar>.btn-primary{flex:1 1 100%}.cut-bar-actions .btn{flex:1}.cut-kpis{grid-template-columns:1fr 1fr 1fr}.cut-kpi{padding:10px 12px}.cut-kpi b{font-size:22px}.cut-kpi-ops{grid-column:1 / -1}.cut-kpi-ops b{font-size:15px}.cut-kpis-even{grid-template-columns:1fr 1fr}.cut-table th,.cut-table td{padding-left:12px;padding-right:12px}}@media print{.topbar,.noprint{display:none!important}body{background:#fff}.page.cut{padding:0;max-width:none}.print-only{display:block}.cut-print-title{font-size:20px;margin:0 0 4px}.cut-head{display:none}details.cut-details:not([open]){display:none}.cut-section,.cut-kpis{border-color:#ccc;break-inside:avoid}.cut-table tr{break-inside:avoid}.cut-pair{grid-template-columns:1fr 1fr}}
