(function(){ "use strict"; if(window.SA_RADIO_1017_V19)return; window.SA_RADIO_1017_V19=1; window.SA_RADIO_1017_V18=1; window.SA_RADIO_1017_V17=1; window.SA_RADIO_1017_V16=1; window.SA_RADIO_1017_V15=1; window.SA_RADIO_1017_V14=1; window.SA_RADIO_1017_V13=1; window.SA_RADIO_1017_V12=1; window.SA_RADIO_1017_V11=1; window.SA_RADIO_1017_V10=1; window.SA_RADIO_1017_V9=1; window.SA_RADIO_1017_V8=1; window.SA_RADIO_1017_V7=1; window.SA_RADIO_1017_V6=1; window.SA_RADIO_1017_V5=1; window.SA_RADIO_1017_V3=1; window.SA_RADIO_1017_V2=1; window.SA_RADIO_1017_V1=1; var TOPIC_ID=13; var POST_ID=32; function currentTopic(){ var m=location.search.match(/(?:^|[?&])id=(\d+)/); if(m)return parseInt(m[1],10); if(typeof window.TopicID!=="undefined")return parseInt(window.TopicID,10)||0; return 0; } function findPost(){ return document.getElementById("p"+POST_ID) || document.querySelector('[data-post-id="'+POST_ID+'"]') || document.querySelector('.post[data-id="'+POST_ID+'"]'); } function findMessage(post){ if(!post)return null; return post.querySelector(".post-content") || post.querySelector(".post-body") || post.querySelector(".postmsg") || post.querySelector(".post-message") || post.querySelector(".content"); } function installStyle(){ if(document.getElementById("sa-radio-1017-style"))return; var s=document.createElement("style"); s.id="sa-radio-1017-style"; s.textContent=` #sa-radio-mount{ --ink:#0b2932;--deep:#071b23;--deep2:#0b313b;--paper:#efe4d1; --gold:#bd8339;--gold2:#d3a45f;--muted:#9b907f;--line:rgba(189,131,57,.28); } *{box-sizing:border-box} #sa-radio-mount{margin:0;background:transparent;color:var(--paper);font-family:Arial,sans-serif} #sa-radio-mount button{font:inherit} .sa-radio{ position:relative; width:100%; max-width:1180px; min-height:650px; margin:0 auto; overflow:hidden; background: radial-gradient(circle at 78% 18%,rgba(39,101,108,.23),transparent 27%), radial-gradient(circle at 13% 83%,rgba(189,131,57,.08),transparent 28%), linear-gradient(145deg,#06171e 0%,#0a2b34 52%,#071820 100%); border:1px solid rgba(199,157,91,.32); box-shadow:inset 0 0 90px rgba(0,0,0,.24); } .sa-radio:before{ content:"";position:absolute;inset:0;pointer-events:none;opacity:.16; background-image:repeating-linear-gradient(0deg,transparent 0 3px,rgba(255,255,255,.018) 4px); } .sa-top{ position:relative;z-index:2;display:grid;grid-template-columns:1fr auto; gap:25px;padding:28px 34px 23px;border-bottom:1px solid var(--line) } .sa-kicker{font-size:8px;letter-spacing:.36em;color:var(--gold2);font-weight:700} .sa-brand{margin:8px 0 0;font:normal clamp(30px,4vw,52px)/.92 Georgia,serif;letter-spacing:.02em} .sa-brand small{display:block;margin-top:9px;font:600 8px/1 Arial,sans-serif;letter-spacing:.32em;color:#9db0ae} .sa-live{display:flex;align-items:center;gap:10px;align-self:start;font-size:8px;letter-spacing:.24em;color:#cdbb9d} .sa-dot{width:7px;height:7px;border-radius:50%;background:#d49a4d;box-shadow:0 0 0 0 rgba(212,154,77,.5);animation:pulse 1.8s infinite} @keyframes pulse{50%{box-shadow:0 0 0 7px rgba(212,154,77,0);opacity:.7}} .sa-main{position:relative;z-index:2;display:grid;grid-template-columns:255px minmax(0,1fr);min-height:492px} .sa-side{padding:28px 22px;border-right:1px solid var(--line);background:rgba(3,17,23,.22)} .sa-frequency{font:normal 42px/1 Georgia,serif;color:#f0e5d3} .sa-frequency span{font:700 8px/1 Arial,sans-serif;letter-spacing:.2em;color:var(--gold2)} .sa-dial{height:32px;margin:19px 0 28px;position:relative;border-top:1px solid rgba(211,164,95,.3)} .sa-dial:before{content:"";position:absolute;left:0;right:0;top:-4px;height:7px;background:repeating-linear-gradient(90deg,transparent 0 12px,rgba(211,164,95,.5) 13px 14px)} .sa-dial:after{content:"101.7";position:absolute;left:44%;top:9px;color:var(--gold2);font-size:7px;letter-spacing:.14em} .sa-tabs{display:grid;gap:4px} .sa-tab{ appearance:none;border:0;border-left:2px solid transparent;background:transparent;color:#aeb9b5; text-align:left;padding:11px 10px;cursor:pointer;font-size:9px;letter-spacing:.19em;text-transform:uppercase; transition:.2s } .sa-tab:hover,.sa-tab.active{color:#f0e5d3;background:rgba(255,255,255,.035);border-left-color:var(--gold)} .sa-tab b{display:inline-block;width:25px;color:#8a806e;font-size:7px} .sa-station-note{margin-top:28px;padding-top:17px;border-top:1px solid var(--line);font:italic 11px/1.55 Georgia,serif;color:#81918f} .sa-content{position:relative;min-width:0;padding:30px 34px 32px} .sa-panel{display:none;animation:fade .3s ease} .sa-panel.active{display:block} @keyframes fade{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}} .sa-label{font-size:8px;letter-spacing:.27em;color:var(--gold2);font-weight:700} .sa-title{margin:8px 0 8px;font:normal clamp(25px,3vw,38px)/1.05 Georgia,serif} .sa-sub{max-width:650px;color:#9caaa6;font:italic 12px/1.55 Georgia,serif} .sa-onair{ margin-top:25px;display:grid;grid-template-columns:88px minmax(0,1fr) auto;gap:18px;align-items:center; padding:18px;border:1px solid var(--line);background:linear-gradient(90deg,rgba(255,255,255,.045),rgba(189,131,57,.035)) } .sa-disc{width:88px;height:88px;border-radius:50%;border:1px solid rgba(211,164,95,.5);position:relative;background:radial-gradient(circle,#bd8339 0 3px,#0b2027 4px 16px,#102f37 17px 28px,#081b22 29px)} .sa-disc:after{content:"";position:absolute;inset:9px;border-radius:50%;border:1px dashed rgba(211,164,95,.22);animation:spin 10s linear infinite} @keyframes spin{to{transform:rotate(360deg)}} .sa-show small{font-size:7px;letter-spacing:.22em;color:var(--gold2)} .sa-show strong{display:block;margin:5px 0;font:normal 21px/1.1 Georgia,serif} .sa-show p{margin:0;color:#8fa09d;font:11px/1.45 Georgia,serif} .sa-play{ width:46px;height:46px;border-radius:50%;border:1px solid rgba(211,164,95,.55);background:transparent; color:#e4c58f;cursor:pointer;font-size:15px } .sa-play:hover{background:rgba(189,131,57,.1)} .sa-eq{display:flex;align-items:end;gap:3px;height:22px;margin-top:12px} .sa-eq i{display:block;width:2px;height:7px;background:#b98645;animation:eq .9s ease-in-out infinite alternate} .sa-eq i:nth-child(2n){animation-delay:.2s;height:15px}.sa-eq i:nth-child(3n){animation-delay:.4s;height:10px} @keyframes eq{to{height:21px;opacity:.45}} .sa-list{margin-top:22px;border-top:1px solid var(--line)} .sa-item{display:grid;grid-template-columns:74px 1fr auto;gap:16px;padding:15px 2px;border-bottom:1px solid rgba(255,255,255,.07);align-items:center} .sa-item time,.sa-item em{font:700 7px/1 Arial,sans-serif;letter-spacing:.16em;color:var(--gold2);font-style:normal} .sa-item strong{display:block;font:normal 16px/1.15 Georgia,serif}.sa-item span{display:block;margin-top:4px;color:#839491;font-size:9px} .sa-arrow{color:#b98645;font-size:18px} .sa-marquee-wrap{position:relative;z-index:4;height:42px;overflow:hidden;border-top:1px solid var(--line);background:#06151bd9;white-space:nowrap} .sa-marquee{display:inline-block;padding-left:100%;font-size:8px;line-height:42px;letter-spacing:.18em;text-transform:uppercase;color:#c9b99c;animation:marquee 36s linear infinite} .sa-marquee b{color:#d69b4b} @keyframes marquee{to{transform:translateX(-100%)}} .sa-ticker-pause{position:absolute;right:12px;top:10px;z-index:6;border:1px solid var(--line);background:#081b22;color:#bfae90;width:23px;height:22px;cursor:pointer;font-size:9px} .sa-radio.ticker-paused .sa-marquee{animation-play-state:paused} .sa-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:23px} .sa-card{padding:17px;border:1px solid rgba(189,131,57,.22);background:rgba(255,255,255,.025)} .sa-card small{font-size:7px;letter-spacing:.2em;color:#bd8a4a}.sa-card b{display:block;margin:7px 0;font:normal 17px Georgia,serif}.sa-card p{margin:0;color:#899996;font:10px/1.5 Georgia,serif} @media(max-width:720px){ .sa-top{padding:22px}.sa-main{grid-template-columns:1fr}.sa-side{border-right:0;border-bottom:1px solid var(--line)} .sa-tabs{grid-template-columns:repeat(2,1fr)}.sa-content{padding:24px 22px}.sa-onair{grid-template-columns:65px 1fr auto}.sa-disc{width:65px;height:65px}.sa-cards{grid-template-columns:1fr} } #sa-radio-mount{position:relative;overflow:visible} .sa-field-feed{ position:absolute;z-index:3;right:100%;top:0;width:252px;height:100%; padding:27px 20px 24px 18px;overflow:hidden; border:1px solid rgba(189,131,57,.22);border-right:0; background:linear-gradient(180deg,#06171e 0%,#071b22 100%); color:#d8cfbf; } .sa-field-feed:after{content:"";position:absolute;left:0;right:0;bottom:0;height:70px;pointer-events:none;background:linear-gradient(transparent,#071b22)} .sa-field-kicker{font:700 7px/1 Arial,sans-serif;letter-spacing:.28em;color:#c89953;text-transform:uppercase} .sa-field-title{margin:17px 0 28px;font:normal 30px/.98 Georgia,serif;letter-spacing:.01em;color:#f0e4d2} .sa-field-rule{height:1px;margin-bottom:112px;background:rgba(189,131,57,.35)} .sa-field-item{position:relative;padding:0 0 18px;margin:0 0 17px;border-bottom:1px solid rgba(255,255,255,.065)} .sa-field-item time{display:block;margin-bottom:9px;font:700 7px/1 Arial,sans-serif;letter-spacing:.16em;color:#a8874f} .sa-field-item b{display:block;font:normal 14px/1.34 Georgia,serif;color:#d8cfbf} .sa-field-item em{display:block;margin-top:8px;font:700 7px/1 Arial,sans-serif;letter-spacing:.18em;color:#718684;font-style:normal;text-transform:uppercase} .sa-field-ghost{position:absolute;right:12px;top:2px;font:normal 37px/1 Georgia,serif;color:rgba(126,151,148,.07)} .sa-field-station{padding:0 0 17px;margin:0 0 17px;border-bottom:1px solid rgba(255,255,255,.065);font:700 7px/1 Arial,sans-serif;letter-spacing:.2em;color:#718684} @media(max-width:1050px){.sa-field-feed{display:none}} .sa-radio-rail{position:absolute;z-index:5;right:0;top:0;bottom:42px;width:27px;overflow:hidden;border-left:1px solid var(--line);background:rgba(4,20,26,.74);pointer-events:none} .sa-radio-rail-track{position:absolute;left:0;top:0;width:27px;white-space:nowrap;writing-mode:vertical-rl;text-orientation:mixed;font:700 7px/27px Arial,sans-serif;letter-spacing:.22em;color:#a99b82;text-transform:uppercase;animation:saRail 24s linear infinite} .sa-radio-rail-track b{color:#d69b4b} @keyframes saRail{from{transform:translateY(-52%)}to{transform:translateY(0)}} .sa-radio.has-rail .sa-content{padding-right:54px} .sa-radio-editor{margin-top:22px;padding:15px 16px;border:1px dashed rgba(189,131,57,.34);background:rgba(3,17,23,.28);font:10px/1.5 Arial,sans-serif;color:#91a19e} .sa-radio-editor strong{display:block;margin-bottom:5px;font:normal 15px Georgia,serif;color:#e7d9c2} @media(max-width:720px){.sa-radio-rail{display:none}.sa-radio.has-rail .sa-content{padding-right:22px}} @media(prefers-reduced-motion:reduce){.sa-radio-rail-track{animation:none}} @media(prefers-reduced-motion:reduce){.sa-dot,.sa-disc:after,.sa-eq i,.sa-marquee{animation:none}} /* v5: no narrow right rail */ .sa-radio-rail{display:none!important} .sa-radio.has-rail .sa-content{padding-right:34px} @media(max-width:720px){.sa-radio.has-rail .sa-content{padding-right:22px}} /* v5: animate the wide left FIELD BROADCAST itself, without changing its DOM */ .sa-field-feed{overflow:hidden} .sa-field-feed > *{position:relative;animation:saFieldTicker 22s linear infinite} .sa-field-feed:hover > *{animation-play-state:paused} @keyframes saFieldTicker{ 0%{transform:translateY(0)} 100%{transform:translateY(-390px)} } @media(prefers-reduced-motion:reduce){.sa-field-feed > *{animation:none}} /* v6: fixed FIELD BROADCAST header + readable timestamps */ .sa-field-feed{padding-top:0!important} .sa-field-kicker,.sa-field-title,.sa-field-rule{ position:relative!important;z-index:4!important; animation:none!important;transform:none!important; background:#06171e; } .sa-field-kicker{padding-top:27px} .sa-field-title{padding-bottom:0} .sa-field-rule{margin-bottom:18px!important} /* Only news rows move. Header remains fixed. */ .sa-field-feed > .sa-field-item, .sa-field-feed > .sa-field-station{ animation:saFieldTickerV6 28s linear infinite!important; } .sa-field-feed:hover > .sa-field-item, .sa-field-feed:hover > .sa-field-station{animation-play-state:paused!important} @keyframes saFieldTickerV6{ 0%{transform:translateY(0)} 100%{transform:translateY(-245px)} } /* Remove the oversized ghost time that was sitting under headlines. */ .sa-field-ghost{display:none!important} /* Give the actual event time its own clean line. */ .sa-field-item time{ position:relative!important;z-index:3!important; display:block!important; margin:0 0 9px!important; padding-right:0!important; color:#c49a58!important; background:transparent!important; opacity:1!important; text-shadow:0 1px 0 rgba(0,0,0,.45); } .sa-field-item b{position:relative;z-index:2} /* v7 LIVE STUDIO */ .sa-live-open{cursor:pointer} .sa-live-open:hover strong,.sa-live-open:hover .sa-arrow{color:#d3a45f} .sa-studio{display:none;position:absolute;inset:0;z-index:20;padding:30px 34px;background:linear-gradient(145deg,#071b23,#0a3039);overflow:auto} .sa-studio.open{display:block} .sa-studio-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;padding-bottom:18px;border-bottom:1px solid var(--line)} .sa-studio-head h3{margin:7px 0 0;font:normal 28px/1 Georgia,serif} .sa-studio-back{border:1px solid var(--line);background:transparent;color:#d6c6a9;padding:8px 11px;cursor:pointer;font-size:8px;letter-spacing:.15em} .sa-studio-status{font:700 7px/1 Arial,sans-serif;letter-spacing:.22em;color:#d49a4d} .sa-studio-meta{margin-top:9px;color:#839693;font:italic 10px/1.4 Georgia,serif} .sa-studio-log{margin:20px 0;min-height:220px} .sa-msg{position:relative;padding:13px 14px 13px 86px;margin:0 0 9px;border:1px solid rgba(255,255,255,.065);background:rgba(255,255,255,.025)} .sa-msg time{position:absolute;left:13px;top:15px;font:700 7px/1 Arial,sans-serif;letter-spacing:.13em;color:#9b825b} .sa-msg b{display:block;margin-bottom:5px;font:700 8px/1 Arial,sans-serif;letter-spacing:.16em;color:#c89854;text-transform:uppercase} .sa-msg p{margin:0;color:#d8d0c1;font:13px/1.55 Georgia,serif} .sa-studio-empty{padding:45px 0;text-align:center;color:#71827f;font:italic 12px Georgia,serif} .sa-compose{display:none;border-top:1px solid var(--line);padding-top:15px} .sa-compose.show{display:block} .sa-compose textarea{display:block;width:100%;min-height:74px;resize:vertical;border:1px solid rgba(189,131,57,.3);background:#06171e;color:#e8dfcf;padding:11px;font:12px/1.5 Georgia,serif;outline:none} .sa-compose-row{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-top:9px} .sa-compose-note{font-size:7px;letter-spacing:.13em;color:#748784} .sa-send,.sa-admin-btn{border:1px solid rgba(189,131,57,.5);background:rgba(189,131,57,.08);color:#dfc69d;padding:9px 13px;cursor:pointer;font-size:8px;letter-spacing:.14em} .sa-admin{display:none;margin:16px 0;padding:13px;border:1px dashed rgba(189,131,57,.3)} .sa-admin.show{display:block} .sa-admin label{font-size:7px;letter-spacing:.15em;color:#9a8c75} .sa-admin input{width:110px;margin:0 8px;padding:7px;border:1px solid var(--line);background:#06171e;color:#e8dfcf} .sa-save-state{margin-left:8px;font-size:7px;color:#78908b} @media(max-width:720px){.sa-studio{padding:22px}.sa-msg{padding-left:13px;padding-top:31px}.sa-msg time{top:12px}} /* v8 LIVE STUDIO layout repair */ .sa-content.sa-studio-mode > .sa-panel{display:none!important} .sa-studio{ display:none!important;position:relative!important;inset:auto!important; width:100%!important;min-height:470px!important;height:auto!important; padding:0!important;background:transparent!important;overflow:visible!important; } .sa-studio.open{display:block!important} .sa-studio-head{padding:0 0 18px!important} .sa-studio-head h3{font-size:26px!important;color:#efe4d1!important} .sa-studio-meta{max-width:520px} .sa-admin{margin:17px 0!important;padding:13px 14px!important;background:rgba(3,17,23,.25)} .sa-admin input{ width:120px!important;height:31px!important;margin:0 8px!important;padding:5px 8px!important; background:#06171e!important;color:#efe4d1!important;border:1px solid rgba(189,131,57,.38)!important; } .sa-studio-log{min-height:205px!important;max-height:330px!important;overflow:auto!important;padding-right:4px} .sa-compose{position:relative!important;display:none!important;margin-top:16px!important;padding-top:15px!important} .sa-compose.show{display:block!important} .sa-compose textarea{ box-sizing:border-box!important;position:relative!important;display:block!important; width:100%!important;min-height:86px!important;height:86px!important;margin:0!important; padding:12px!important;opacity:1!important;visibility:visible!important;pointer-events:auto!important; background:#06171e!important;color:#efe4d1!important;border:1px solid rgba(189,131,57,.38)!important; -webkit-text-fill-color:#efe4d1!important; } .sa-compose textarea:focus{border-color:#d3a45f!important;box-shadow:0 0 0 1px rgba(211,164,95,.15)!important} .sa-send,.sa-admin-btn,.sa-finish,.sa-library-btn,.sa-archive-open{ position:relative!important;z-index:3!important;pointer-events:auto!important;opacity:1!important; cursor:pointer!important; } .sa-studio-tools{display:flex;gap:8px;flex-wrap:wrap;margin:13px 0 0} .sa-finish,.sa-library-btn{border:1px solid rgba(189,131,57,.42);background:rgba(189,131,57,.07);color:#dfc69d;padding:8px 11px;font-size:7px;letter-spacing:.14em} .sa-library{display:none;margin-top:18px} .sa-library.open{display:block} .sa-library-head{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:13px} .sa-library-head b{font:normal 20px Georgia,serif} .sa-archive-card{margin-top:10px;padding:14px;border:1px solid rgba(189,131,57,.22);background:rgba(255,255,255,.025)} .sa-archive-card small{font:700 7px Arial,sans-serif;letter-spacing:.16em;color:#bd8a4a} .sa-archive-card strong{display:block;margin:7px 0;font:normal 16px Georgia,serif;color:#e6dac5} .sa-archive-open{border:0;background:transparent;color:#c99650;padding:4px 0;font-size:8px;letter-spacing:.14em} .sa-archive-body{display:none;margin-top:12px;border-top:1px solid rgba(255,255,255,.06);padding-top:10px} .sa-archive-card.expanded .sa-archive-body{display:block} .sa-live-error{display:none;margin-top:9px;color:#c99a73;font-size:8px;letter-spacing:.08em} .sa-live-error.show{display:block} /* v9 LIVE STUDIO visual rebuild */ .sa-studio{color:#efe4d1!important} .sa-studio-head{ display:grid!important;grid-template-columns:minmax(0,1fr) auto!important; gap:24px!important;align-items:start!important;padding:0 0 22px!important; border-bottom:1px solid rgba(189,131,57,.28)!important; } .sa-studio-head h3{ display:block!important;width:auto!important;margin:9px 0 7px!important;padding:0!important; background:transparent!important;color:#efe4d1!important; font:normal 30px/1.05 Georgia,serif!important; } .sa-studio-meta{color:#91a19d!important;font:italic 11px/1.5 Georgia,serif!important} .sa-studio-back{ min-width:106px!important;padding:10px 13px!important;background:rgba(4,20,26,.3)!important; color:#dec69d!important;border:1px solid rgba(189,131,57,.38)!important; } .sa-studio-tools{display:flex!important;gap:8px!important;margin:16px 0 0!important} .sa-library-btn,.sa-finish{ height:31px!important;padding:0 12px!important;margin:0!important; border:1px solid rgba(189,131,57,.34)!important;background:rgba(189,131,57,.045)!important; color:#cdb68e!important;font:700 7px/29px Arial,sans-serif!important;letter-spacing:.14em!important; } .sa-admin{ display:none!important;grid-template-columns:auto 118px auto 1fr!important; align-items:center!important;gap:10px!important;margin:16px 0 0!important;padding:11px 13px!important; border:1px solid rgba(189,131,57,.2)!important;background:rgba(3,17,23,.22)!important; } .sa-admin.show{display:grid!important} .sa-admin label{white-space:nowrap!important} .sa-admin input{box-sizing:border-box!important;width:118px!important;height:30px!important;margin:0!important} .sa-admin-btn{height:30px!important;padding:0 12px!important;white-space:nowrap!important} .sa-save-state{margin:0!important} .sa-library{margin:18px 0 0!important;padding:0!important} .sa-studio-log{ box-sizing:border-box!important;min-height:250px!important;max-height:360px!important; margin:18px 0 0!important;padding:10px!important;overflow:auto!important; border:1px solid rgba(189,131,57,.16)!important;background:rgba(3,17,23,.18)!important; } .sa-studio-empty{ display:flex!important;align-items:center!important;justify-content:center!important; min-height:225px!important;padding:0!important;color:#6f8b89!important; } .sa-compose{ box-sizing:border-box!important;margin:14px 0 0!important;padding:14px!important; border:1px solid rgba(189,131,57,.2)!important;background:rgba(3,17,23,.25)!important; } .sa-compose textarea{ min-height:92px!important;height:92px!important;padding:12px 13px!important; background:#06171e!important;color:#e9dfce!important; font:12px/1.55 Georgia,serif!important; } .sa-compose textarea::placeholder{color:#7e8e8a!important;opacity:1!important} .sa-compose-row{margin-top:10px!important;min-height:34px!important} .sa-compose-note{color:#758b87!important} .sa-send{ min-width:108px!important;height:34px!important;padding:0 14px!important; background:rgba(189,131,57,.08)!important;color:#e0c79d!important; border:1px solid rgba(189,131,57,.48)!important; font:700 8px/32px Arial,sans-serif!important;letter-spacing:.14em!important; } .sa-live-error{padding-top:8px!important} @media(max-width:720px){ .sa-studio-head{grid-template-columns:1fr!important} .sa-studio-back{justify-self:start!important} .sa-admin.show{grid-template-columns:1fr!important} .sa-admin input{width:100%!important} } /* v10: hard reset against Rusff post/form styles */ #sa-radio-mount .sa-studio, #sa-radio-mount .sa-studio *{box-sizing:border-box} #sa-radio-mount .sa-studio h3, #sa-radio-mount .sa-studio p, #sa-radio-mount .sa-studio button, #sa-radio-mount .sa-studio input, #sa-radio-mount .sa-studio textarea{float:none!important} #sa-radio-mount .sa-studio-head h3{ width:auto!important;max-width:none!important;height:auto!important;min-height:0!important; background:none!important;border:0!important;box-shadow:none!important; padding:0!important;margin:8px 0 6px!important;color:#efe4d1!important; } #sa-radio-mount .sa-studio-head{ width:100%!important;margin:0!important;padding:0 0 20px!important; background:none!important; } #sa-radio-mount .sa-studio-tools{ position:static!important;width:auto!important;height:auto!important; margin:15px 0 0!important;padding:0!important;border:0!important;background:none!important; } #sa-radio-mount .sa-admin.show{ position:static!important;width:100%!important;height:auto!important;min-height:54px!important; margin:14px 0 0!important;padding:11px 13px!important; display:flex!important;align-items:center!important;gap:10px!important; } #sa-radio-mount .sa-admin input{ position:static!important;display:block!important;flex:0 0 118px!important; width:118px!important;height:30px!important;min-height:30px!important; padding:5px 8px!important;margin:0!important; } #sa-radio-mount .sa-admin-btn{ position:static!important;display:block!important;width:auto!important;height:30px!important; margin:0!important;padding:0 12px!important;line-height:28px!important; } #sa-radio-mount .sa-studio-log{ position:static!important;width:100%!important;height:auto!important; min-height:210px!important;max-height:320px!important; margin:14px 0 0!important;padding:10px!important; } #sa-radio-mount .sa-msg{ width:100%!important;min-height:58px!important;margin:0 0 8px!important; padding:12px 14px 12px 86px!important;background:rgba(255,255,255,.022)!important; } #sa-radio-mount .sa-compose.show{ position:static!important;display:block!important;width:100%!important;height:auto!important; margin:12px 0 0!important;padding:12px!important; } #sa-radio-mount .sa-compose textarea{ position:static!important;display:block!important;float:none!important; width:100%!important;max-width:none!important;height:88px!important;min-height:88px!important; margin:0!important;padding:11px 12px!important; border:1px solid rgba(189,131,57,.36)!important;border-radius:0!important; background:#06171e!important;color:#e9dfce!important;box-shadow:none!important; } #sa-radio-mount .sa-compose-row{ position:static!important;display:flex!important;width:100%!important;height:36px!important; margin:9px 0 0!important;padding:0!important;align-items:center!important; justify-content:space-between!important; } #sa-radio-mount .sa-send{ position:static!important;display:block!important;float:none!important; width:auto!important;min-width:108px!important;height:34px!important; margin:0!important;padding:0 14px!important;line-height:32px!important; } #sa-radio-mount .sa-studio input:focus, #sa-radio-mount .sa-studio textarea:focus{outline:none!important} /* v11 RADIO TEAM permissions */ .sa-rights{display:none;margin:14px 0 0;padding:13px;border:1px solid rgba(189,131,57,.25);background:rgba(3,17,23,.26)} .sa-rights.show{display:block} .sa-rights-title{font:700 7px/1 Arial,sans-serif;letter-spacing:.18em;color:#c89953;margin-bottom:10px} .sa-rights-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap} .sa-rights input{width:120px!important;height:30px!important;margin:0!important;padding:5px 8px!important;background:#06171e!important;color:#efe4d1!important;border:1px solid rgba(189,131,57,.35)!important} .sa-rights button{height:30px!important;padding:0 11px!important;border:1px solid rgba(189,131,57,.4)!important;background:rgba(189,131,57,.06)!important;color:#ddc49a!important;font:700 7px/28px Arial,sans-serif!important;letter-spacing:.12em!important;cursor:pointer!important} .sa-rights-list{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px} .sa-rights-chip{display:inline-flex;gap:7px;align-items:center;padding:6px 8px;border:1px solid rgba(255,255,255,.08);color:#91a19d;font:7px Arial,sans-serif;letter-spacing:.1em} .sa-rights-chip button{height:auto!important;line-height:1!important;border:0!important;padding:0!important;color:#c89953!important} /* v12: permission UI must never flash for non-admins */ #sa-radio-mount .sa-rights{display:none!important} #sa-radio-mount .sa-rights.show{display:block!important} /* v14 LIVE CONSOLE */ #sa-radio-mount .sa-studio-log{position:relative!important;display:flex!important;flex-direction:column!important;gap:13px!important;padding:20px 18px 22px!important;background:linear-gradient(180deg,rgba(5,25,32,.88),rgba(3,18,24,.94))!important;border:1px solid rgba(188,132,57,.20)!important;overflow:auto!important} #sa-radio-mount .sa-msg{display:grid!important;grid-template-columns:38px minmax(0,1fr)!important;gap:12px!important;width:min(86%,720px)!important;margin:0!important;padding:0!important;border:0!important;background:none!important;float:none!important;clear:both!important} #sa-radio-mount .sa-msg-avatar{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;box-sizing:border-box;border:1px solid rgba(188,132,57,.34);background:#071d24;color:#d2aa70;font:700 8px/1 Arial,sans-serif;letter-spacing:.05em;box-shadow:0 0 0 4px rgba(188,132,57,.025)} #sa-radio-mount .sa-msg-body{min-width:0;padding:10px 13px 12px!important;border:1px solid rgba(255,255,255,.075)!important;background:rgba(8,35,43,.72)!important;box-shadow:0 9px 22px rgba(0,0,0,.10)} #sa-radio-mount .sa-msg-meta{display:flex!important;align-items:center!important;gap:9px!important;margin:0 0 7px!important} #sa-radio-mount .sa-msg-meta time{order:3;margin-left:auto!important;color:#617b79!important;font:600 6px/1 Arial,sans-serif!important;letter-spacing:.12em} #sa-radio-mount .sa-msg-meta b{color:#c89953!important;font:700 7px/1 Arial,sans-serif!important;letter-spacing:.16em} #sa-radio-mount .sa-msg-meta span{color:#526d6c;font:600 6px/1 Arial,sans-serif;letter-spacing:.1em} #sa-radio-mount .sa-msg-body p{margin:0!important;padding:0!important;color:#eee5d7!important;font:13px/1.55 Georgia,serif!important;border:0!important;background:none!important} #sa-radio-mount .sa-msg.sa-guest{align-self:flex-end!important;grid-template-columns:minmax(0,1fr) 38px!important} #sa-radio-mount .sa-msg.sa-guest .sa-msg-avatar{grid-column:2;grid-row:1;border-color:rgba(116,151,148,.42);color:#9bb6b2} #sa-radio-mount .sa-msg.sa-guest .sa-msg-body{grid-column:1;grid-row:1;background:rgba(10,31,38,.78)!important;border-color:rgba(116,151,148,.18)!important} #sa-radio-mount .sa-msg.sa-cohost .sa-msg-avatar{border-radius:7px;border-color:rgba(109,151,148,.34);color:#9bb6b2} #sa-radio-mount .sa-msg.sa-cohost .sa-msg-meta b{color:#9bb6b2!important} #sa-radio-mount .sa-msg.sa-host .sa-msg-body{border-left:2px solid rgba(200,153,83,.55)!important} /* v15 LIVE DIRECTOR */ #sa-radio-mount .sa-director-title{width:100%;margin:0 0 10px;color:#c89953;font:700 7px/1 Arial,sans-serif;letter-spacing:.2em} #sa-radio-mount .sa-cast-row{display:flex!important;gap:7px!important;align-items:center!important;flex-wrap:wrap!important} #sa-radio-mount .sa-cast-row label{color:#708a87!important;font:700 6px/1 Arial,sans-serif!important;letter-spacing:.12em!important} #sa-radio-mount .sa-cast-row input{width:84px!important;min-width:84px!important} /* v16 DIRECTOR stability + layout */ #sa-radio-mount .sa-admin{display:none!important} #sa-radio-mount .sa-admin.show{display:block!important} #sa-radio-mount .sa-cast-row{display:grid!important;grid-template-columns:repeat(3,minmax(110px,1fr)) auto!important;gap:8px 10px!important;align-items:end!important} #sa-radio-mount .sa-cast-row label{display:flex!important;flex-direction:column!important;gap:6px!important;color:#78908e!important;font:700 6px/1 Arial,sans-serif!important;letter-spacing:.14em!important} #sa-radio-mount .sa-cast-row input{display:block!important;width:100%!important;min-width:0!important;height:32px!important;box-sizing:border-box!important} #sa-radio-mount .sa-set-cast{height:32px!important;white-space:nowrap!important} #sa-radio-mount .sa-save-state{grid-column:1/-1!important;min-height:8px;color:#c89953;font:700 6px/1 Arial,sans-serif;letter-spacing:.16em} #sa-radio-mount .sa-cast-row label{align-self:center!important} @media(max-width:760px){#sa-radio-mount .sa-cast-row{grid-template-columns:auto 1fr!important}} /* v17 RADIO STUDIO */ #sa-radio-mount .sa-station-console{margin:14px 0;padding:14px;border:1px solid rgba(190,137,63,.24);background:linear-gradient(135deg,rgba(7,29,36,.92),rgba(3,19,25,.96));display:grid;grid-template-columns:150px minmax(220px,1fr) auto;gap:14px;align-items:center} #sa-radio-mount .sa-onair-state{display:grid;grid-template-columns:9px 1fr;gap:4px 8px;align-items:center}.sa-onair-dot{width:7px;height:7px;border-radius:50%;background:#607a78}.sa-onair-state.live .sa-onair-dot{background:#b94b3f;box-shadow:0 0 12px rgba(185,75,63,.8);animation:saPulse 1.2s infinite}.sa-onair-state b{color:#809592;font:700 9px Arial;letter-spacing:.18em}.sa-onair-state.live b{color:#d06b5e}.sa-onair-state small{grid-column:1/-1;color:#536d6b;font:6px Arial;letter-spacing:.12em} #sa-radio-mount .sa-nowplaying span{display:block;color:#c89953;font:700 6px Arial;letter-spacing:.18em;margin-bottom:5px}.sa-nowplaying strong{display:block;color:#eee3d2;font:13px Georgia,serif}.sa-wave{display:flex;height:12px;gap:3px;align-items:end;margin-top:7px}.sa-wave i{display:block;width:2px;height:4px;background:#708d88;animation:saWave .9s infinite alternate}.sa-wave i:nth-child(2n){animation-delay:.2s;height:9px}.sa-wave i:nth-child(3n){animation-delay:.4s;height:6px} #sa-radio-mount .sa-audio-controls button,#sa-radio-mount .sa-editor-console button,#sa-radio-mount .sa-audience-box button{border:1px solid rgba(190,137,63,.38)!important;background:rgba(190,137,63,.04)!important;color:#d9bd8f!important;height:30px!important;padding:0 10px!important;font:700 7px Arial!important;letter-spacing:.12em!important;cursor:pointer!important} #sa-radio-mount .sa-editor-console{grid-column:1/-1;display:grid;grid-template-columns:180px minmax(220px,1fr) auto auto;gap:8px;padding-top:11px;border-top:1px solid rgba(255,255,255,.06)} #sa-radio-mount .sa-editor-console input{height:30px!important;box-sizing:border-box!important;background:#061820!important;border:1px solid rgba(190,137,63,.24)!important;color:#ddd0bb!important;padding:0 8px!important} #sa-radio-mount .sa-playlist{grid-column:1/-1;display:flex;gap:5px;flex-wrap:wrap}.sa-playlist button{height:24px!important;font-size:6px!important} #sa-radio-mount .sa-audio{grid-column:1/-1!important;width:100%!important;height:34px!important;display:block!important;margin-top:6px!important;opacity:.88!important} #sa-radio-mount .sa-speaker-avatar{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;border-radius:50%!important} #sa-radio-mount [data-radio-avatar]{display:flex!important;width:100%!important;height:100%!important;align-items:center!important;justify-content:center!important} #sa-radio-mount .sa-avatar-diag{grid-column:1/-1!important;margin-top:8px!important;padding:10px!important;border:1px solid rgba(190,157,101,.22)!important;background:rgba(2,12,13,.42)!important} #sa-radio-mount .sa-avatar-diag-head{font:700 7px Arial!important;letter-spacing:.2em!important;color:#c6a66f!important;margin-bottom:7px!important} #sa-radio-mount .sa-avatar-diag-row{display:grid!important;grid-template-columns:110px 1fr!important;gap:7px!important} #sa-radio-mount .sa-avatar-diag-row input,#sa-radio-mount .sa-avatar-diag-row button{height:30px!important;box-sizing:border-box!important} #sa-radio-mount .sa-avatar-diag-out{white-space:pre-wrap!important;word-break:break-all!important;max-height:220px!important;overflow:auto!important;margin:8px 0 0!important;padding:8px!important;background:#071315!important;border:1px solid rgba(255,255,255,.06)!important;color:#b8b0a0!important;font:10px/1.55 Consolas,monospace!important;text-transform:none!important;letter-spacing:0!important} #sa-radio-mount .sa-msg-marker{width:42px!important;height:42px!important;min-width:42px!important;padding:0!important;border-radius:50%!important;overflow:hidden!important;display:flex!important;align-items:center!important;justify-content:center!important;background:rgba(7,20,21,.92)!important;border:1px solid rgba(190,157,101,.42)!important;box-shadow:0 0 0 3px rgba(190,157,101,.05)!important} #sa-radio-mount .sa-speaker-avatar{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;border-radius:50%!important} #sa-radio-mount .sa-avatar-fallback{display:flex!important;width:100%!important;height:100%!important;align-items:center!important;justify-content:center!important;font:700 9px Arial!important;letter-spacing:.08em!important;color:#c6a66f!important;background:radial-gradient(circle at 50% 35%,rgba(198,166,111,.14),rgba(0,0,0,.12) 70%)!important} #sa-radio-mount .sa-system-avatar{font-size:6px!important} #sa-radio-mount .sa-pl-item{display:inline-flex!important;align-items:center!important;gap:5px!important;padding:3px 5px!important;border:1px solid rgba(185,154,105,.18)!important;background:rgba(0,0,0,.14)!important} #sa-radio-mount .sa-pl-item>b{font:700 6px Arial!important;letter-spacing:.12em!important;color:#8e806b!important} #sa-radio-mount .sa-pl-item>a{font:700 6px Arial!important;letter-spacing:.1em!important;color:#c6a66f!important;text-decoration:none!important;border-left:1px solid rgba(185,154,105,.2)!important;padding-left:5px!important} #sa-radio-mount .sa-pl-item>a:hover{color:#ead4a9!important} #sa-radio-mount .sa-audio-state{display:inline-flex!important;align-items:center!important;min-height:20px!important;font:700 7px Arial!important;letter-spacing:.13em!important;color:#b99a69!important} #sa-radio-mount .sa-audience-box{margin:14px 0;padding:13px;border:1px solid rgba(111,146,143,.18);display:grid;grid-template-columns:180px 1fr auto;gap:10px;align-items:center;background:rgba(5,25,31,.5)}.sa-audience-box b{display:block;color:#9eb4b0;font:700 7px Arial;letter-spacing:.15em}.sa-audience-box small{display:block;margin-top:4px;color:#526c6a;font:6px/1.4 Arial}.sa-audience-box textarea{height:42px!important;min-height:42px!important;resize:none!important;background:#061820!important;color:#e7ddcd!important;border:1px solid rgba(111,146,143,.2)!important;padding:7px!important}.sa-question-queue{grid-column:1/-1}.sa-qitem{padding:7px 9px;border-top:1px solid rgba(255,255,255,.05);color:#b9c5c1;font:10px/1.4 Georgia}.sa-qitem span{margin-right:10px;color:#c89953;font:6px Arial;letter-spacing:.12em} @keyframes saPulse{50%{opacity:.35}}@keyframes saWave{to{height:11px}} @media(max-width:760px){#sa-radio-mount .sa-station-console{grid-template-columns:1fr}#sa-radio-mount .sa-editor-console,#sa-radio-mount .sa-audience-box{grid-template-columns:1fr}} /* v18 BROADCAST LAB */ #sa-radio-mount .sa-upload-btn{height:28px;display:flex;align-items:center;justify-content:center;padding:0 10px;border:1px solid rgba(190,137,63,.38);color:#d9bd8f;font:700 7px Arial;letter-spacing:.12em;cursor:pointer}#sa-radio-mount .sa-upload-btn input{display:none!important}.sa-upload-state{align-self:center;color:#9bb6b2;font:700 6px Arial;letter-spacing:.12em} #sa-radio-mount .sa-breaking-banner{display:none;margin:12px 0;padding:12px 15px;border:1px solid rgba(174,66,53,.55);background:linear-gradient(90deg,rgba(91,24,20,.35),rgba(5,24,30,.8));box-shadow:inset 3px 0 0 #a94e40}.sa-breaking-banner.show{display:flex;gap:18px;align-items:center}.sa-breaking-banner span{color:#d16e60;font:700 7px Arial;letter-spacing:.18em}.sa-breaking-banner strong{color:#eee0ce;font:12px Georgia} #sa-radio-mount .sa-reactions{display:flex;align-items:center;gap:6px;margin:10px 0}.sa-reactions>span{margin-right:auto;color:#617b79;font:700 6px Arial;letter-spacing:.15em}.sa-reactions button{height:25px!important;min-width:44px!important;border:1px solid rgba(113,148,145,.18)!important;background:rgba(5,25,31,.45)!important;color:#8ca6a2!important;cursor:pointer!important}.sa-reactions b{color:#c89953;font-size:7px} #sa-radio-mount .sa-msg-system{align-self:center!important;width:76%!important;padding:8px 12px!important;border-top:1px solid rgba(190,137,63,.18)!important;border-bottom:1px solid rgba(190,137,63,.18)!important;text-align:center!important;background:linear-gradient(90deg,transparent,rgba(190,137,63,.04),transparent)!important}.sa-msg-system span{margin-right:12px;color:#5d7775;font:6px Arial;letter-spacing:.12em}.sa-msg-system b{color:#c89953;font:700 7px Arial;letter-spacing:.18em} #sa-radio-mount .sa-editor-console{grid-template-columns:140px minmax(180px,1fr) repeat(5,auto)!important}.sa-breaking-text{grid-column:1/3!important}.sa-upload-state{grid-column:3/-1!important} /* v19 audience signal */ #sa-radio-mount .sa-reactions{min-height:48px!important;padding:8px 4px!important;gap:10px!important} #sa-radio-mount .sa-reactions>span{font-size:8px!important;letter-spacing:.18em!important} #sa-radio-mount .sa-reactions button{height:38px!important;min-width:66px!important;padding:0 13px!important;font-size:17px!important;line-height:36px!important;border-radius:2px!important;transition:.2s ease!important} #sa-radio-mount .sa-reactions button b{font-size:11px!important;margin-left:7px!important;vertical-align:2px!important} #sa-radio-mount .sa-reactions button:hover{transform:translateY(-1px)!important;border-color:rgba(200,153,83,.48)!important;color:#d8c29e!important} #sa-radio-mount .sa-reactions button.voted{border-color:rgba(200,153,83,.55)!important;background:rgba(200,153,83,.09)!important;color:#d7b77e!important;cursor:default!important} `; document.head.appendChild(s); } function mount(){ if(currentTopic()!==TOPIC_ID)return; var post=findPost(); var msg=findMessage(post); if(!post||!msg)return; if(msg.querySelector("#sa-radio-mount"))return; installStyle(); /* Radio topic: hide the ordinary Rusff author column for this post only. */ post.classList.add("sa-radio-post"); var author=post.querySelector(".post-author, .post-author-block, .post-left, .post-profile"); if(author)author.style.display="none"; var postBody=post.querySelector(".post-body, .post-content"); if(postBody){ postBody.style.marginLeft="0"; postBody.style.width="100%"; postBody.style.maxWidth="none"; } var mount=document.createElement("div"); mount.id="sa-radio-mount"; mount.innerHTML=`
ISOLA \xb7 VOCE \xb7 NOTIZIE

Radio San Avelio101.7 FM \xb7 LA VOCE DELL'ISOLA

ON AIR \xb7 22:48
\u041f\u0420\u042f\u041c\u041e\u0419 \u042d\u0424\u0418\u0420 / LIVE

\u0421\u0430\u043d-\u0410\u0432\u0435\u043b\u0438\u043e \u0441\u0435\u0439\u0447\u0430\u0441

\u0412\u0435\u0447\u0435\u0440\u043d\u0438\u0439 \u044d\u0444\u0438\u0440 \u043e\u0441\u0442\u0440\u043e\u0432\u0430: \u0441\u043e\u0431\u044b\u0442\u0438\u044f \u0434\u043d\u044f, \u043c\u0443\u0437\u044b\u043a\u0430, \u0437\u0432\u043e\u043d\u043a\u0438 \u0441\u043b\u0443\u0448\u0430\u0442\u0435\u043b\u0435\u0439 \u0438 \u0432\u0441\u0451, \u0447\u0442\u043e \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u043c\u0435\u0436\u0434\u0443 \u0421\u0442\u0430\u0440\u044b\u043c \u0433\u043e\u0440\u043e\u0434\u043e\u043c \u0438 \u0433\u0430\u0432\u0430\u043d\u044c\u044e.
\u0421\u0415\u0419\u0427\u0410\u0421 \u0412 \u042d\u0424\u0418\u0420\u0415\u0412\u0435\u0447\u0435\u0440 \u0443 \u043c\u043e\u0440\u044f

\u0412\u0435\u0434\u0443\u0449\u0438\u0439: \u041c\u0430\u0440\u043a\u043e \u0420\u0438\u043d\u0430\u043b\u044c\u0434\u0438 \xb7 \u0434\u043e 00:00

\u0413\u043e\u0441\u0442\u044c \u0432\u0435\u0447\u0435\u0440\u043d\u0435\u0433\u043e \u044d\u0444\u0438\u0440\u0430\u0420\u0430\u0437\u0433\u043e\u0432\u043e\u0440 \u043e \u0442\u043e\u043c, \u043f\u043e\u0447\u0435\u043c\u0443 \u043e\u0441\u0442\u0440\u043e\u0432 \u043d\u0438\u043a\u043e\u0433\u0434\u0430 \u043d\u0435 \u0441\u043f\u0438\u0442 \u043f\u043e-\u043d\u0430\u0441\u0442\u043e\u044f\u0449\u0435\u043c\u0443.
\u2192
\u041f\u043e\u0441\u043b\u0435 \u043f\u043e\u043b\u0443\u043d\u043e\u0447\u0438\u041c\u0443\u0437\u044b\u043a\u0430, \u0437\u0432\u043e\u043d\u043a\u0438 \u0438 \u0438\u0441\u0442\u043e\u0440\u0438\u0438 \u0431\u0435\u0437 \u0438\u043c\u0451\u043d.
\u2192
NOTIZIE / \u0421\u0412\u041e\u0414\u041a\u0410

\u041d\u043e\u0432\u043e\u0441\u0442\u0438 \u043e\u0441\u0442\u0440\u043e\u0432\u0430

\u041a\u043e\u0440\u043e\u0442\u043a\u043e \u043e \u0442\u043e\u043c, \u0447\u0442\u043e \u043f\u0440\u043e\u0438\u0437\u043e\u0448\u043b\u043e \u0441\u0435\u0433\u043e\u0434\u043d\u044f.
\u041d\u0430\u0431\u0435\u0440\u0435\u0436\u043d\u0430\u044f \u0447\u0430\u0441\u0442\u0438\u0447\u043d\u043e \u043f\u0435\u0440\u0435\u043a\u0440\u044b\u0442\u0430\u0411\u043e\u0440\u0433\u043e-\u0434\u0435\u043b\u044c-\u041f\u043e\u0440\u0442\u043e \xb7 \u043f\u043e\u043b\u0438\u0446\u0438\u044f \u043f\u043e\u043a\u0430 \u043d\u0435 \u043d\u0430\u0437\u044b\u0432\u0430\u0435\u0442 \u043f\u0440\u0438\u0447\u0438\u043d\u0443.
\u2192
\u041a\u043e\u043b\u043e\u043a\u043e\u043b\u0430 \u0421\u0430\u043d-\u041c\u0438\u043a\u0435\u043b\u0435\u0412 \u0421\u0442\u0430\u0440\u043e\u043c \u0433\u043e\u0440\u043e\u0434\u0435 \u0438\u0445 \u0441\u043b\u044b\u0448\u0430\u043b\u0438 \u043e\u0434\u0438\u043d \u0440\u0430\u0437. \u0421\u043b\u0443\u0436\u0431\u044b \u0441\u0435\u0433\u043e\u0434\u043d\u044f \u043d\u0435\u0442.
\u2192
\u041f\u0435\u0440\u0435\u0431\u043e\u0438 \u0441 \u043e\u0441\u0432\u0435\u0449\u0435\u043d\u0438\u0435\u043c\u041d\u043e\u0432\u044b\u0439 \u0433\u043e\u0440\u043e\u0434 \xb7 \u043f\u0440\u043e\u0441\u043f\u0435\u043a\u0442 \u0412\u0438\u0442\u0442\u043e\u0440\u0438\u043e.
\u2192
ARCHIVIO / PODCAST

\u0413\u043e\u043b\u043e\u0441\u0430 \u0421\u0430\u043d-\u0410\u0432\u0435\u043b\u0438\u043e

\u0418\u043d\u0442\u0435\u0440\u0432\u044c\u044e, \u0440\u0430\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u044f \u0438 \u0440\u0430\u0437\u0433\u043e\u0432\u043e\u0440\u044b \u0441 \u0442\u0435\u043c\u0438, \u043a\u0442\u043e \u043e\u0431\u044b\u0447\u043d\u043e \u043e\u0441\u0442\u0430\u0451\u0442\u0441\u044f \u0437\u0430 \u043a\u0430\u0434\u0440\u043e\u043c.
EP. 017 \xb7 42 MIN\u0413\u043e\u0440\u043e\u0434 \u043f\u043e\u0434 \u0433\u043e\u0440\u043e\u0434\u043e\u043c

\u0427\u0442\u043e \u043e\u0441\u0442\u0430\u043b\u043e\u0441\u044c \u043f\u043e\u0434 \u0443\u043b\u0438\u0446\u0430\u043c\u0438 \u0421\u0442\u0430\u0440\u043e\u0433\u043e \u0433\u043e\u0440\u043e\u0434\u0430 \u0438 \u043f\u043e\u0447\u0435\u043c\u0443 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0434\u0432\u0435\u0440\u0438 \u043d\u0438\u043a\u043e\u0433\u0434\u0430 \u043d\u0435 \u043e\u0442\u043a\u0440\u044b\u0432\u0430\u044e\u0442.

INTERVISTA \xb7 31 MIN\u041b\u044e\u0434\u0438 \u0433\u0430\u0432\u0430\u043d\u0438

\u041d\u043e\u0447\u043d\u0430\u044f \u0441\u043c\u0435\u043d\u0430 \u0411\u043e\u0440\u0433\u043e-\u0434\u0435\u043b\u044c-\u041f\u043e\u0440\u0442\u043e \u0440\u0430\u0441\u0441\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442 \u043e \u043c\u043e\u0440\u0435, \u0440\u0430\u0431\u043e\u0442\u0435 \u0438 \u0447\u0443\u0436\u0438\u0445 \u0441\u0435\u043a\u0440\u0435\u0442\u0430\u0445.

EP. 015 \xb7 26 MIN\u041e\u0441\u0442\u0440\u043e\u0432\u043d\u044b\u0435 \u043b\u0435\u0433\u0435\u043d\u0434\u044b

\u0418\u0441\u0442\u043e\u0440\u0438\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u043c \u043d\u0438\u043a\u0442\u043e \u043d\u0435 \u0432\u0435\u0440\u0438\u0442 \u2014 \u043f\u043e\u043a\u0430 \u043d\u0435 \u0441\u0442\u0430\u043b\u043a\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u0441 \u043d\u0438\u043c\u0438 \u0441\u0430\u043c.

SPECIALE \xb7 55 MIN\u0414\u0435\u043b\u043e \u0431\u0435\u0437 \u043d\u043e\u043c\u0435\u0440\u0430

\u0410\u0440\u0445\u0438\u0432\u043d\u0430\u044f \u0437\u0430\u043f\u0438\u0441\u044c, \u043a\u043e\u0442\u043e\u0440\u0443\u044e \u0440\u0435\u0434\u0430\u043a\u0446\u0438\u044f \u0434\u043e\u043b\u0433\u043e \u043d\u0435 \u0440\u0435\u0448\u0430\u043b\u0430\u0441\u044c \u0432\u044b\u043f\u0443\u0441\u043a\u0430\u0442\u044c.

BACHECA / \u041e\u0411\u042a\u042f\u0412\u041b\u0415\u041d\u0418\u042f

\u041e\u0441\u0442\u0440\u043e\u0432 \u0433\u043e\u0432\u043e\u0440\u0438\u0442

\u041e\u0431\u044a\u044f\u0432\u043b\u0435\u043d\u0438\u044f \u0436\u0438\u0442\u0435\u043b\u0435\u0439, \u043d\u0430\u0445\u043e\u0434\u043a\u0438, \u0440\u0430\u0431\u043e\u0442\u0430, \u0432\u0441\u0442\u0440\u0435\u0447\u0438 \u0438 \u043c\u0430\u043b\u0435\u043d\u044c\u043a\u0438\u0435 \u0438\u0441\u0442\u043e\u0440\u0438\u0438 \u0431\u043e\u043b\u044c\u0448\u043e\u0433\u043e \u043e\u0441\u0442\u0440\u043e\u0432\u0430.
\u041d\u0410\u0419\u0414\u0415\u041d\u041e
\u0421\u0432\u044f\u0437\u043a\u0430 \u043a\u043b\u044e\u0447\u0435\u0439 \u0443 \u043f\u043b\u043e\u0449\u0430\u0434\u0438\u0422\u0440\u0438 \u043a\u043b\u044e\u0447\u0430 \u0438 \u043b\u0430\u0442\u0443\u043d\u043d\u044b\u0439 \u0431\u0440\u0435\u043b\u043e\u043a. \u041e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u044b \u0432 \u0440\u0435\u0434\u0430\u043a\u0446\u0438\u0438 \u0440\u0430\u0434\u0438\u043e.
\u2192
\u0418\u0429\u0423
\u041c\u0443\u0437\u044b\u043a\u0430\u043d\u0442 \u0434\u043b\u044f \u0432\u0435\u0447\u0435\u0440\u043d\u0438\u0445 \u0432\u044b\u0441\u0442\u0443\u043f\u043b\u0435\u043d\u0438\u0439\u0411\u0430\u0440 \u0443 \u0433\u0430\u0432\u0430\u043d\u0438 \u0438\u0449\u0435\u0442 \u043f\u0438\u0430\u043d\u0438\u0441\u0442\u0430 \u043d\u0430 \u043f\u044f\u0442\u043d\u0438\u0446\u0443 \u0438 \u0441\u0443\u0431\u0431\u043e\u0442\u0443.
\u2192
\u0421\u041e\u0411\u042b\u0422\u0418\u0415
\u041f\u0440\u0430\u0437\u0434\u043d\u0438\u043a \u0433\u0430\u0432\u0430\u043d\u0438\u0412 \u044d\u0442\u0443 \u0441\u0443\u0431\u0431\u043e\u0442\u0443. \u041d\u0430\u0447\u0430\u043b\u043e \u043f\u043e\u0441\u043b\u0435 \u0437\u0430\u0445\u043e\u0434\u0430 \u0441\u043e\u043b\u043d\u0446\u0430.
\u2192
CANALE 04 / 00:00\u201404:00

\u041d\u043e\u0447\u043d\u043e\u0439 \u044d\u0444\u0438\u0440

\u041f\u043e\u0441\u043b\u0435 \u043f\u043e\u043b\u0443\u043d\u043e\u0447\u0438 \u043c\u044b \u043d\u0435 \u0441\u043f\u0440\u0430\u0448\u0438\u0432\u0430\u0435\u043c \u0438\u043c\u0451\u043d. \u0417\u0432\u043e\u043d\u043a\u0438, \u0441\u043b\u0443\u0445\u0438 \u0438 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u044f, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043d\u0435 \u043f\u043e\u043f\u0430\u0434\u0430\u044e\u0442 \u0432 \u0434\u043d\u0435\u0432\u043d\u044b\u0435 \u0432\u044b\u043f\u0443\u0441\u043a\u0438.
\u0410\u0420\u0425\u0418\u0412\u041d\u0410\u042f \u0417\u0410\u041f\u0418\u0421\u042c \xb7 02:17\xab\u041d\u0435 \u043f\u0440\u0438\u0445\u043e\u0434\u0438 \u0447\u0435\u0440\u0435\u0437 \u043f\u043b\u043e\u0449\u0430\u0434\u044c\xbb

\u0418\u0441\u0442\u043e\u0447\u043d\u0438\u043a \u043d\u0435\u0438\u0437\u0432\u0435\u0441\u0442\u0435\u043d. \u0417\u0430\u043f\u0438\u0441\u044c \u043e\u0431\u043e\u0440\u0432\u0430\u043b\u0430\u0441\u044c \u0447\u0435\u0440\u0435\u0437 \u043e\u0434\u0438\u043d\u043d\u0430\u0434\u0446\u0430\u0442\u044c \u0441\u0435\u043a\u0443\u043d\u0434.

LIVE  ///  22:48 \xb7 \u0411\u041e\u0420\u0413\u041e-\u0414\u0415\u041b\u042c-\u041f\u041e\u0420\u0422\u041e \u2014 \u041f\u041e\u041b\u0418\u0426\u0418\u042f \u041f\u0415\u0420\u0415\u041a\u0420\u042b\u041b\u0410 \u0427\u0410\u0421\u0422\u042c \u041d\u0410\u0411\u0415\u0420\u0415\u0416\u041d\u041e\u0419  ///  \u041f\u0410\u0420\u041e\u041c 06:40 \u041f\u041e \u0420\u0410\u0421\u041f\u0418\u0421\u0410\u041d\u0418\u042e  ///  \u041c\u041e\u0420\u0415 3 \u0411\u0410\u041b\u041b\u0410  ///  19\xb0C  ///  RADIO SAN AVELIO 101.7 FM  ///  \u0412 \u0421\u0422\u0410\u0420\u041e\u041c \u0413\u041e\u0420\u041e\u0414\u0415 \u0421\u041d\u041e\u0412\u0410 \u0421\u041b\u042b\u0428\u0410\u041b\u0418 \u041a\u041e\u041b\u041e\u041a\u041e\u041b\u0410 \u0421\u0410\u041d-\u041c\u0418\u041a\u0415\u041b\u0415  /// 
`; msg.innerHTML=""; msg.appendChild(mount); var root=mount.querySelector("#saRadio"); if(!root)return; root.dataset.ready="1"; var tabs=root.querySelectorAll(".sa-tab"); var panels=root.querySelectorAll(".sa-panel"); tabs.forEach(function(btn){ btn.addEventListener("click",function(){ var name=btn.getAttribute("data-panel"); tabs.forEach(function(x){x.classList.toggle("active",x===btn);}); panels.forEach(function(x){x.classList.toggle("active",x.getAttribute("data-name")===name);}); }); }); var ticker=root.querySelector(".sa-ticker-pause"); if(ticker)ticker.addEventListener("click",function(){ var paused=root.classList.toggle("ticker-paused"); ticker.textContent=paused?"\u25b6":"\u2161"; ticker.title=paused?"\u0417\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u0441\u0442\u0440\u043e\u043a\u0443":"\u041e\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u0441\u0442\u0440\u043e\u043a\u0443"; }); root.querySelectorAll(".sa-play").forEach(function(btn){ btn.addEventListener("click",function(){ var paused=btn.textContent==="\u25b6"; btn.textContent=paused?"\u2161":"\u25b6"; var eq=btn.parentNode.querySelector(".sa-eq"); if(eq)eq.style.opacity=paused?"1":".25"; }); }); /* LIVE STUDIO mounts over the right radio content. */ var content=root.querySelector(".sa-content"); var SA_RADIO_AVATAR_CACHE={}; function saRadioAvatarUrl(uid){ uid=String(uid||"").trim(); if(!uid)return Promise.resolve(""); if(Object.prototype.hasOwnProperty.call(SA_RADIO_AVATAR_CACHE,uid))return Promise.resolve(SA_RADIO_AVATAR_CACHE[uid]); return fetch("/profile.php?id="+encodeURIComponent(uid),{credentials:"same-origin",cache:"force-cache"}).then(function(r){ if(!r.ok)throw new Error("HTTP "+r.status); return r.text(); }).then(function(html){ var doc=new DOMParser().parseFromString(html,"text/html"),imgs=[].slice.call(doc.querySelectorAll("img")),url=""; for(var i=0;i'; return ''+letter+''; } function saRadioHydrateAvatars(root){ if(!root)return; var nodes=root.querySelectorAll("[data-radio-avatar]"),ids={}; for(var i=0;i64000)return Promise.reject(new Error("TOO_LARGE")); var fd=new FormData(); fd.append("method","storage.set");fd.append("app_id",RADIO_APP);fd.append("key",RADIO_KEY);fd.append("value",value);fd.append("token",t); return fetch(location.origin+"/api.php",{method:"POST",body:fd,credentials:"same-origin"}).then(function(r){return r.json();}).then(function(j){ if(j&&(j.error||j.errors))throw new Error("API_ERROR"); return j; }); } function normalizeRadio(x){ x=x&&typeof x==="object"?x:{}; return { guestId:String(x.guestId||""), hostId:String(x.hostId||""), cohostId:String(x.cohostId||""), onAir:!!x.onAir, nowPlaying:(x.nowPlaying&&typeof x.nowPlaying==="object")?x.nowPlaying:{title:"",url:""}, playlist:Array.isArray(x.playlist)?x.playlist:[], questions:Array.isArray(x.questions)?x.questions:[], reactions:(x.reactions&&typeof x.reactions==="object")?x.reactions:{signal:0,star:0,heart:0}, reactionUsers:(x.reactionUsers&&typeof x.reactionUsers==="object")?x.reactionUsers:{signal:[],star:[],heart:[]}, breakNews:(x.breakNews&&typeof x.breakNews==="object")?x.breakNews:{active:false,text:""}, editors:Array.isArray(x.editors)?x.editors.map(String):[], title:String(x.title||"\u0413\u043e\u0441\u0442\u044c \u0432\u0435\u0447\u0435\u0440\u043d\u0435\u0433\u043e \u044d\u0444\u0438\u0440\u0430"), messages:Array.isArray(x.messages)?x.messages.slice(-120):[], archive:Array.isArray(x.archive)?x.archive.slice(-50):[] }; } function esc(x){var d=document.createElement("div");d.textContent=String(x==null?"":x);return d.innerHTML;} function renderStudio(){ var uid=myId(), admin=isAdmin(), editor=isRadioEditor(), host=uid&&uid===String(radioState.hostId||""), cohost=uid&&uid===String(radioState.cohostId||""), invited=uid&&uid===String(radioState.guestId||""); var adm=studio.querySelector(".sa-admin"), comp=studio.querySelector(".sa-compose"), note=studio.querySelector(".sa-compose-note"); studio.querySelector(".sa-finish").style.display=editor?"inline-block":"none"; var lib=studio.querySelector(".sa-library-list"); var arc=radioState.archive||[]; if(!arc.length)lib.innerHTML='
\u0417\u0430\u0432\u0435\u0440\u0448\u0451\u043d\u043d\u044b\u0445 \u044d\u0444\u0438\u0440\u043e\u0432 \u043f\u043e\u043a\u0430 \u043d\u0435\u0442.
'; else lib.innerHTML=arc.slice().reverse().map(function(a,i){ var msgs=Array.isArray(a.messages)?a.messages:[]; var body=msgs.map(function(m){var role=m.role==="host"?"\u0412\u0415\u0414\u0423\u0429\u0418\u0419":"\u0413\u041e\u0421\u0422\u042c";return '
'+role+'

'+esc(m.text||"")+'

';}).join(""); return '
'+esc(a.date||"")+' \u00b7 '+msgs.length+' MSG'+esc(a.title||"INTERVISTA")+'
'+body+'
'; }).join(""); lib.querySelectorAll(".sa-archive-open").forEach(function(b){b.addEventListener("click",function(){b.parentNode.classList.toggle("expanded");});}); adm.classList.toggle("show",editor); var hf=studio.querySelector(".sa-host-id"), cf=studio.querySelector(".sa-cohost-id"), gf=studio.querySelector(".sa-guest-id"); if(document.activeElement!==hf)hf.value=radioState.hostId||""; if(document.activeElement!==cf)cf.value=radioState.cohostId||""; if(document.activeElement!==gf)gf.value=radioState.guestId||""; var rights=studio.querySelector(".sa-rights"); rights.classList.toggle("show",admin); rights.style.display=admin?"block":"none"; rights.setAttribute("aria-hidden",admin?"false":"true"); var addEditorBtn=studio.querySelector(".sa-add-editor"); var editorInput=studio.querySelector(".sa-editor-id"); if(addEditorBtn){addEditorBtn.style.display=admin?"inline-block":"none";addEditorBtn.disabled=!admin;} if(editorInput){editorInput.style.display=admin?"inline-block":"none";editorInput.disabled=!admin;} var rl=studio.querySelector(".sa-rights-list"); rl.innerHTML=(radioState.editors||[]).map(function(id){return 'USER '+esc(id)+' ';}).join("") || '\u041d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u043d\u044b\u0445 \u0440\u0435\u0434\u0430\u043a\u0442\u043e\u0440\u043e\u0432 \u043f\u043e\u043a\u0430 \u043d\u0435\u0442.'; rl.querySelectorAll("[data-remove]").forEach(function(b){b.addEventListener("click",function(){ if(!isAdmin())return;var rid=String(b.getAttribute("data-remove")||""); mutateRadio(function(r){r.editors=(r.editors||[]).filter(function(x){return String(x)!==rid;});}); });}); comp.classList.toggle("show",!!(host||cohost||invited)); note.textContent=(host||cohost)?"\u0412\u044b \u0432 \u044d\u0444\u0438\u0440\u0435 \u043a\u0430\u043a \u0432\u0435\u0434\u0443\u0449\u0438\u0439":(invited?"\u0412\u044b \u043f\u0440\u0438\u0433\u043b\u0430\u0448\u0451\u043d\u043d\u044b\u0439 \u0433\u043e\u0441\u0442":""); var sc=studio.querySelector(".sa-station-console"); if(sc){ var air=sc.querySelector(".sa-onair-state"), np=sc.querySelector(".sa-nowplaying strong"), ec=sc.querySelector(".sa-editor-console"); air.classList.toggle("live",!!radioState.onAir); air.querySelector("b").textContent=radioState.onAir?"ON AIR":"OFF AIR"; np.textContent=(radioState.nowPlaying&&radioState.nowPlaying.title)||"\u0422\u0438\u0448\u0438\u043d\u0430 \u0432 \u044d\u0444\u0438\u0440\u0435"; ec.style.display=editor?"grid":"none"; var pl=sc.querySelector(".sa-playlist"); pl.innerHTML=(radioState.playlist||[]).map(function(t,i){return '';}).join(""); pl.querySelectorAll("[data-track]").forEach(function(b){b.onclick=function(){ if(!isRadioEditor())return;var ix=parseInt(b.getAttribute("data-track"),10); mutateRadio(function(r){var t=r.playlist[ix];if(t)r.nowPlaying={title:t.title||"",url:t.url||""};}); };}); var aud=sc.querySelector(".sa-audio"), wanted=(radioState.nowPlaying&&radioState.nowPlaying.url)||""; if(aud){ var ast=sc.querySelector(".sa-audio-state"),listen=sc.querySelector(".sa-listen"); if(wanted && aud.getAttribute("data-url")!==wanted){ aud.pause(); aud.removeAttribute("src"); aud.load(); aud.src=wanted; aud.setAttribute("data-url",wanted); aud.load(); if(ast)ast.textContent="LOADING..."; if(listen)listen.textContent="\u25b6 \u041f\u0423\u0421\u041a"; }else if(!wanted && aud.getAttribute("data-url")){ aud.pause();aud.removeAttribute("src");aud.removeAttribute("data-url");aud.load(); if(ast)ast.textContent=""; if(listen)listen.textContent="\u25b6 \u041f\u0423\u0421\u041a"; } } } var bb=studio.querySelector(".sa-breaking-banner"); if(bb){bb.classList.toggle("show",!!(radioState.breakNews&&radioState.breakNews.active));bb.querySelector("strong").textContent=(radioState.breakNews&&radioState.breakNews.text)||"";} studio.querySelectorAll(".sa-reactions [data-react]").forEach(function(b){var k=b.getAttribute("data-react"),uid=myId(),a=(radioState.reactionUsers&&Array.isArray(radioState.reactionUsers[k]))?radioState.reactionUsers[k]:[];b.querySelector("b").textContent=String((radioState.reactions&&radioState.reactions[k])||0);b.classList.toggle("voted",!!uid&&a.indexOf(uid)!==-1);b.title=(!!uid&&a.indexOf(uid)!==-1)?"\u0412\u0430\u0448 \u0433\u043e\u043b\u043e\u0441 \u0443\u0436\u0435 \u0443\u0447\u0442\u0451\u043d":"\u041e\u0442\u0434\u0430\u0442\u044c \u0433\u043e\u043b\u043e\u0441";}); var qbox=studio.querySelector(".sa-audience-box"); if(qbox){ var qq=qbox.querySelector(".sa-question-queue"); qq.style.display=editor?"block":"none"; qq.innerHTML=editor?(radioState.questions||[]).slice(-8).map(function(q){return '
ID '+esc(q.userId||"")+''+esc(q.text||"")+'
';}).join(""):""; } var log=studio.querySelector(".sa-studio-log"); if(!radioState.messages.length){log.innerHTML='
\u0421\u0442\u0443\u0434\u0438\u044f \u0433\u043e\u0442\u043e\u0432\u0430 \u043a \u044d\u0444\u0438\u0440\u0443.
';return;} log.innerHTML=radioState.messages.map(function(m){ var who=String(m.userId||""); var kind=m.speaker || (m.role==="guest"?"guest":(who===String(radioState.cohostId||"")?"cohost":"host")); if(kind==="system")return '
'+esc(m.time||"")+''+esc(m.text||"")+'
'; if(kind==="owner"||kind==="editor")kind=(who===String(radioState.cohostId||""))?"cohost":"host"; var label=kind==="guest"?"\u0413\u041e\u0421\u0422\u042c":(kind==="cohost"?"\u0421\u041e\u0412\u0415\u0414\u0423\u0429\u0418\u0419":"\u0412\u0415\u0414\u0423\u0429\u0418\u0419"); var sig=kind==="guest"?"G":(kind==="cohost"?"CO":"MIC"); return '
'+saRadioAvatarHtml(who,kind)+'
'+label+'ID '+esc(who)+'

'+esc(m.text||"")+'

'; }).join(""); saRadioHydrateAvatars(log); log.scrollTop=log.scrollHeight; } function saRadioRefresh(){ var ae=document.activeElement; if(ae && studio.contains(ae) && /^(INPUT|TEXTAREA|BUTTON)$/.test(ae.tagName))return; if(radioBusy)return; radioBusy=true; apiGet().then(function(all){radioState=normalizeRadio(all[RADIO_FIELD]);renderStudio();}).catch(function(){}).then(function(){radioBusy=false;}); } function mutateRadio(mutator){ if(radioBusy)return new Promise(function(resolve,reject){ setTimeout(function(){mutateRadio(mutator).then(resolve,reject);},180); }); radioBusy=true; return apiGet().then(function(all){ var r=normalizeRadio(all[RADIO_FIELD]);mutator(r);all[RADIO_FIELD]=r; return apiSetFull(all).then(function(){return apiGet();}); }).then(function(all2){radioState=normalizeRadio(all2[RADIO_FIELD]);renderStudio();}).catch(function(e){ var st=studio.querySelector(".sa-save-state");st.textContent="\u041e\u0428\u0418\u0411\u041a\u0410 \u0421\u041e\u0425\u0420\u0410\u041d\u0415\u041d\u0418\u042f"; var er=studio.querySelector(".sa-live-error");er.textContent="LIVE API: "+(e&&e.message?e.message:"ERROR");er.classList.add("show"); }).then(function(){radioBusy=false;}); } studio.querySelector(".sa-set-cast").addEventListener("click",function(){ if(!isRadioEditor())return; var h=String(parseInt(studio.querySelector(".sa-host-id").value,10)||""); var c=String(parseInt(studio.querySelector(".sa-cohost-id").value,10)||""); var g=String(parseInt(studio.querySelector(".sa-guest-id").value,10)||""); var st=studio.querySelector(".sa-save-state"); if(st)st.textContent="SAVING..."; mutateRadio(function(r){r.hostId=h;r.cohostId=c;r.guestId=g;}).then(function(){ if(st)st.textContent="SAVED"; setTimeout(function(){if(st)st.textContent="";},1400); }); }); studio.querySelector(".sa-send").addEventListener("click",function(){ var uid=myId(), host=uid&&uid===String(radioState.hostId||""), cohost=uid&&uid===String(radioState.cohostId||""), invited=uid&&uid===String(radioState.guestId||""); if(!(host||cohost||invited))return; var ta=studio.querySelector(".sa-compose textarea"), txt=(ta.value||"").trim();if(!txt)return; var now=new Date(), hh=String(now.getHours()).padStart(2,"0"), mm=String(now.getMinutes()).padStart(2,"0"); mutateRadio(function(r){r.messages.push({id:String(Date.now())+"_"+uid,userId:uid,role:invited?"guest":"host",speaker:invited?"guest":(cohost?"cohost":"host"),time:hh+":"+mm,text:txt});r.messages=r.messages.slice(-120);}).then(function(){ta.value="";}); }); studio.querySelector(".sa-add-editor").addEventListener("click",function(){ if(!isAdmin())return; var id=String(parseInt(studio.querySelector(".sa-editor-id").value,10)||""); if(!id)return; mutateRadio(function(r){ r.editors=Array.isArray(r.editors)?r.editors.map(String):[]; if(r.editors.indexOf(id)===-1)r.editors.push(id); }).then(function(){studio.querySelector(".sa-editor-id").value="";}); }); studio.querySelector(".sa-jingle").addEventListener("click",function(){ if(!isRadioEditor())return;mutateRadio(function(r){r.messages.push({id:String(Date.now())+"_sys",userId:"",role:"system",speaker:"system",time:new Date().toLocaleTimeString([], {hour:"2-digit",minute:"2-digit"}),text:"101.7 FM // STATION IDENT // RADIO SAN AVELIO"});r.messages=r.messages.slice(-120);}); }); studio.querySelector(".sa-breaking").addEventListener("click",function(){ if(!isRadioEditor())return;var txt=(studio.querySelector(".sa-breaking-text").value||"").trim(); mutateRadio(function(r){var on=!(r.breakNews&&r.breakNews.active);r.breakNews={active:on,text:on?(txt||"BREAKING NEWS"):((r.breakNews&&r.breakNews.text)||"")};}); }); studio.querySelectorAll(".sa-reactions [data-react]").forEach(function(b){b.addEventListener("click",function(){ var k=b.getAttribute("data-react"),uid=myId();if(!uid)return; mutateRadio(function(r){ r.reactions=r.reactions||{signal:0,star:0,heart:0};r.reactionUsers=r.reactionUsers||{signal:[],star:[],heart:[]}; var a=Array.isArray(r.reactionUsers[k])?r.reactionUsers[k]:[]; if(a.indexOf(uid)!==-1)return; a.push(uid);r.reactionUsers[k]=a.slice(-500);r.reactions[k]=(parseInt(r.reactions[k],10)||0)+1; }); });}); studio.querySelector(".sa-add-track").addEventListener("click",function(){ if(!isRadioEditor())return; var title=(studio.querySelector(".sa-track-title").value||"").trim(), url=(studio.querySelector(".sa-track-url").value||"").trim(); if(!url)return; if(!/^https?:\/\//i.test(url)){var st=studio.querySelector(".sa-audio-state");if(st)st.textContent="BAD URL";return;} mutateRadio(function(r){ var track={title:title||"TRACK",url:url}; r.playlist.push(track);r.playlist=r.playlist.slice(-30); r.nowPlaying={title:track.title,url:track.url}; }).then(function(){ studio.querySelector(".sa-track-title").value=""; studio.querySelector(".sa-track-url").value=""; var st=studio.querySelector(".sa-audio-state");if(st)st.textContent="READY"; }); }); studio.querySelector(".sa-toggle-air").addEventListener("click",function(){ if(!isRadioEditor())return;mutateRadio(function(r){r.onAir=!r.onAir;}); }); studio.querySelector(".sa-listen").addEventListener("click",function(){ var a=studio.querySelector(".sa-audio"),st=studio.querySelector(".sa-audio-state"),btn=this; var u=(radioState.nowPlaying&&radioState.nowPlaying.url)||""; if(u && saMediaKind(u)!=="audio"){if(st)st.textContent="EXTERNAL / OPEN LINK";return;} if(!u){if(st)st.textContent="NO TRACK";return;} if(a.getAttribute("data-url")!==u){a.src=u;a.setAttribute("data-url",u);a.load();} if(!a.paused){a.pause();btn.textContent="\u25b6 \u041f\u0423\u0421\u041a";if(st)st.textContent="PAUSED";return;} if(st)st.textContent="CONNECTING..."; a.play().then(function(){btn.textContent="\u2161 \u041f\u0410\u0423\u0417\u0410";if(st)st.textContent="PLAYING";}).catch(function(e){ btn.textContent="\u25b6 \u041f\u0423\u0421\u041a"; if(st)st.textContent="PLAY ERROR "+((e&&e.name)?e.name:"MEDIA"); }); }); (function(){ var a=studio.querySelector(".sa-audio"),st=studio.querySelector(".sa-audio-state"),btn=studio.querySelector(".sa-listen"); if(!a)return; a.addEventListener("canplay",function(){if(st&&a.paused)st.textContent="READY";}); a.addEventListener("playing",function(){if(st)st.textContent="PLAYING";if(btn)btn.textContent="\u2161 \u041f\u0410\u0423\u0417\u0410";}); a.addEventListener("pause",function(){if(st&&a.currentTime>0&&!a.ended)st.textContent="PAUSED";if(btn)btn.textContent="\u25b6 \u041f\u0423\u0421\u041a";}); a.addEventListener("ended",function(){if(st)st.textContent="ENDED";if(btn)btn.textContent="\u25b6 \u041f\u0423\u0421\u041a";}); a.addEventListener("error",function(){ var code=a.error&&a.error.code, msg=code===2?"NETWORK":code===3?"DECODE":code===4?"SOURCE":"MEDIA"; if(st)st.textContent="AUDIO ERROR / "+msg; if(btn)btn.textContent="\u25b6 \u041f\u0423\u0421\u041a"; }); })(); var qsend=studio.querySelector(".sa-question-send"); if(qsend)qsend.addEventListener("click",function(){ var ta=studio.querySelector(".sa-question-text"),txt=(ta.value||"").trim(),uid=myId();if(!txt||!uid)return; mutateRadio(function(r){r.questions.push({id:String(Date.now()),userId:uid,text:txt});r.questions=r.questions.slice(-40);}).then(function(){ta.value="";}); }); studio.querySelector(".sa-library-btn").addEventListener("click",function(){ studio.querySelector(".sa-library").classList.toggle("open"); }); studio.querySelector(".sa-finish").addEventListener("click",function(){ if(!isRadioEditor() || !radioState.messages.length)return; mutateRadio(function(r){ var d=new Date(); r.archive.push({id:String(Date.now()),title:r.title||"\u0413\u043e\u0441\u0442\u044c \u0432\u0435\u0447\u0435\u0440\u043d\u0435\u0433\u043e \u044d\u0444\u0438\u0440\u0430",date:String(d.getDate()).padStart(2,"0")+"."+String(d.getMonth()+1).padStart(2,"0")+"."+d.getFullYear(),messages:r.messages.slice()}); r.archive=r.archive.slice(-50);r.messages=[];r.guestId="";r.hostId="";r.cohostId=""; }); }); saRadioRefresh(); setInterval(function(){if(studio.classList.contains("open"))saRadioRefresh();},3000); } function boot(){ mount(); var tries=0; var timer=setInterval(function(){ mount(); if(++tries>20 || document.querySelector("#sa-radio-mount"))clearInterval(timer); },250); } if(document.readyState==="loading")document.addEventListener("DOMContentLoaded",boot); else boot(); })();