.presets{margin-top:14px;padding:10px 12px;border:1px solid var(--line);border-radius:14px;background:rgba(0,0,0,.28)}.presets-head{display:flex;align-items:center;gap:10px;margin-bottom:8px}.presets-title{font-family:var(--font-display);color:var(--amber-2);font-size:.95rem;letter-spacing:.04em;text-transform:uppercase}.presets-hint{font-size:.75rem;color:var(--muted);flex:1}.mini{background:transparent;border:1px solid var(--amber-dim);color:var(--amber-2);padding:.35rem .8rem;border-radius:999px;font-size:.85rem;cursor:pointer;white-space:nowrap;transition:all .2s}.mini:hover{border-color:var(--amber);background:rgba(245,185,66,.1)}.mini.on{background:var(--amber);color:#1a1200;border-color:var(--amber)}.preset-row{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px;scrollbar-width:thin}.preset{position:relative;flex:0 0 auto;min-width:120px;max-width:170px;text-align:left;background:linear-gradient(180deg,var(--panel-2),var(--panel));border:1px solid var(--line);border-radius:10px;padding:8px 22px 8px 10px;color:var(--ink);cursor:pointer;display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:8px;transition:all .2s}.preset:hover{border-color:var(--amber-dim)}.preset.cur{border-color:var(--amber);box-shadow:0 0 0 1px var(--amber),0 0 18px rgba(245,185,66,.25)}.preset.dead{opacity:.45}.preset .n{grid-row:1/3;align-self:center;font-family:var(--font-display);font-size:1.3rem;color:var(--amber-2)}.preset .t{font-size:.85rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.preset .c{font-size:.72rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.preset .x{position:absolute;top:2px;right:6px;color:var(--muted);font-size:.9rem;padding:2px 4px}.preset .x:hover{color:var(--needle)}.preset-empty{font-size:.85rem;color:var(--muted);padding:4px 2px}.preset{grid-template-columns:auto auto 1fr}.plogo{grid-row:1/3;align-self:center;width:30px;height:30px;border-radius:8px;overflow:hidden;position:relative;background:#0a1020}.plogo img,.logo img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;z-index:1}.plogo .mono,.logo .mono{position:absolute;inset:0;display:grid;place-items:center;font-family:var(--font-display);font-weight:600;color:#0a0f1c}.plogo .mono{font-size:1rem}.logo{width:56px;height:56px;border-radius:12px;overflow:hidden;position:relative;flex:0 0 auto;background:#0a1020;border:1px solid var(--line)}.logo .mono{font-size:1.6rem}.card-head{display:flex;gap:.7rem;align-items:center;padding-right:1.4rem}.card-head h3{margin-bottom:.15rem}.tknob{width:76px;height:76px;border-radius:50%;position:relative;cursor:grab;touch-action:none;user-select:none;display:grid;place-items:center;justify-self:end}.tknob:active{cursor:grabbing}.tknob-ring{position:absolute;inset:0;border-radius:50%;background:repeating-conic-gradient(from 0deg,#1b2740 0deg 6deg,#0b1122 6deg 12deg);box-shadow:0 6px 14px #0009,inset 0 0 0 2px #34466b}.tknob-cap{position:absolute;inset:11px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#3a4c72,#0b1122 72%);box-shadow:inset 0 2px 4px #ffffff1a,0 2px 6px #000a;transition:transform .08s linear}.tknob-cap i{position:absolute;top:5px;left:50%;width:4px;height:16px;margin-left:-2px;background:var(--amber);border-radius:2px;box-shadow:0 0 8px var(--amber)}.tknob-label{position:absolute;bottom:-16px;font-family:var(--font-mono);font-size:.55rem;letter-spacing:.14em;color:var(--muted);white-space:nowrap}.genre-tabs{margin-bottom:.9rem}.sections{display:flex;flex-direction:column;gap:1.6rem}.gsec-head{display:flex;align-items:center;gap:.7rem;margin-bottom:.7rem}.gsec-head h3{font-size:1.35rem}.gsec-head .n{font-family:var(--font-mono);color:var(--muted);font-size:.8rem}.gsec-head .chip{margin-left:auto;padding:.3rem .8rem;font-size:.85rem}@media (max-width:560px){.tknob{width:60px;height:60px}.tknob-cap{inset:9px}.tknob-label{display:none}.logo{width:46px;height:46px}}.hero-grid>*,.globe-grid>*,.radio-bottom>*{min-width:0}.globe-box{width:100%;max-width:100%;box-sizing:border-box}#globe{max-width:100%}.readout .name{max-width:100%}.top15{padding-block:2rem 1rem}.row-nav{display:flex;gap:.4rem}.row-nav .chip{padding:.35rem .8rem}.top-row{display:flex;gap:.8rem;overflow-x:auto;scroll-snap-type:x mandatory;padding:.3rem .2rem 1rem;scrollbar-width:thin}.top-tile{scroll-snap-align:start;flex:0 0 200px;position:relative;text-align:left;background:linear-gradient(180deg,var(--panel-2),var(--panel));border:1px solid var(--line);border-radius:16px;padding:1rem;color:var(--ink);cursor:pointer;display:flex;flex-direction:column;gap:.3rem;transition:transform .2s,border-color .2s,box-shadow .2s}.top-tile:hover{transform:translateY(-3px);border-color:var(--amber-dim)}.top-tile.playing{border-color:var(--amber);box-shadow:0 0 0 1px var(--amber),0 0 28px rgba(245,185,66,.25)}.top-tile .rank{position:absolute;top:.6rem;right:.8rem;font-family:var(--font-display);font-size:1.2rem;color:var(--amber-dim)}.top-tile.playing .rank{color:var(--amber)}.tlogo{width:72px;height:72px;border-radius:16px;overflow:hidden;position:relative;background:#0a1020;border:1px solid var(--line);margin-bottom:.4rem}.tlogo img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;z-index:1}.tlogo .mono{position:absolute;inset:0;display:grid;place-items:center;font-family:var(--font-display);font-weight:600;font-size:2rem;color:#0a0f1c}.tname{font-family:var(--font-display);font-size:1.05rem;line-height:1.2}.tmeta{font-family:var(--font-mono);font-size:.7rem;color:var(--muted)}.ttrack{font-size:.8rem;color:var(--amber-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-height:1.1em}.kb{border:1px solid var(--line);border-radius:6px;padding:0 .35rem;color:var(--muted)}.kb.hq{border-color:var(--amber-dim);color:var(--amber-2)}.p-logo{width:44px;height:44px;border-radius:10px;overflow:hidden;position:relative;background:#0a1020;flex:0 0 auto}.p-logo .plogo{width:44px;height:44px;border-radius:10px}.player .wrap{grid-template-columns:auto auto 1fr auto auto}.dedic{font-family:var(--font-display);font-style:italic;color:var(--amber-2);margin-top:.4rem}@media (max-width:900px){.player .wrap{grid-template-columns:auto auto 1fr auto}}@media (max-width:560px){.top-tile{flex-basis:160px;padding:.8rem}.tlogo{width:56px;height:56px}.p-logo{display:none}.player .wrap{grid-template-columns:auto 1fr auto}}.pl-cities{margin-top:-.4rem;padding:.8rem;border:1px solid var(--line);border-radius:14px;background:var(--panel);max-height:190px;overflow:auto}.pl-cities .chip{padding:.35rem .8rem;font-size:.88rem}.pl-title{margin:.2rem 0 .9rem;font-size:1.3rem}

/* Логотип «Радио от Оленьки» */
.brand{align-items:center;gap:.7rem}.brand-logo{width:44px;height:44px;border-radius:12px;object-fit:cover;box-shadow:0 0 0 1px #2a3a5c,0 0 18px rgba(245,185,66,.25);background:#000;flex:none}.brand-wide{width:104px;height:auto;border-radius:10px;display:block;box-shadow:0 0 0 1px #2a3a5c}.brand-wide.big{width:240px;border-radius:14px}.brand-text{display:flex;flex-direction:column;line-height:1.05}.brand-text>span{font-size:1.5rem;white-space:nowrap}.brand-text small{margin-top:.2rem}
footer .brand{margin-bottom:.8rem}
body.welcoming .brand-wide{animation:speak 1.1s ease-in-out infinite}@keyframes speak{0%,to{box-shadow:0 0 0 1px #2a3a5c,0 0 18px rgba(245,185,66,.25)}50%{box-shadow:0 0 0 2px var(--amber),0 0 34px rgba(245,185,66,.65)}}
@media (max-width:560px){.brand-text>span{font-size:1.05rem}.brand-text small{display:none}}

/* Шапка: время/погода и счётчик */
.hinfo{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}.hpill{display:flex;align-items:center;gap:.35rem;font-family:var(--font-mono);font-size:.78rem;color:var(--muted);white-space:nowrap;padding:.3rem .7rem;border:1px solid var(--line);border-radius:999px;background:var(--panel)}.hpill b{color:var(--amber-2);font-family:var(--font-display);font-size:1rem}.hpill .sep{opacity:.5}.hpill .live-dot{margin-right:.1rem}.hgeo #hg-time{color:var(--amber-2);font-size:.95rem;font-weight:600}.hgeo #hg-temp{color:var(--ink)}
/* Разделы-вкладки */
.nav a{padding:.35rem .1rem;border-bottom:2px solid transparent}.nav a.active{color:var(--amber-2);border-bottom-color:var(--amber)}.nav a:hover{text-decoration:none}
@media (max-width:900px){.nav{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;width:100%;margin-left:0;padding-bottom:2px}.nav::-webkit-scrollbar{display:none}.nav a{white-space:nowrap;font-size:.9rem}.top .wrap{flex-wrap:wrap;height:auto;padding-block:.5rem;gap:.5rem .8rem}.hinfo{margin-left:auto}}
@media (max-width:560px){.hpill{font-size:.68rem;padding:.2rem .5rem;gap:.25rem}.hpill b{font-size:.85rem}.hinfo{gap:.35rem}.brand-wide{width:86px}}
/* Лента «Сейчас играет»: логотипы */
.feed-item{grid-template-columns:48px minmax(0,1fr) auto}.feed-item>div{min-width:0}.flogo-wrap{position:relative;width:44px;height:44px}.flogo{width:44px;height:44px;border-radius:10px;overflow:hidden;position:relative;background:#0a1020;border:1px solid var(--line)}.flogo img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;z-index:1}.flogo .mono{position:absolute;inset:0;display:grid;place-items:center;font-family:var(--font-display);font-weight:600;font-size:1.2rem;color:#0a0f1c}.feed-item .flogo-wrap .eq{position:absolute;left:5px;right:5px;bottom:3px;width:auto;height:12px;display:none;z-index:3;gap:2px}.feed-item.playing .flogo-wrap .eq{display:flex}.feed-item .flogo-wrap .eq i{background:var(--amber-2);box-shadow:0 0 6px #000}
/* Глобус: компактнее и по центру */
.globe-grid{grid-template-columns:minmax(0,460px) minmax(240px,1fr);justify-content:center;align-items:start;gap:1.6rem}.globe-box{max-width:460px;margin:0 auto}@media (max-width:900px){.globe-grid{grid-template-columns:1fr}.globe-box{max-width:min(460px,86vw)}.city-list{max-height:260px}}
@media (max-width:560px){.tm-labels{font-size:.68rem}}

/* Компактная одностраничная компоновка */
section.block{padding-block:1.6rem}.top15{padding-block:1.4rem .6rem}.section-head{margin-bottom:.9rem}.section-head h2{font-size:clamp(1.35rem,2.4vw,1.9rem)}.section-head .lead{font-size:.95rem;max-width:56ch}.eyebrow{margin-bottom:.35rem}.hero{padding-block:1.6rem 1rem}.feed-list{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.grid{gap:.7rem}.card{padding:.8rem}.card .desc{display:none}.sections{gap:1.1rem}.gsec-head{margin-bottom:.5rem}.tm{padding:1.1rem 1.3rem}.tm-year{font-size:clamp(2.2rem,5vw,3.4rem)}.more-chip{grid-column:1/-1;justify-self:center;margin-top:.2rem}
.about-box{border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);padding:.2rem 1.1rem;margin:1.2rem auto 0}.about-box summary{cursor:pointer;font-family:var(--font-display);font-size:1.05rem;color:var(--ink);padding:.7rem 0}.about-box .prose{padding-bottom:.8rem}.about-box h2{font-size:1.3rem}
@media (max-width:560px){section.block{padding-block:1.2rem}.feed-list{grid-template-columns:1fr}.feed-item:nth-child(n+9){display:none}}
.sections .more-chip{align-self:center}@media (max-width:560px){.gsec .grid .card:nth-child(n+3){display:none}}

/* Сейчас в эфире: исполнитель и песня */
.np{display:flex;flex-direction:column;line-height:1.25;min-width:0}.np .np-a{color:var(--amber-2);font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.np .np-s{color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.np.wait{color:var(--muted);font-weight:400;font-size:.85rem}
.card .now{display:none;margin:.45rem 0 .1rem;padding:.4rem .55rem;border-radius:10px;background:rgba(0,0,0,.28);border:1px solid var(--line);font-size:.86rem}.card .now.has{display:block}.card .now .np>:first-child::before{content:"♪ ";opacity:.7}
.card.playing .now{border-color:var(--amber-dim)}
.feed-item .tr{white-space:normal;font-weight:400;font-size:.92rem}.feed-item .tr .np-a{font-size:.95rem}
.top-tile .ttrack{white-space:normal;min-height:2.3em;font-size:.8rem}.top-tile .ttrack .np-s{color:var(--ink-2,var(--ink))}
.readout .track{display:none;font-family:var(--font-display);color:var(--ink);text-shadow:none;font-size:.9rem;margin-top:.15rem;max-width:34ch}.readout .track.has{display:block}.readout .track .np{display:block}.readout .track .np-a{display:inline;white-space:nowrap}.readout .track .np-a::after{content:" — ";color:var(--muted)}.readout .track .np-s{display:inline;white-space:nowrap}
.player .pinfo #p-track .np{display:flex;flex-direction:row;gap:.4rem;font-family:var(--font-sans,inherit)}.player .pinfo #p-track .np-a,.player .pinfo #p-track .np-s{display:block;font-size:.85rem}.player .pinfo #p-track .np-a::after{content:"—";margin-left:.4rem;color:var(--muted)}
@media (max-width:560px){.readout .track{max-width:20ch;font-size:.8rem}}
.hint .howto{display:inline-block;margin-left:.4rem;padding:.2rem .7rem;border:1px solid var(--amber-dim);border-radius:999px;color:var(--amber-2);text-decoration:none;white-space:nowrap}.hint .howto:hover{background:rgba(245,185,66,.12)}

.np.prog .np-a{color:var(--muted);font-weight:600;font-size:.78rem;letter-spacing:.04em;text-transform:uppercase}.np.prog .np-s{font-weight:600}.np .np-n{display:block;font-style:normal;color:var(--muted);font-size:.78rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.player .pinfo #p-track .np.prog{flex-wrap:wrap}.player .pinfo #p-track .np-n{flex-basis:100%;font-size:.75rem}.readout .track .np.prog .np-a::after{content:": "}.readout .track .np-n{display:none}

/* Глобус: масштаб щипком/колёсиком, кнопки +/− */
.globe-stage{position:relative}#globe{touch-action:none;cursor:grab;display:block;border-radius:50%}.globe-zoom{position:absolute;right:6px;top:6px;display:flex;flex-direction:column;gap:6px;z-index:2}.globe-zoom button{width:36px;height:36px;border-radius:10px;border:1px solid var(--line);background:rgba(5,8,15,.82);color:var(--ink);font-size:1.25rem;line-height:1;cursor:pointer;backdrop-filter:blur(4px)}.globe-zoom button:hover{border-color:var(--amber);color:var(--amber-2)}.globe-zoom #gz-reset{display:none;font-size:1rem}.globe-zoom.zoomed #gz-reset{display:block}
@media (max-width:560px){.globe-zoom button{width:40px;height:40px}}
