/* Электронное удостоверение МПР: три дизайна (A «Корочка», B «Обсидиан», C «Полевой документ») */
@property --idc-h{syntax:"<angle>";inherits:false;initial-value:0deg}
.idc{position:relative;width:100%;display:flex;flex-direction:column;align-items:center}
.idc-qr{background:#fff;border-radius:6px;padding:4px}
.idc-qr svg{display:block;width:100%;height:auto}
.idc-sample,.idc-void{position:absolute;z-index:5;top:50%;left:50%;transform:translate(-50%,-50%) rotate(-14deg);font:800 clamp(22px,6vw,54px)/1 Unbounded,sans-serif;letter-spacing:.12em;pointer-events:none;white-space:nowrap}
.idc-sample{color:rgba(255,120,80,.16);font-size:clamp(18px,4vw,40px)}
.idc-void{color:rgba(220,20,30,.75);border:4px solid currentColor;padding:6px 14px;border-radius:10px;background:rgba(255,255,255,.6)}
.idc img{max-width:100%}
.idc-photo-fill img,.idc-a-photo img,.idc-b-photo img,.idc-c-photo img{width:100%;height:100%;object-fit:cover;display:block}
.idc svg:not(.idc-seal){width:100%;height:100%}

/* ---------- A ---------- */
.idc-a-book{display:flex;width:min(100%,680px);aspect-ratio:2/1.08;background:#5c1620;border-radius:14px;padding:3%;gap:2.2%;box-shadow:0 40px 80px -30px #000,inset 0 0 0 2px #7a2230;container-type:inline-size}
.idc-a-page{flex:1;border-radius:6px;position:relative;overflow:hidden;background:#f8e3e6;color:#2a1a1e;padding:5% 4.5%;font-size:1.5cqw;font-family:"Golos Text",Arial,sans-serif}
.idc-a-page::before{content:"";position:absolute;inset:0;background:repeating-radial-gradient(circle at 70% 50%,transparent 0 6px,rgba(214,70,90,.10) 6px 7px),repeating-linear-gradient(115deg,transparent 0 9px,rgba(200,60,80,.07) 9px 10px),repeating-linear-gradient(65deg,transparent 0 11px,rgba(80,90,200,.05) 11px 12px);pointer-events:none}
.idc-a-ros{position:absolute;right:-12%;top:18%;width:58%;aspect-ratio:1;border-radius:50%;background:repeating-conic-gradient(rgba(214,70,90,.18) 0 4deg,transparent 4deg 9deg);-webkit-mask:radial-gradient(circle,transparent 18%,#000 19%,#000 68%,transparent 70%);mask:radial-gradient(circle,transparent 18%,#000 19%,#000 68%,transparent 70%)}
.idc-a-ros-l{left:-22%;right:auto}
.idc-a-page>*:not(.idc-a-ros):not(.idc-seal){position:relative}
.idc-a-org{text-align:center;font-weight:700;font-size:1.05em;line-height:1.25;text-transform:uppercase}
.idc-a-no{text-align:center;font:800 1.75em/1.15 Unbounded,sans-serif;margin:.45em 0 .6em}
.idc-a-row{display:grid;grid-template-columns:34% 1fr;gap:6%}
.idc-a-photo{aspect-ratio:3/4;border-radius:4px;background:linear-gradient(160deg,#cdb6bb,#a98e95);overflow:hidden;position:relative}
.idc-holo{position:absolute;right:-16%;bottom:-12%;width:60%;aspect-ratio:1;border-radius:50%;background:conic-gradient(from var(--idc-h),#ff9ad5,#9be7ff,#c6ff9b,#ffe39b,#ff9ad5);opacity:.7;mix-blend-mode:screen;animation:idc-holo 4s linear infinite;box-shadow:inset 0 0 0 2px rgba(255,255,255,.6)}
@keyframes idc-holo{to{--idc-h:360deg}}
.idc-a-f{margin:.15em 0;font-size:.95em}.idc-a-f b{font-size:1.4em;text-transform:uppercase}
.idc-a-f small{font-weight:700;text-transform:uppercase;font-size:.8em;margin-right:.4em;color:#7a3a45}
.idc-a-gap{margin-top:.7em}
.idc-a-r{text-align:center}
.idc-a-r h4{margin:0;font-size:1.05em;text-transform:uppercase;line-height:1.3}
.idc-a-r p{font-size:.8em;line-height:1.35;margin:.6em 0}
.idc-a-bottom{display:flex;align-items:flex-end;justify-content:space-between;text-align:left;font-size:.85em;margin-top:.4em}
.idc-a-bottom .idc-qr{width:30%}
.idc-a .idc-seal{position:absolute;width:34%;right:22%;bottom:5%;opacity:.8;transform:rotate(-12deg)}

/* ---------- B ---------- */
.idc-b-card{width:min(100%,560px);aspect-ratio:85.6/54;position:relative;transform-style:preserve-3d;transition:transform .9s cubic-bezier(.2,.7,.2,1);cursor:pointer;container-type:inline-size;outline:none}
.idc-b-card.flip{transform:rotateY(180deg)}
.idc-b-face{position:absolute;inset:0;border-radius:4.2cqw;overflow:hidden;-webkit-backface-visibility:hidden;backface-visibility:hidden;color:#f3eee6;padding:6% 6.5%;font-size:2.3cqw;font-family:"Golos Text",Arial,sans-serif;
 background:radial-gradient(120% 90% at 85% 110%,rgba(255,110,40,.55),transparent 55%),radial-gradient(80% 60% at 0% 0%,rgba(90,60,200,.35),transparent 60%),linear-gradient(160deg,#16131d,#0b0a10 60%,#140a08);box-shadow:0 50px 90px -40px #000,inset 0 0 0 1px rgba(255,255,255,.08)}
.idc-b-face::before{content:"";position:absolute;inset:0;background-image:radial-gradient(1px 1px at 12% 22%,#fff,transparent),radial-gradient(1px 1px at 32% 70%,#fff8,transparent),radial-gradient(1.4px 1.4px at 54% 14%,#fff,transparent),radial-gradient(1px 1px at 76% 40%,#fff9,transparent),radial-gradient(1px 1px at 90% 12%,#fff,transparent),radial-gradient(1px 1px at 22% 88%,#fff7,transparent);opacity:.8}
.idc-b-streak{position:absolute;width:55%;height:2px;right:-6%;top:22%;background:linear-gradient(90deg,transparent,#ffd29a 70%,#fff);filter:drop-shadow(0 0 6px #ff9b4a);animation:idc-streak 6s ease-in-out infinite;opacity:0}
@keyframes idc-streak{0%,70%{opacity:0;transform:translateX(-30%) rotate(-24deg)}80%{opacity:1}100%{opacity:0;transform:translateX(30%) rotate(-24deg)}}
.idc-b-back{transform:rotateY(180deg)}
.idc-b-top{display:flex;align-items:center;gap:3%;position:relative}
.idc-b-top img{width:12%}
.idc-b-top div{font:600 .85em/1.25 Unbounded,sans-serif;letter-spacing:.06em;text-transform:uppercase}
.idc-b-top em{display:block;font-style:normal;color:#ff9b5a;font-size:.85em;letter-spacing:.18em}
.idc-b-main{display:grid;grid-template-columns:25% 1fr;gap:5%;margin-top:5%;position:relative}
.idc-b-photo{aspect-ratio:3/4;border-radius:2cqw;background:linear-gradient(160deg,#3a3440,#1e1a24);overflow:hidden;box-shadow:0 0 0 1px rgba(255,180,120,.45),0 0 24px -6px #ff7a2a}
.idc-b-name{font:800 1.6em/1.08 Unbounded,sans-serif;text-transform:uppercase;background:linear-gradient(100deg,#fff 30%,#ffc48a 50%,#fff 70%);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:idc-foil 5s linear infinite}
@keyframes idc-foil{to{background-position:-200% 0}}
.idc-b-sub{color:#c9c0b5;margin-top:.5em}
.idc-b-meta{display:flex;gap:6%;margin-top:6%;flex-wrap:wrap}
.idc-b-meta small{display:block;color:#8e8597;text-transform:uppercase;letter-spacing:.1em;font-size:.66em}
.idc-b-meta b{font:600 1em Unbounded,sans-serif}
.idc-b-site{position:absolute;right:6.5%;bottom:7%;font:600 .7em Unbounded,sans-serif;letter-spacing:.14em;color:#ffb37a;text-transform:uppercase}
.idc-b-backgrid{display:grid;grid-template-columns:1fr 34%;gap:6%;height:100%;position:relative;align-items:center}
.idc-b-back .idc-qr{border-radius:2cqw;padding:2.5%;box-shadow:0 0 30px -8px #ff7a2a}
.idc-b-text p{margin:0 0 .7em;line-height:1.4;color:#d8d0c6;font-size:.9em}
.idc-b-text h4{margin:0 0 .6em;font:700 1em/1.3 Unbounded,sans-serif;text-transform:uppercase}
.idc-b-chair{color:#ff9b5a!important}
.idc-b-hint{text-align:center;color:#8e889c;font-size:13px;margin-top:12px}

/* ---------- C ---------- */
.idc-c-doc{width:min(100%,360px);border-radius:30px;overflow:hidden;background:#f4efe3;color:#1d2a22;position:relative;box-shadow:0 0 0 10px #0d0d12,0 0 0 12px #26252e,0 50px 90px -30px #000;font-family:"Golos Text",Arial,sans-serif}
.idc-c-map{position:absolute;inset:0;opacity:.55;background:radial-gradient(circle at 20% 30%,transparent 0 40px,rgba(60,110,80,.25) 41px 42px,transparent 43px 60px,rgba(60,110,80,.22) 61px 62px,transparent 63px 82px,rgba(60,110,80,.18) 83px 84px,transparent 85px),radial-gradient(circle at 85% 70%,transparent 0 30px,rgba(140,90,40,.25) 31px 32px,transparent 33px 52px,rgba(140,90,40,.2) 53px 54px,transparent 55px 76px,rgba(140,90,40,.16) 77px 78px,transparent 79px),repeating-linear-gradient(0deg,transparent 0 39px,rgba(30,60,40,.08) 39px 40px),repeating-linear-gradient(90deg,transparent 0 39px,rgba(30,60,40,.08) 39px 40px)}
.idc-c-in{position:relative;padding:22px 20px 18px}
.idc-c-head{display:flex;align-items:center;gap:10px}
.idc-c-head img{width:46px}
.idc-c-head div{font:700 11px/1.25 Unbounded,sans-serif;text-transform:uppercase}
.idc-c-status{margin:16px 0 14px;border-radius:16px;padding:10px 14px;background:#1f6b45;color:#eafff2;display:flex;align-items:center;gap:10px;font-weight:600;font-size:14px;overflow:hidden;position:relative}
.idc-c-status.bad{background:#a3202a}
.idc-c-status::after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,transparent 30%,rgba(255,255,255,.25) 50%,transparent 70%);animation:idc-shine 3s linear infinite}
@keyframes idc-shine{from{transform:translateX(-100%)}to{transform:translateX(100%)}}
.idc-c-dot{width:10px;height:10px;border-radius:50%;background:#7dffb2;animation:idc-pulse 1.6s infinite}
@keyframes idc-pulse{0%{box-shadow:0 0 0 0 #7dffb2}70%{box-shadow:0 0 0 8px transparent}}
.idc-c-photo{width:124px;aspect-ratio:3/4;border-radius:16px;margin:0 auto;background:linear-gradient(160deg,#c9c1ad,#a39a83);overflow:hidden;box-shadow:0 0 0 4px #fff,0 10px 24px -10px #0006}
.idc-c-name{text-align:center;font:800 19px/1.2 Unbounded,sans-serif;margin:14px 0 4px}
.idc-c-role{text-align:center;color:#5a6a5f;font-size:13px}
.idc-c-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:16px 0}
.idc-c-grid div{background:rgba(255,255,255,.72);border-radius:12px;padding:8px 10px}
.idc-c-grid small{display:block;color:#6d7a70;font-size:10px;text-transform:uppercase;letter-spacing:.1em}
.idc-c-grid b{font:600 12.5px Unbounded,sans-serif}
.idc-c-live{display:flex;justify-content:space-between;font:600 12px Unbounded,sans-serif;color:#1f6b45;border-top:1px dashed #b8b09c;padding-top:12px}
.idc-c .idc-qr{width:150px;margin:14px auto 0;padding:8px;border-radius:14px}
.idc-c-foot{text-align:center;font-size:11px;color:#5a6a5f;margin-top:10px}
.idc-c-rib{height:10px;background:repeating-linear-gradient(90deg,#c0262f 0 18px,#f4efe3 18px 22px,#1f6b45 22px 40px,#f4efe3 40px 44px);background-size:88px 10px;animation:idc-rib 3s linear infinite}
@keyframes idc-rib{to{background-position:88px 0}}

@media print{
  .idc-b-hint{display:none}
  .idc-b-card{transform:none!important;aspect-ratio:auto;display:flex;flex-direction:column;gap:6mm;width:85.6mm}
  .idc-b-face{position:relative;inset:auto;aspect-ratio:85.6/54;transform:none!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .idc-a-book,.idc-c-doc,.idc-c-rib,.idc-c-status{-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .idc *{animation:none!important}
}

/* ---------- E — «Ар-деко Нуар»: чёрный лак и золото, вертикальная карта 9:16 ---------- */
.idn{--g:#d9b062;--metal:linear-gradient(180deg,#fff4cc 0%,#f6d88e 18%,#e2b75a 42%,#a37a2a 60%,#e9c46f 78%,#f6d88e 88%,#8a6420 100%);
 position:relative;width:min(100%,400px,calc((100svh - 40px) * 9 / 16));aspect-ratio:9/16;border-radius:22px;overflow:hidden;container-type:inline-size;isolation:isolate;
 display:flex;flex-direction:column;color:#f6ead0;font-family:"Golos Text",Arial,sans-serif;font-variant-numeric:lining-nums;
 background:linear-gradient(180deg,#1d1b19,#0e0d0c 50%,#050505);box-shadow:0 40px 70px -30px rgba(0,0,0,.9),0 0 0 1px rgba(0,0,0,.4);-webkit-print-color-adjust:exact;print-color-adjust:exact}
.idn>*{position:relative;z-index:2}
.idn .idn-bg,.idn .idn-art,.idn .idn-guil,.idn .idn-frame,.idn .idn-holo{position:absolute;inset:0;pointer-events:none}
.idn .idn-bg{z-index:0;background:radial-gradient(70% 35% at 50% 10%,rgba(217,176,98,.18),transparent 70%),repeating-linear-gradient(90deg,rgba(255,255,255,.015) 0 1px,transparent 1px 4px)}
.idn .idn-art{z-index:0}
.idn .idn-art svg,.idn .idn-frame svg{position:absolute;inset:0;width:100%;height:100%}
.idn .idn-guil{z-index:1}
.idn .idn-guil svg{position:absolute;width:118%;left:-9%;top:22%;opacity:.2}
.idn .idn-frame{z-index:3}
.idn .idn-holo{z-index:4;background:linear-gradient(115deg,transparent 35%,rgba(255,240,200,.22) 47%,rgba(255,210,150,.18) 52%,transparent 60%);background-size:300% 100%;mix-blend-mode:screen;animation:idn-holo 6s ease-in-out infinite}
@keyframes idn-holo{0%,100%{background-position:100% 0}50%{background-position:0 0}}
.idn-hd{display:flex;flex-direction:column;align-items:center;text-align:center;gap:2cqw;padding:8cqw 5.6cqw 0}
.idn-hd img{width:17cqw;filter:sepia(1) saturate(.7) brightness(.95) contrast(1.1)}
.idn-org b{display:block;font:900 5.4cqw/1.02 "Playfair Display",Georgia,serif;letter-spacing:.06em;white-space:nowrap;background:var(--metal);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 .3cqw 0 rgba(0,0,0,.5))}
.idn-org i{display:block;font:400 3.6cqw/1 "Poiret One",sans-serif;font-style:normal;letter-spacing:.5em;color:var(--g);margin-top:1.2cqw;padding-left:.5em}
.idn-kind{margin:3cqw 5.6cqw 0;padding:2cqw 0;display:flex;align-items:center;gap:2.4cqw;font:400 3.6cqw "Poiret One",sans-serif;letter-spacing:.24em;text-transform:uppercase;color:var(--g);white-space:nowrap}
.idn-kind::before,.idn-kind::after{content:"";flex:1;height:0;border-top:1px solid;border-bottom:1px solid;padding-top:1.2cqw;opacity:.6}
.idn-top{display:grid;grid-template-columns:34cqw 1fr;gap:4.4cqw;padding:2.4cqw 5.6cqw 0}
.idn-phw{padding:1cqw;background:var(--metal);clip-path:polygon(12% 0,88% 0,100% 8%,100% 92%,88% 100%,12% 100%,0 92%,0 8%)}
.idn-ph{aspect-ratio:3/4;overflow:hidden;background:#2a2622;clip-path:polygon(12% 0,88% 0,100% 8%,100% 92%,88% 100%,12% 100%,0 92%,0 8%)}
.idn-ph img{width:100%;height:100%;object-fit:cover;display:block}
.idc .idn-ph svg{width:100%;height:100%;display:block}
.idn-flds{display:flex;flex-direction:column;gap:2.3cqw;min-width:0}
.idn-f small{display:block;font:400 2.5cqw/1.2 "Poiret One",sans-serif;letter-spacing:.12em;text-transform:uppercase;color:#e3c992;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.idn-f b{display:block;font:800 4.5cqw/1.12 "Playfair Display",Georgia,serif;color:#fff6e6;overflow-wrap:anywhere;text-transform:uppercase}
.idn-f b.sm{font-size:4cqw}
.idn-row{display:grid;grid-template-columns:1fr 1fr;gap:3cqw;padding:3.6cqw 5.6cqw 0}
.idn-bt{display:grid;grid-template-columns:36cqw 1fr;gap:4cqw;padding:4cqw 5.6cqw 0;align-items:center}
.idn-qrw{padding:1cqw;background:var(--metal);clip-path:polygon(9% 0,91% 0,100% 9%,100% 91%,91% 100%,9% 100%,0 91%,0 9%)}
.idc .idn-qr{background:#fff;padding:2.2cqw;border-radius:0;clip-path:polygon(9% 0,91% 0,100% 9%,100% 91%,91% 100%,9% 100%,0 91%,0 9%)}
.idn-vl b{display:block;font:800 3.3cqw/1.25 "Playfair Display",Georgia,serif;text-transform:uppercase;color:var(--g)}
.idn-vl span{display:block;font:italic 600 3.5cqw/1.3 "Cormorant Garamond",Georgia,serif;margin-top:1.6cqw;color:#ece0c4}
.idn-bar{margin:auto 5.6cqw 5cqw;padding:2cqw 3cqw;background:#fffaf0;clip-path:polygon(3% 0,97% 0,100% 20%,100% 80%,97% 100%,3% 100%,0 80%,0 20%)}
.idc .idn-bar svg.idc-bar{display:block;width:100%;height:11cqw}
.idn-micro{position:absolute!important;left:0;right:0;top:46cqw;z-index:2;font:600 1.5cqw/1 "Golos Text",Arial,sans-serif;letter-spacing:.18em;white-space:nowrap;overflow:hidden;opacity:.55;color:var(--g);text-transform:uppercase}
@media print{
  @page{size:A4 portrait;margin:15mm}
  .idn{width:64mm!important;height:113.8mm;aspect-ratio:auto;border-radius:4mm;box-shadow:none;outline:.2mm dashed #999;outline-offset:1.5mm;break-inside:avoid}
  .idn *{animation:none!important}
}
/* «Нуар»: всё содержимое — внутри тонкой рамки (рамка ≈ 7,2% ширины от края), номер удостоверения */
.idn{--pad:10cqw}
.idn-hd{padding:9cqw var(--pad) 0}
.idn-hd img{width:15cqw}
.idn-org b{font-size:5cqw}
.idn-kind{margin:2.4cqw var(--pad) 0;font-size:3.3cqw;letter-spacing:.18em;gap:2cqw}
.idn-top{grid-template-columns:30cqw 1fr;gap:3.6cqw;padding:2.2cqw var(--pad) 0}
.idn-flds{gap:1.9cqw}
.idn-f small{font-size:2.3cqw;letter-spacing:.1em}
.idn-f b{font-size:4.2cqw}.idn-f b.sm{font-size:3.7cqw}
.idn-row{padding:3cqw var(--pad) 0;gap:3cqw}
.idn-no{display:flex;align-items:baseline;justify-content:space-between;gap:3cqw;margin:2.6cqw var(--pad) 0;padding:1.6cqw 0;border-top:1px solid rgba(217,176,98,.35);border-bottom:1px solid rgba(217,176,98,.35)}
.idn-no small{font:400 2.3cqw "Poiret One",sans-serif;letter-spacing:.12em;text-transform:uppercase;color:#e3c992}
.idn-no b{font:400 4.6cqw "Poiret One",sans-serif;letter-spacing:.14em;font-weight:700;background:var(--metal);-webkit-background-clip:text;background-clip:text;color:transparent}
.idn-bt{grid-template-columns:31cqw 1fr;gap:3.6cqw;padding:3cqw var(--pad) 0}
.idn-vl b{font-size:3cqw}.idn-vl span{font-size:3.2cqw}
.idn-bar{margin:auto var(--pad) 9.5cqw;padding:1.6cqw 2.6cqw}
.idc .idn-bar svg.idc-bar{height:9cqw}
.idn-micro{left:var(--pad);right:var(--pad)}

/* «Нуар»: красный логотип, надпись как на главной, тонкие рамки фото и QR */
.idn-hd img{filter:none;width:15cqw}
.idn-org{width:100%}
.idn-wm{display:block;width:72cqw;height:auto;margin:0 auto;overflow:visible;filter:drop-shadow(0 .6cqw 1.6cqw rgba(0,0,0,.6))}
.idn-phw,.idn-qrw{padding:.45cqw}
.idn-hd{padding-top:8cqw;gap:1.4cqw}
.idn-hd img{width:13.5cqw}
.idn-wm{width:62cqw}
.idn-kind{margin-top:1.6cqw}
.idn-bt{grid-template-columns:27cqw 1fr;padding-top:2.6cqw}
.idn-wm{width:31cqw}
.idc svg.idn-wm{width:31cqw;height:auto}
.idc svg.idn-wm{width:40cqw}.idn-bt{grid-template-columns:31cqw 1fr;padding-top:3cqw}
.idc svg.idn-wm{width:50cqw}
