/* ARCOO — курсор-кружок (скрипт arc-cursor.js, только мышь, без «уменьшения движения»).
   Цвета: на светлом фоне navy-800, на тёмном (класс t-dark) canvas-100;
   в Антиквариате на тёмном — золото. Класс направления стоит на <body>. */
.a-cur{
  --cc:var(--navy-800); --cc-fg:var(--canvas-100);
  display:none; position:fixed; left:0; top:0; z-index:700; width:0; height:0; pointer-events:none;
  opacity:0; transition:opacity .3s ease; }
.a-cur.t-dark{ --cc:var(--canvas-100); --cc-fg:var(--navy-900); }
body.dir-antique .a-cur.t-dark{ --cc:var(--gold-400); }
body.dir-antique .a-cur{ --cc:var(--navy-800); --cc-fg:var(--canvas-100); }
body.dir-antique .a-cur.t-dark{ --cc-fg:var(--navy-900); }
.a-cur.started{ display:block; }
.a-cur.on{ opacity:1; }
.a-cur.off{ opacity:0; }

/* Точка и кольцо — круг (Антон 01.10: кружок лучше арки) */
.a-dot{ position:absolute; left:0; top:0; width:6px; height:6px; margin:-3px 0 0 -3px;
  border-radius:50%; background:var(--cc); will-change:transform; }
.a-ring{ position:absolute; left:0; top:0; width:0; height:0; will-change:transform; }
.a-ring-in{
  position:absolute; left:0; top:0; width:34px; height:34px; translate:-50% -50%;
  display:grid; place-items:center; box-sizing:border-box; border:1px solid var(--cc); border-radius:50%;
  transition:width .38s var(--ease-entrance), height .38s var(--ease-entrance),
             background-color .3s, border-color .3s;
}
.a-label{ font:500 11px/1 var(--font-mono); letter-spacing:.14em; text-transform:uppercase;
  color:var(--cc-fg); opacity:0; transition:opacity .25s ease; white-space:nowrap; }
.a-cur.is-link .a-ring-in{ width:52px; height:52px; }
.a-cur.is-magnet .a-ring-in{ width:60px; height:60px; }
.a-cur.is-view .a-ring-in{ width:88px; height:88px; background:var(--cc); }
.a-cur.is-view .a-label,.a-cur.is-loupe .a-label{ opacity:1; }
.a-cur.is-loupe .a-ring-in{ width:96px; height:96px; border-color:var(--gold-400); background:rgba(6,15,31,.55); }
.a-cur.is-loupe .a-label{ color:var(--gold-300); }
.a-cur.is-down .a-ring-in{ width:28px; height:28px; }
.a-cur.is-view.is-down .a-ring-in,.a-cur.is-loupe.is-down .a-ring-in{ width:78px; height:78px; }

html.cursor-on, html.cursor-on *{ cursor:none !important; }
html.cursor-on input,html.cursor-on textarea,html.cursor-on select,
html.cursor-on [data-cursor="off"],html.cursor-on [data-cursor="off"] *{ cursor:auto !important; }
html.cursor-on input[type=text],html.cursor-on input[type=number],html.cursor-on textarea{ cursor:text !important; }
@media (hover:none), (pointer:coarse), (prefers-reduced-motion:reduce){
  .a-cur{ display:none !important; }
  html.cursor-on,html.cursor-on *{ cursor:auto !important; }
}
