/* Панель: «Объявления» (admin-announce.js). Форма — общими правилами формы турнира (admin.css: .tr-formwrap, .tr-form,
   .tf); здесь — картинка в форме, плитки счётчиков и рамка телефона для предпросмотра «как увидит игрок». Само окно
   рисуют стили игры (/styles/announce.css) — те же, что у игрока. */

/* Inter — только внутри рамки предпросмотра, под своим именем: панель шрифтов игры не грузит, и общий «Inter» здесь
   переодел бы всю панель. Файлы — те же, что у игры (styles/fonts.css). */
@font-face { font-family: 'Inter Preview'; font-style: normal; font-weight: 400 800; font-display: swap;
    src: url('/fonts/inter-var-cyrillic.woff2') format('woff2'); unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family: 'Inter Preview'; font-style: normal; font-weight: 400 800; font-display: swap;
    src: url('/fonts/inter-var-latin.woff2') format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Inter Preview'; font-style: normal; font-weight: 400 800; font-display: swap;
    src: url('/fonts/inter-symbols.woff2') format('woff2'); unicode-range: U+2192, U+00D7, U+2022, U+2039, U+203A, U+2191, U+2193, U+2212, U+2013, U+2014; }

/* Список — карточками: на телефоне таблица показывала только заголовок. */
.an-items { display: grid; gap: var(--s2); grid-template-columns: repeat(auto-fill, minmax(min(100%, 360px), 1fr)); }
.an-item { border: 1px solid var(--line); border-radius: var(--radius); background: var(--surf-1-mid); padding: 10px 12px; display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.an-item-top { display: flex; align-items: center; gap: 6px; flex-wrap: wrap; }
.an-item-t { white-space: normal; text-align: left; overflow-wrap: anywhere; max-width: 100%; }
.an-item-l { margin: 0; font-size: var(--fs-sm); overflow-wrap: anywhere; }
.an-item-n { display: flex; gap: var(--s3); flex-wrap: wrap; font-size: var(--fs-md); }
.an-item-n b { font-size: var(--fs-lg); font-variant-numeric: tabular-nums; }
.an-when { align-items: flex-start; }
.an-when + .hint { margin: 2px 0 var(--s2); }
.an-stats { margin-bottom: var(--s3); }
.an-imgrow { display: flex; gap: var(--s3); align-items: flex-start; flex-wrap: wrap; }
.an-imgrow img { width: 160px; max-width: 100%; max-height: 120px; object-fit: contain; border: 1px solid var(--line); border-radius: var(--radius); background: var(--ink-2); }
.an-imgrow > div { flex: 1 1 200px; min-width: 0; }
.an-imgrow input[type="file"] { width: 100%; }
.an-warns { margin: 0; padding-left: 18px; }
.an-warns li + li { margin-top: 4px; }
.an-acts { gap: var(--s2); }
.an-acts > * { flex: 0 0 auto; }
#an-btn-text { margin-top: var(--s2); }

/* Предпросмотр: переключатели и рамка телефона. Рамка — настоящего размера, уменьшенная transform: окно внутри меряется
   её пикселями (--ann-vh = высота рамки / 100), а не окном браузера. */
.an-pv-ctl { display: flex; flex-wrap: wrap; gap: 4px 10px; }
.an-pv-ctl .segbar { margin-bottom: 0; gap: 4px; }
.an-pv-ctl .seg { min-height: 36px; padding: 4px 10px; }
.an-pv { margin-top: var(--s2); }
.an-phone-wrap { position: relative; overflow: hidden; border-radius: 18px; box-shadow: 0 0 0 1px var(--line-hi), 0 12px 32px -12px rgba(0, 0, 0, .8); }
.an-phone {
    --font-ui: 'Inter Preview', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    position: absolute; top: 0; left: 0; overflow: hidden; transform-origin: 0 0;
    font-family: var(--font-ui); color: var(--text-primary);
    background: radial-gradient(120% 55% at 50% 42%, rgba(255, 255, 255, .05), transparent 70%), var(--bg);
}
/* Подобие экрана под окном: шапка и прибор — чтобы было видно, что окно поверх игры. */
.an-ph-hdr {
    height: 44px; display: flex; align-items: center; padding: 0 16px;
    background: var(--rail-top, var(--ink-1)); border-bottom: 1px solid var(--line);
    font-weight: 600; letter-spacing: .06em; font-size: 15px; color: var(--text-primary);
}
.an-phone-fastbag::after {
    content: ''; position: absolute; left: 50%; top: 42%; width: 64%; aspect-ratio: 1; transform: translate(-50%, -50%);
    border-radius: 50%; border: 10px solid var(--line-hi); opacity: .55;
}
.an-phone-durak::after {
    content: ''; position: absolute; left: 50%; top: 46%; width: 34%; aspect-ratio: 5 / 7; transform: translate(-50%, -50%) rotate(-8deg);
    border-radius: 8px; background: linear-gradient(135deg, #7A1A26, #4A0D16); box-shadow: 46px 6px 0 -2px var(--line-hi);
    opacity: .6;
}
.an-phone .ann-ovl { z-index: 2; }
