/* ============================================================
   Служба безопасности (MILITARY_POLICE) — детективная доска.
   Изолирована от style.css. Акцент #c73c3c.
   ============================================================ */
/* SBMain — весь текст (Type Machine), SBAccent — акцент/декор (type-ra), SBLogo — логотип/штампы (Stamp) */
@font-face{font-family:"SBMain";src:url(/fonts/sb-main.ttf) format("truetype");font-weight:400 800;font-display:swap}
@font-face{font-family:"SBAccent";src:url(/fonts/sb-accent.ttf) format("truetype");font-weight:400;font-display:swap}
@font-face{font-family:"SBLogo";src:url(/fonts/sb-logo.ttf) format("truetype");font-weight:400;font-display:swap}

:root{
  --accent:#c73c3c; --accent-d:#9e2b2b; --accent-hi:#e05a52;
  --paper:#f3ecdd; --paper-2:#e8dfca; --ink:#2a2620; --ink-dim:#6b6355;
  --board:#1a140d;
  --art-board:url(/img/factions/sb/board.png);
  --art-sigil:url(/img/factions/sb/sigil.png);
  --art-folder:url(/img/factions/sb/folder-tex.png);
}
*{box-sizing:border-box}
html,body{margin:0; padding:0}
body.sb{
  min-height:100vh; color:var(--ink); background:var(--board);
  font-family:"SBMain",system-ui,sans-serif; line-height:1.5; overflow-x:hidden;
  -webkit-font-smoothing:antialiased;
}
a{color:inherit}
img{max-width:100%}

/* ---- поверхность-доска ---- */
.sb-board{position:fixed; inset:0; z-index:0; background:var(--art-board) center/cover no-repeat, var(--board)}
.sb-vig{position:fixed; inset:0; z-index:1; pointer-events:none;
  box-shadow:inset 0 0 220px 60px rgba(10,6,3,.6)}
.sb-strings{position:absolute; top:0; left:0; width:100%; z-index:3; pointer-events:none}

/* ---- дверь-интро: две створки вертикально ---- */
.sb-door{position:fixed; inset:0; z-index:80; pointer-events:none}
.sb-door.is-gone{display:none}
.sb-door__half{position:absolute; left:0; right:0; height:50%; overflow:hidden;
  background:
    repeating-linear-gradient(90deg, rgba(0,0,0,.16) 0 2px, transparent 2px 60px),
    linear-gradient(180deg,#3a3f45,#23272c 45%,#191c20);
  box-shadow:inset 0 0 120px rgba(0,0,0,.6);
  transition:transform 1.15s cubic-bezier(.7,0,.25,1)}
.sb-door__half::before{content:""; position:absolute; left:0; right:0; height:14px;
  background:repeating-linear-gradient(45deg,#d9a441 0 22px,#1c1c1c 22px 44px); opacity:.9}
.sb-door__half--top{top:0; border-bottom:2px solid #0c0d0f}
.sb-door__half--top::before{bottom:0}
.sb-door__half--bot{bottom:0; border-top:2px solid #0c0d0f}
.sb-door__half--bot::before{top:0}
.sb-door__emblem{position:absolute; left:50%; bottom:16px; transform:translateX(-50%);
  width:clamp(90px,13vw,150px); aspect-ratio:500/435;
  background:var(--art-sigil) center/contain no-repeat; filter:drop-shadow(0 4px 10px rgba(0,0,0,.6))}
.sb-door__label{position:absolute; left:50%; top:20px; transform:translateX(-50%);
  font-family:"SBMain"; letter-spacing:.24em; font-size:clamp(11px,1.6vw,16px); color:#c9ccd0; white-space:nowrap}
.sb-door__seam{position:absolute; left:0; right:0; top:calc(50% - 2px); height:4px; background:#000; opacity:.5;
  box-shadow:0 0 24px 6px rgba(0,0,0,.5); transition:opacity .5s}
.sb-door.is-open .sb-door__half--top{transform:translateY(-100%)}
.sb-door.is-open .sb-door__half--bot{transform:translateY(100%)}
.sb-door.is-open .sb-door__seam{opacity:0}

/* ---- нав ---- */
.sb-nav{position:fixed; top:0; left:0; right:0; z-index:40; display:flex; align-items:center;
  justify-content:flex-end; padding:14px clamp(16px,4vw,40px)}
.sb-nav__links{display:flex; gap:20px; font-family:"SBMain"; font-size:13px; letter-spacing:.14em; text-transform:uppercase}
.sb-nav__links a{color:#e6dcc6; text-decoration:none; text-shadow:0 1px 4px rgba(0,0,0,.8); transition:color .15s}
.sb-nav__links a:hover{color:var(--accent-hi)}

/* ---- кнопка звука ---- */
.sb-sound{position:fixed; right:clamp(14px,3vw,28px); bottom:clamp(14px,3vw,28px); z-index:40; cursor:pointer;
  font-family:"SBMain"; letter-spacing:.14em; font-size:12px; color:#e6dcc6; padding:9px 14px;
  background:rgba(20,16,10,.72); border:1px solid rgba(199,60,60,.5); border-radius:4px; backdrop-filter:blur(3px)}
.sb-sound:hover{border-color:var(--accent)}
.sb-sound .sb-sound__on{display:none; color:var(--accent-hi)}
.sb-sound.is-on .sb-sound__on{display:inline} .sb-sound.is-on .sb-sound__off{display:none}

/* ---- main ---- */
.sb-main{position:relative; z-index:4}
.sb-hero{position:relative; min-height:100vh; max-width:1180px; margin:0 auto; padding:70px clamp(16px,4vw,40px) 40px}

/* ---- приколотые бумажки ---- */
.sb-note{position:absolute; color:var(--ink); padding:18px 20px; border-radius:3px}
/* бумага-подложка: рваные края (SVG-фильтр) + тетрадные линии + настоящий загиб уголка */
.sb-paper{position:absolute; inset:0; z-index:-1; border-radius:inherit; filter:url(#sbTorn);
  background:
    repeating-linear-gradient(0deg, transparent 0 23px, rgba(60,92,150,.11) 23px 24px),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2'/%3E%3CfeColorMatrix values='0 0 0 0 0.15 0 0 0 0 0.13 0 0 0 0 0.1 0 0 0 0.05 0'/%3E%3C/filter%3E%3Crect width='120' height='120' filter='url(%23n)'/%3E%3C/svg%3E") top left/120px 120px,
    linear-gradient(165deg,#fbf6ea 0%, #f2ead7 55%, #e7dcc4 100%);
  box-shadow:0 1px 1px rgba(0,0,0,.16), 0 6px 8px rgba(0,0,0,.14), 0 18px 28px -8px rgba(0,0,0,.46)}
.sb-paper::after{content:""; position:absolute; right:-1px; bottom:-1px; width:clamp(26px,15%,46px); aspect-ratio:1;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 46 46'%3E%3Cdefs%3E%3ClinearGradient id='c' x1='0' y1='1' x2='1' y2='0'%3E%3Cstop offset='0' stop-color='%23cdbf96'/%3E%3Cstop offset='.5' stop-color='%23eee3c9'/%3E%3Cstop offset='1' stop-color='%23fdf8ec'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath d='M46 46 L9 46 C31 43 43 31 46 9 Z' fill='url(%23c)'/%3E%3C/svg%3E") bottom right/contain no-repeat;
  filter:drop-shadow(-3px -3px 4px rgba(0,0,0,.25))}
.sb-note--sticky .sb-paper{background:repeating-linear-gradient(0deg, transparent 0 22px, rgba(150,120,20,.13) 22px 23px), #f2e27a}
.sb-pin{position:absolute; top:-11px; left:50%; transform:translateX(-50%); width:20px; height:20px; border-radius:50%;
  background:radial-gradient(circle at 38% 34%, #ff7a6f, var(--accent) 45%, var(--accent-d) 100%);
  box-shadow:0 4px 7px rgba(0,0,0,.5), inset 0 -2px 3px rgba(0,0,0,.4); z-index:2}
.sb-pin::after{content:""; position:absolute; left:50%; top:52%; width:4px; height:4px; border-radius:50%;
  background:rgba(255,255,255,.75); transform:translate(-50%,-50%)}
.sb-pin--big{width:26px; height:26px; top:-14px}

.sb-note--title{left:4%; top:14%; width:min(430px,54%); transform:rotate(-2.4deg); padding:26px 30px 24px}
.sb-title{margin:0; font-family:"SBLogo"; font-weight:400; line-height:.98; letter-spacing:.02em;
  font-size:clamp(40px,7vw,74px); color:var(--ink)}
.sb-title__sub{margin-top:12px; font-family:"SBMain"; font-weight:500; font-size:clamp(16px,2.2vw,22px); color:var(--accent-d); transform:rotate(-1deg)}
.sb-title__code{margin-top:10px; font-family:"SBMain"; font-size:12px; letter-spacing:.16em; color:var(--ink-dim)}
.sb-stamp{position:absolute; top:14px; right:-6px; font-family:"SBLogo"; font-size:15px; letter-spacing:.18em;
  color:var(--accent); border:2px solid var(--accent); padding:3px 9px; transform:rotate(7deg); opacity:.82; border-radius:2px}

.sb-note--sticky{right:6%; top:9%; width:min(230px,42%); background:#f2e27a; font-family:"SBMain"; font-weight:500;
  font-size:clamp(14px,1.9vw,18px); color:#5a4a12; transform:rotate(3deg); text-align:center; line-height:1.4}
.sb-note--sticky::after{opacity:.35}

.sb-note--sigil{right:15%; top:31%; width:clamp(270px,32vw,410px); padding:22px; transform:rotate(2deg)}
.sb-sigil{aspect-ratio:500/435; background:var(--art-sigil) center/contain no-repeat;
  filter:drop-shadow(0 4px 8px rgba(0,0,0,.28))}

.sb-note--stats{left:12%; bottom:9%; padding:16px 20px; transform:rotate(-1.4deg)}
.sb-stats{display:flex; flex-wrap:wrap; gap:12px 26px}
.sb-stat{display:flex; flex-direction:column; gap:1px}
.sb-stat__lab{font-family:"SBMain"; font-size:10.5px; letter-spacing:.14em; text-transform:uppercase; color:var(--accent-d)}
.sb-stat__val{font-family:"SBAccent","SBMain",sans-serif; font-weight:800; font-size:26px; color:var(--ink); font-variant-numeric:tabular-nums}

.sb-scrollhint{position:absolute; left:50%; bottom:18px; transform:translateX(-50%); font-family:"SBMain";
  font-size:12px; letter-spacing:.18em; color:#e6dcc6; text-shadow:0 1px 5px rgba(0,0,0,.8); opacity:.85}

/* ---- тело ---- */
.sb-body{position:relative; z-index:4; max-width:1000px; margin:0 auto; padding:0 clamp(14px,4vw,40px) 90px}

/* ---- командование (приколотые карточки) ---- */
.sb-slab{position:relative; margin:30px 0 0; background:var(--paper); border-radius:3px;
  padding:20px clamp(16px,3vw,28px); box-shadow:0 16px 36px rgba(0,0,0,.4)}
.sb-slab__head{border-bottom:2px solid rgba(42,38,32,.2); margin-bottom:16px; padding-bottom:10px}
.sb-slab__head h2{margin:0; font-family:"SBMain"; font-size:20px; letter-spacing:.06em; text-transform:uppercase; color:var(--ink)}
/* командование = ДОСКА ПОЧЁТА: приколотые мугшот-фото на пробке, командир по центру с акцентом */
.sb-honor{margin:44px 0 0; text-align:center}
.sb-honor__title{font-family:"SBLogo"; font-size:clamp(18px,2.6vw,24px); letter-spacing:.06em; text-transform:uppercase;
  color:#f0e7d2; text-shadow:0 2px 8px rgba(0,0,0,.85); margin-bottom:36px}
.sb-honor__row{display:grid; grid-template-columns:1fr auto 1fr; align-items:end; gap:clamp(14px,3vw,44px)}
.sb-honor__side{display:flex; align-items:end; gap:clamp(14px,2.4vw,34px)}
.sb-honor__side--l{justify-content:flex-end} .sb-honor__side--r{justify-content:flex-start}
.sb-lead{position:relative; cursor:pointer; width:clamp(118px,15vw,162px); transform:rotate(var(--r,-2deg)); transition:transform .15s}
.sb-lead:hover{transform:rotate(var(--r,-2deg)) translateY(-5px)}
.sb-lead__photo{position:relative; aspect-ratio:3/4; overflow:hidden; border:6px solid #f3ecdd; display:grid; place-items:center;
  background:radial-gradient(120% 120% at 50% 28%, #262a30, #0f1114); box-shadow:0 14px 26px rgba(0,0,0,.55)}
.sb-lead__photo b{font-family:"SBLogo"; font-size:clamp(38px,6vw,60px); color:#4a4e55}
.sb-lead__photo::after{content:""; position:absolute; inset:0; pointer-events:none;
  background:repeating-linear-gradient(0deg, transparent 0 3px, rgba(0,0,0,.15) 3px 4px)}
.sb-lead__cap{margin:9px auto 0; width:94%; background:#f3ecdd; padding:7px 6px; transform:rotate(1.1deg); box-shadow:0 6px 12px rgba(0,0,0,.4)}
.sb-lead__role{font-family:"SBMain"; font-size:10px; letter-spacing:.1em; text-transform:uppercase; color:var(--accent-d)}
.sb-lead__name{font-family:"SBMain"; font-weight:800; font-size:14px; color:var(--ink); line-height:1.15}
.sb-lead__num{color:var(--ink-dim); font-weight:500; font-size:12px}
/* командир — акцент: крупнее, красная обводка фото, красная подпись, звезда */
.sb-lead--cmd{width:clamp(158px,20vw,214px)}
.sb-lead--cmd .sb-lead__photo{box-shadow:0 0 0 3px var(--accent), 0 16px 32px rgba(0,0,0,.6)}
.sb-lead--cmd .sb-lead__photo b{color:#6d5054}
.sb-lead--cmd .sb-lead__cap{background:var(--accent)}
.sb-lead--cmd .sb-lead__role{color:#fff} .sb-lead--cmd .sb-lead__name{color:#fff} .sb-lead--cmd .sb-lead__num{color:rgba(255,255,255,.72)}
.sb-lead--cmd::after{content:"★"; position:absolute; top:-8px; left:-8px; z-index:3; width:28px; height:28px; border-radius:50%;
  background:var(--accent); color:#fff; display:grid; place-items:center; font-size:15px; box-shadow:0 3px 7px rgba(0,0,0,.55)}
@media (max-width:640px){ .sb-honor__row{grid-template-columns:1fr} .sb-honor__side{flex-wrap:wrap; justify-content:center} }

/* ---- досье-таблица ---- */
/* реестр = распечатка с тракторной перфорацией по обоим краям */
.sb-dossier{position:relative; margin:44px 0 0; border-radius:3px; padding:26px 52px 30px 52px;
  box-shadow:0 22px 50px rgba(0,0,0,.5);
  background:
    radial-gradient(circle at 26px 21px, rgba(28,18,8,.5) 3.5px, transparent 4.6px) 0 0/100% 38px repeat-y,
    radial-gradient(circle at calc(100% - 26px) 21px, rgba(28,18,8,.5) 3.5px, transparent 4.6px) 0 0/100% 38px repeat-y,
    var(--paper)}
.sb-dossier::before{content:""; position:absolute; left:44px; top:8px; bottom:8px; width:1px; background:rgba(42,38,32,.2)}
.sb-dossier::after{content:""; position:absolute; right:44px; top:8px; bottom:8px; width:1px; background:rgba(42,38,32,.2)}
.sb-dossier__pin{left:50%}
.sb-dossier__stamp{position:absolute; right:20px; top:-14px; font-family:"SBLogo"; font-size:20px; letter-spacing:.2em;
  color:var(--accent); border:3px double var(--accent); padding:4px 14px; transform:rotate(-4deg); opacity:.85; background:rgba(243,236,221,.6)}
.sb-dossier__head{display:flex; align-items:flex-end; justify-content:space-between; gap:16px; flex-wrap:wrap; margin-bottom:14px}
.sb-dossier__head h2{margin:0; font-family:"SBMain"; font-size:clamp(17px,2.4vw,22px); letter-spacing:.04em; text-transform:uppercase; color:var(--ink)}
.sb-dossier__tools{display:flex; align-items:center; gap:12px}
#memberSearch{font-family:"SBMain"; font-size:13px; color:var(--ink); padding:8px 12px; border:1px solid rgba(42,38,32,.35);
  background:rgba(255,255,255,.5); border-radius:2px; min-width:210px}
#memberSearch:focus{outline:none; border-color:var(--accent)}
.sb-count{font-family:"SBMain"; font-size:12px; color:var(--ink-dim); white-space:nowrap}

.sb-tablewrap{overflow-x:auto}
.sb-table{width:100%; border-collapse:collapse; font-size:13.5px; min-width:0}
.sb-table thead th{text-align:left; font-family:"SBMain"; font-size:12px; letter-spacing:.08em; text-transform:uppercase;
  color:var(--accent-d); padding:0 9px 10px; cursor:pointer; user-select:none; white-space:nowrap}
.sb-table thead th:hover{color:var(--accent)}
.sb-table tbody td{padding:10px 9px; vertical-align:middle; white-space:nowrap; font-variant-numeric:tabular-nums;
  /* SVG печатная линия-разделитель */
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='4'%3E%3Cpath d='M0 2 H120' stroke='%232a2620' stroke-width='1' stroke-dasharray='2 3' opacity='0.45'/%3E%3C/svg%3E") bottom left repeat-x}
.sb-table tbody tr{cursor:pointer; transition:background .12s}
.sb-table tbody tr:hover{background:rgba(199,60,60,.08)}
.who{display:flex; align-items:center; gap:10px}
.who__sig{width:28px; height:28px; border-radius:2px; flex:0 0 auto; display:grid; place-items:center;
  background:#2a2620; color:var(--paper); font-family:"SBMain"; font-size:13px}
.who b{font-weight:700; color:var(--ink); font-family:"SBMain"}
.rank-short{color:var(--accent-d); font-family:"SBMain"} .rank-name{color:var(--ink-dim); font-size:12.5px}
.seen-on{color:#2f7d3a; font-weight:700} .seen-off{color:var(--ink-dim)}
.warn-chip{font-family:"SBMain"; font-size:11px; color:var(--accent)}
/* greenbar-полосы + статус-LED (ЭВМ-распечатка) */
.sb-table tbody tr:nth-child(odd){background:rgba(95,150,85,.13)}
.sb-table tbody tr:hover{background:rgba(199,60,60,.13)}
.sb-row-status{width:8px; height:8px; border-radius:50%; flex:0 0 auto; display:inline-block}
.sb-row-status.on{background:#3a9d4a; box-shadow:0 0 5px rgba(58,157,74,.85)}
.sb-row-status.off{background:#a89e8a}

/* ---- журнал ---- */
.sb-logs{list-style:none; margin:0; padding:0; display:flex; flex-direction:column; font-size:13.5px}
.sb-logs li{display:flex; align-items:center; gap:16px; padding:9px 0;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='4'%3E%3Cpath d='M0 2 H120' stroke='%232a2620' stroke-width='1' stroke-dasharray='2 3' opacity='0.4'/%3E%3C/svg%3E") bottom left repeat-x}
.sb-log__l{flex:1 1 auto; min-width:0; color:var(--ink); font-family:"SBMain"; font-weight:500}
.sb-log__l em{color:var(--ink-dim); font-style:normal; font-weight:400}
.sb-log__amt{flex:0 0 auto; min-width:96px; text-align:right; font-family:"SBMain"; font-weight:800; white-space:nowrap; font-variant-numeric:tabular-nums}
.sb-log__amt.pos{color:#2f7d3a} .sb-log__amt.neg{color:var(--accent)}
.sb-log__ts{flex:0 0 auto; min-width:130px; text-align:right; white-space:nowrap; color:var(--ink-dim); font-family:"SBMain"; font-size:12px}

.sb-foot{display:flex; justify-content:space-between; gap:14px; flex-wrap:wrap; margin-top:40px;
  font-family:"SBMain"; font-size:12px; letter-spacing:.06em; color:#e6dcc6; text-shadow:0 1px 4px rgba(0,0,0,.8)}
.sb-foot a{color:var(--accent-hi); text-decoration:none}

/* ---- попап-дело ---- */
.sb-scrim{position:fixed; inset:0; z-index:70; display:flex; flex-direction:column; align-items:center; justify-content:center;
  padding:30px 20px; overflow:auto; background:rgba(6,4,2,.72); backdrop-filter:blur(4px)}
.sb-scrim[hidden]{display:none}
.sb-file{position:relative; width:min(780px,95vw); border-radius:4px; overflow:visible; color:#e7e1d3;
  padding:26px 30px 24px 44px;
  /* стопка документов + папка позади (выглядывают снизу-справа) */
  box-shadow:8px 12px 0 -3px #d6cbb0, 17px 25px 0 -7px #bfb492, 27px 38px 0 -11px #34373c,
             0 42px 90px rgba(0,0,0,.72), 0 0 0 1px rgba(0,0,0,.6);
  background:linear-gradient(180deg, rgba(18,20,24,.84), rgba(13,14,17,.92)), var(--art-folder) center/cover;
  background-clip:padding-box;
  animation:sbRise .28s cubic-bezier(.2,.9,.3,1)}
.sb-file::before{content:""; position:absolute; top:10px; bottom:10px; right:-12px; width:44px; z-index:-1;
  background:linear-gradient(90deg,#2b2e33,#16171a); border-radius:0 6px 6px 0; box-shadow:6px 0 20px rgba(0,0,0,.6)}
@keyframes sbRise{from{transform:translateY(14px) scale(.985); opacity:0}}
.sb-file__close{position:absolute; top:12px; right:14px; z-index:3; width:32px; height:32px; border-radius:3px; cursor:pointer;
  background:rgba(0,0,0,.4); border:1px solid rgba(199,60,60,.5); color:#e7e1d3; font-size:16px}
.sb-file__close:hover{border-color:var(--accent); color:var(--accent-hi)}
.sb-file__stamp{position:absolute; right:54px; top:16px; z-index:2; font-family:"SBLogo"; font-size:14px; line-height:1.05; text-align:center;
  letter-spacing:.1em; color:var(--accent-hi); border:2px solid var(--accent); padding:5px 12px; transform:rotate(6deg); opacity:.9}
.sb-file__code{position:absolute; left:12px; top:0; bottom:0; display:flex; align-items:center; z-index:2;
  writing-mode:vertical-rl; transform:rotate(180deg); font-family:"SBMain"; font-size:11px; letter-spacing:.26em; color:#8f8a7d; padding:18px 0}
.sb-file__grid{display:grid; grid-template-columns:1fr auto; gap:26px; align-items:start}
.sb-file__eyebrow{font-family:"SBMain"; font-size:11px; letter-spacing:.2em; color:var(--accent-hi)}
.sb-file__title{font-family:"SBLogo"; font-size:30px; line-height:1; letter-spacing:.02em; color:#f2ecdd; margin:5px 0 16px; padding-right:20px}
.sb-file__title small{display:block; font-family:"SBMain"; font-size:13px; color:var(--accent-hi); margin-top:6px; letter-spacing:.04em}
.sb-file__body{max-height:58vh; overflow:auto; padding-right:6px}
.sb-file__aside{width:clamp(150px,25vw,186px)}
.sb-file__photo{position:relative; aspect-ratio:3/4; background:#0d0e10; border:1px solid rgba(199,60,60,.4); display:grid; place-items:center;
  font-family:"SBLogo"; font-size:64px; color:#3c3f45; box-shadow:inset 0 0 44px rgba(0,0,0,.7)}
.sb-file__photo::after{content:"ФОТО"; position:absolute; bottom:6px; right:8px; font-family:"SBMain"; font-size:9px; letter-spacing:.2em; color:#6b6a63}
.sb-clip{position:absolute; top:-15px; right:24px; width:15px; height:46px; border:3px solid #b9bcc0; border-bottom:0; border-radius:8px 8px 0 0; transform:rotate(9deg)}
.sb-file__emblem{margin-top:12px; height:66px; background:var(--art-sigil) center/contain no-repeat; opacity:.45}
.sb-dossier-grid{display:grid; grid-template-columns:1fr 1fr; gap:0 24px}
.sb-dossier-grid div{display:flex; justify-content:space-between; gap:12px; padding:9px 0; font-family:"SBMain"; font-size:13.5px;
  border-bottom:1px dashed rgba(255,255,255,.15)}
.sb-dossier-grid span:first-child{color:var(--accent-hi); letter-spacing:.02em}
.sb-dossier-grid span:last-child{color:#efe9dc; font-weight:700; font-variant-numeric:tabular-nums; text-align:right}
.sb-sect{margin-top:18px}
.sb-sect h4{margin:0 0 10px; font-family:"SBMain"; font-size:13px; letter-spacing:.1em; text-transform:uppercase; color:var(--accent-hi);
  border-bottom:1px solid rgba(199,60,60,.4); padding-bottom:5px}
/* заметки — СНАРУЖИ дела (ниже папки), связаны дугами-нитками (SVG рисует JS) */
.sb-file__notes{position:relative; z-index:1; margin-top:38px; display:flex; flex-wrap:wrap; justify-content:center; gap:26px 30px; width:min(900px,96vw)}
.sb-notes-head{flex:1 0 100%; text-align:center; font-family:"SBMain"; font-size:12px; letter-spacing:.14em; text-transform:uppercase; color:var(--accent-hi); margin-bottom:2px}
.sb-file__arcs{position:absolute; inset:0; width:100%; height:100%; overflow:visible; pointer-events:none; z-index:0}
.sb-mininote{position:relative; z-index:1; width:clamp(160px,40%,220px); padding:15px 16px 13px; color:var(--ink); font-family:"SBMain"; font-size:12.5px;
  border-radius:2px; opacity:0; transform:translateY(-20px) scale(.94) rotate(var(--rot,-1.5deg));
  transition:opacity .34s ease, transform .44s cubic-bezier(.2,.9,.3,1)}
.sb-mininote.is-in{opacity:1; transform:rotate(var(--rot,-1.5deg))}
.sb-mininote--off.is-in{opacity:.6}
.sb-mininote::before{content:""; position:absolute; top:-9px; left:50%; transform:translateX(-50%); width:15px; height:15px; border-radius:50%;
  background:radial-gradient(circle at 38% 34%, #ff7a6f, var(--accent) 45%, var(--accent-d) 100%); box-shadow:0 3px 5px rgba(0,0,0,.5); z-index:2;
  opacity:0; transition:opacity .2s ease .12s}
.sb-mininote.is-in::before{opacity:1}
.sb-mininote b{color:var(--accent-d)} .sb-mininote small{display:block; margin-top:4px; color:var(--ink-dim)}
/* кнопка «полное дело» — только СБ; зарезервированное место */
.sb-casefile{margin-top:20px; border-top:1px solid rgba(199,60,60,.35); padding-top:16px}
.sb-casebtn{display:inline-flex; align-items:center; gap:9px; cursor:pointer; font-family:"SBMain"; font-size:13px; letter-spacing:.04em;
  padding:11px 20px; border-radius:3px; background:rgba(199,60,60,.16); border:1px solid var(--accent); color:var(--accent-hi)}
.sb-casebtn:hover{background:rgba(199,60,60,.3); color:#fff}
.sb-caselock{margin-top:20px; border-top:1px solid rgba(255,255,255,.12); padding-top:14px; font-family:"SBMain"; font-size:12px; color:#8f8a7d}
.sb-warn{padding:8px 12px; border-left:3px solid var(--accent); background:rgba(199,60,60,.1); margin-bottom:6px; font-size:13px; font-family:"SBMain"; color:#e7e1d3}
.sb-warn small{color:#9a9488}
.sb-empty{color:#9a9488; font-size:13px; font-family:"SBMain"}
.btn-ghost{cursor:pointer; font-family:"SBMain"; font-size:13px; padding:8px 14px; border-radius:2px;
  background:rgba(255,255,255,.06); border:1px solid rgba(199,60,60,.45); color:#e7e1d3}
.btn-ghost:hover{border-color:var(--accent); color:var(--accent-hi)}

:focus-visible{outline:2px solid var(--accent); outline-offset:2px}

/* ---- адаптив: на узких экранах бумажки в поток ---- */
@media (max-width:760px){
  .sb-hero{min-height:0; padding-top:80px; display:flex; flex-direction:column; gap:18px}
  .sb-note{position:static; width:auto !important; transform:none !important; margin:0 auto}
  .sb-strings{display:none}
  .sb-scrollhint{display:none}
  .sb-dossier-grid{grid-template-columns:1fr}
}
@media (prefers-reduced-motion: reduce){
  .sb-door__half{transition:none}
}

/* Тег отряда/отдела рядом с именем в реестре */
.cf-utag{--fu:var(--sb-ink,#c9c2b4);display:inline-block;margin-left:8px;padding:1px 6px;
  font-family:var(--sb-accent,inherit);font-size:9px;letter-spacing:.08em;vertical-align:middle;
  color:var(--fu);border:1px solid color-mix(in srgb,var(--fu) 45%,transparent)}
