:root{--bg:#23272f;--panel:#163f8f;--panel-2:#1f4fac;--card:#2d3440;--card-2:#343c49;--line:rgba(255,255,255,.1);--text:#f7f9fc;--muted:#cbd4e3;--danger:#d85050;--shadow:0 18px 40px rgba(0,0,0,.28);--radius:22px}*{box-sizing:border-box}body{margin:0;min-height:100vh;font-family:Inter,Arial,sans-serif;background:var(--bg);color:var(--text)}button,input,label,a{font:inherit}[hidden]{display:none!important}.gate-wrap{min-height:100vh;display:grid;place-items:center;padding:24px}.gate-card,.card,.modal{background:var(--card);border:1px solid var(--line);border-radius:24px;padding:18px;box-shadow:var(--shadow)}.gate-card{width:min(430px,100%);background:var(--panel);text-align:center;padding:28px}.gate-card h1{display:none}.gate-card h1{margin:0 0 12px;font-size:clamp(2rem,4vw,2.7rem)}.gate-card p,.card p{color:var(--muted);line-height:1.45}.input{width:100%;border:0;border-radius:16px;background:rgba(255,255,255,.12);color:var(--text);padding:14px 16px;outline:0}.btn{border:0;border-radius:16px;padding:12px 16px;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px}.btn.primary{background:#f4f8ff;color:#123267;font-weight:800}.btn.secondary{background:rgba(255,255,255,.1);color:var(--text)}.btn.danger{background:var(--danger);color:#fff}.app{max-width:1180px;margin:0 auto;padding:20px}.topbar,.actions,.gallery-head,.modal-row{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.topbar{margin-bottom:16px}.actions{justify-content:flex-end}.brand h2{margin:0;font-size:clamp(1.7rem,3vw,2.3rem)}.brand p{margin:6px 0 0;color:var(--muted)}body.admin-mode{--bg:#1f2620;--panel:#32553a;--panel-2:#426f4b;--card:#2a332c;--card-2:#334036;--muted:#cdd8cf}.badge{padding:10px 14px;background:var(--card);border-radius:999px;border:1px solid var(--line);color:var(--muted)}.hero{position:relative;height:min(56vh,650px);min-height:320px;border-radius:28px;overflow:hidden;background:#161b22;border:1px solid var(--line);box-shadow:var(--shadow);margin-bottom:18px}.hero img,.hero video{width:100%;height:100%;object-fit:cover;display:block;cursor:zoom-in}.hero video{pointer-events:none}.hero-empty{width:100%;height:100%;display:grid;place-items:center;color:var(--muted);background:linear-gradient(180deg,#303844,#20262f)}.hero-info{position:absolute;left:0;right:0;bottom:0;display:flex;justify-content:space-between;align-items:end;gap:16px;padding:18px;background:linear-gradient(180deg,transparent,rgba(15,18,24,.86));flex-wrap:wrap}.hero-audio{width:100%;height:100%;display:grid;place-items:center;padding:28px;background:radial-gradient(circle at 50% 20%,rgba(244,248,255,.12),transparent 34%),linear-gradient(135deg,#141923,#24314a 56%,#151a22)}.hero-audio-card{width:min(620px,86%);min-height:240px;border:1px solid rgba(255,255,255,.18);border-radius:28px;padding:28px;background:rgba(255,255,255,.08);box-shadow:0 24px 70px rgba(0,0,0,.34);text-align:center;display:grid;gap:16px;justify-items:center}.audio-message-badge{display:inline-flex;align-items:center;gap:8px;border-radius:999px;padding:9px 14px;background:rgba(244,248,255,.14);border:1px solid rgba(244,248,255,.24);font-size:.82rem;font-weight:950;letter-spacing:.12em;text-transform:uppercase;color:#f7f9fc}.hero-audio-title{font-size:clamp(1.8rem,4vw,3rem);font-weight:950;line-height:1.05}.hero-audio-author{color:var(--muted);font-weight:800}.audio-wave{display:flex;gap:5px;align-items:center;height:46px}.audio-wave span{width:6px;border-radius:999px;background:#f4f8ff;opacity:.9;animation:audioWave 1.15s ease-in-out infinite}.audio-wave span:nth-child(2){animation-delay:.08s}.audio-wave span:nth-child(3){animation-delay:.16s}.audio-wave span:nth-child(4){animation-delay:.24s}.audio-wave span:nth-child(5){animation-delay:.32s}.audio-wave span:nth-child(6){animation-delay:.40s}.audio-wave span:nth-child(7){animation-delay:.48s}@keyframes audioWave{0%,100%{height:12px;opacity:.55}50%{height:44px;opacity:1}}.hero-audio audio{width:min(520px,100%);margin-top:4px}.layout{display:grid;grid-template-columns:minmax(300px,380px) 1fr;gap:18px;align-items:start}.left-column,.right-column{display:grid;gap:18px}.stack{display:grid;gap:14px}.file-input{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:10px}.gallery-controls{margin-top:12px;margin-bottom:16px;padding-top:12px;border-top:1px solid var(--line)}.master-gallery-controls{margin-bottom:18px;background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.02))}.tile,.wall-card{position:relative;overflow:hidden;border-radius:16px;border:1px solid var(--line);background:var(--card-2);cursor:pointer}.tile{aspect-ratio:1/1}.tile img,.tile video{width:100%;height:100%;display:block;object-fit:cover}.tile video{pointer-events:none}.video-badge{position:absolute;left:10px;top:10px;border-radius:999px;background:rgba(0,0,0,.66);padding:6px 9px;font-size:.82rem;font-weight:800;z-index:2}.tile.video-tile:after{content:"▶";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:46px;height:46px;border-radius:999px;background:rgba(0,0,0,.58);display:grid;place-items:center;font-size:1.25rem}.check{position:absolute;top:10px;right:10px;width:28px;height:28px;border-radius:999px;background:rgba(26,31,39,.82);display:grid;place-items:center;z-index:2}.tile-foot{position:absolute;left:0;right:0;bottom:0;padding:8px;background:linear-gradient(180deg,transparent,rgba(17,20,26,.82));font-size:.75rem}.empty{padding:32px;text-align:center;color:var(--muted);border:1px dashed rgba(255,255,255,.14);border-radius:18px}.overlay{position:fixed;inset:0;background:rgba(0,0,0,.76);display:grid;place-items:center;padding:18px;z-index:40}.modal{width:min(1100px,100%);max-height:92vh;overflow:auto}.modal img,.modal video{width:100%;max-height:72vh;object-fit:contain;display:block;border-radius:18px;background:#161b22}.wall-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px;margin-top:16px}.wall-card{padding:16px;transition:transform .15s ease,border-color .15s ease,background .15s ease}.wall-card:hover{transform:translateY(-2px);border-color:rgba(255,255,255,.24);background:rgba(255,255,255,.08)}.wall-card.active{outline:2px solid rgba(244,248,255,.62);background:rgba(255,255,255,.1)}.wall-card h4{font-size:1.05rem;margin:10px 0 6px}.wall-card p{margin:0 0 12px}.admin-panel{margin-bottom:22px}.admin-panel h3{font-size:1.35rem}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}.qrbox{background:#fff;padding:12px;border-radius:14px;width:max-content}.status{min-height:22px;margin-top:10px;color:#eef5ff}.upload-progress{position:relative;height:24px;border-radius:999px;overflow:hidden;background:rgba(255,255,255,.1);border:1px solid var(--line);box-shadow:inset 0 1px 4px rgba(0,0,0,.2)}.upload-progress-bar{height:100%;width:0%;background:linear-gradient(90deg,rgba(244,248,255,.92),rgba(199,224,255,.92));transition:width .15s ease}.upload-progress-label{position:absolute;inset:0;display:grid;place-items:center;color:#10284e;font-weight:900;font-size:.85rem;text-shadow:0 1px 0 rgba(255,255,255,.35)}.file-meta{color:var(--muted);font-size:.92rem}.pill{display:inline-block;padding:5px 8px;border-radius:999px;background:rgba(255,255,255,.1);color:var(--muted);font-size:.82rem}.preview-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:8px;margin-top:12px}.preview-gallery img,.preview-gallery video{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:12px;border:1px solid var(--line)}.preview-hero{width:100%;max-height:58vh;object-fit:contain;border-radius:18px;background:#151a20}.admin-tools{margin-top:10px;padding-top:10px;border-top:1px solid var(--line)}.wall-section-label{margin:0;color:var(--muted)}.message-card-img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:14px;background:#eee}.textarea{min-height:110px;resize:vertical}#audioCarouselCard{margin:18px 0 20px}.record-controls{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.record-timer{display:inline-flex;align-items:center;gap:8px;padding:10px 12px;border-radius:999px;background:rgba(228,80,80,.12);color:#fff;font-weight:800}.audio-carousel{display:flex;align-items:center;justify-content:center;gap:14px;text-align:center}.audio-current{min-width:min(420px,70vw)}.audio-current strong{display:block;font-size:1.05rem}.audio-current span{display:block;color:var(--muted);font-size:.9rem;margin-top:3px}.audio-player{width:min(520px,100%);margin:12px auto 0;display:block}.message-preview{border-radius:18px;overflow:hidden;border:1px solid var(--line);background:#111;margin-top:10px}.message-preview canvas{background:#8b633e}.mic-row{display:grid;gap:8px}.helper-note{font-size:.88rem;color:var(--muted);margin:0}.message-fields{display:grid;gap:12px}.record-dot{width:10px;height:10px;border-radius:99px;background:#e45050;display:inline-block;box-shadow:0 0 0 6px rgba(228,80,80,.16)}.competition-prize{max-width:180px;border-radius:14px;border:1px solid var(--line);display:block;margin-top:10px}.entry-list{display:grid;gap:10px;margin-top:12px}.entry-item{padding:12px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.05)}.switch-btn{border:0;border-radius:999px;padding:10px 18px;font-weight:900;color:#fff;min-width:86px}.switch-btn.on{background:#16833a}.switch-btn.off{background:#b73333}.admin-tabs{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:16px}.admin-tabs .btn.active{outline:2px solid rgba(255,255,255,.45)}.session-grid{display:grid;gap:10px;margin-top:12px}.session-line{display:grid;grid-template-columns:1fr auto auto;gap:10px;align-items:center;margin-top:12px}.session-line.schedule{grid-template-columns:1.4fr 1fr 1fr 1fr auto}.session-line-title{margin:16px 0 6px;color:var(--muted);font-weight:800}@media(max-width:760px){.session-line,.session-line.schedule{grid-template-columns:1fr}}.session-item{border:1px solid var(--line);background:rgba(255,255,255,.05);border-radius:16px;padding:12px}.guest-memory-cta{text-align:center;margin:-4px 0 16px}.media-mini{display:grid;grid-template-columns:repeat(auto-fill,minmax(72px,1fr));gap:8px;margin-top:8px}.media-mini img,.media-mini video{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:10px}.contact-choice{display:grid;gap:8px;margin:12px 0}.contact-choice label{display:flex;gap:8px;align-items:flex-start}.carousel-filter-card{margin:18px 0 22px;padding:16px}.carousel-filter-card h3{margin:0 0 6px}.carousel-filter-card p{margin:0 0 14px;color:var(--muted);line-height:1.45}.carousel-filters{display:flex;justify-content:center;align-items:center;gap:12px;flex-wrap:wrap;margin:0;padding:12px 14px;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.045)}.carousel-filter{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.07);color:var(--text);font-weight:800;cursor:pointer;user-select:none}.carousel-filter input{width:18px;height:18px;accent-color:#f4f8ff}.carousel-filter span{white-space:nowrap}.top-memory-cta .btn{background:#faf7ef;color:#123267;box-shadow:0 8px 22px rgba(93,166,255,.12);border:1px solid rgba(18,50,103,.12)}.wall-card{text-align:center;display:grid;gap:10px;justify-items:center}.wall-card-top,.wall-card-stats{justify-content:center}.settings-card{transition:transform .15s ease,border-color .15s ease}.settings-card.clickable{cursor:pointer}.settings-card.clickable:hover{transform:translateY(-1px);border-color:rgba(255,255,255,.26)}.settings-detail-panel{margin-top:14px;border:1px solid var(--line);border-radius:20px;background:rgba(255,255,255,.045);padding:14px}.prize-thumb{max-width:170px;max-height:120px;object-fit:cover;border-radius:14px;border:1px solid var(--line);display:block;margin-top:10px}.memories-category-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;margin-top:12px}.memories-media-card{border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.055);padding:8px;display:grid;gap:8px}.memories-media-card img,.memories-media-card video{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:12px;background:#151a20}.memories-media-card audio{width:100%}.competition-modal-centered{text-align:center}.competition-modal-centered .actions{justify-content:center!important}.competition-modal-centered .contact-choice label{justify-content:center;text-align:left}.contact-choice span strong{display:inline-block;margin-bottom:8px}@media(max-width:900px){.layout{grid-template-columns:1fr}.hero{height:44vh}}

.logo-img{display:block;object-fit:contain;filter:drop-shadow(0 10px 22px rgba(0,0,0,.28))}.gate-logo{width:min(300px,86%);margin:0 auto 18px}.brand{display:flex;align-items:center;gap:14px}.brand-logo{width:156px;max-width:42vw}.modal-logo{width:170px;max-width:52vw;margin:0 0 14px}.admin-shell{display:grid;gap:18px}.admin-hero-card{background:linear-gradient(135deg,rgba(255,255,255,.09),rgba(255,255,255,.03));border:1px solid var(--line);border-radius:26px;padding:20px;display:flex;justify-content:space-between;align-items:center;gap:18px;flex-wrap:wrap}.admin-hero-card h3{font-size:1.5rem;margin:0 0 8px}.admin-toolbar{display:flex;gap:10px;flex-wrap:wrap}.wall-card .wall-card-top{display:flex;justify-content:space-between;gap:8px;align-items:flex-start}.wall-card .wall-card-stats{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.selected-wall-tabs{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin:0 0 18px;padding:10px;border:1px solid var(--line);border-radius:22px;background:rgba(255,255,255,.045);position:sticky;top:8px;z-index:15;backdrop-filter:blur(10px)}.selected-wall-tabs .btn.active{background:#f4f8ff;color:#123267;font-weight:900}.admin-settings-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px;margin-top:14px}.settings-card{border:1px solid var(--line);background:rgba(255,255,255,.045);border-radius:20px;padding:16px}.settings-card h4{margin:0 0 8px;font-size:1.05rem}.settings-card p{margin:0 0 12px}.switch-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.admin-section-title{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;flex-wrap:wrap}.admin-section-title h3{margin:0 0 6px}.admin-section-title p{margin:0;color:var(--muted)}.modal-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;flex-wrap:wrap}.modal-head-title{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.modal-head-title .modal-logo{margin:0}.topbar{background:rgba(255,255,255,.035);border:1px solid var(--line);border-radius:24px;padding:14px 16px;box-shadow:0 12px 28px rgba(0,0,0,.14)}@media(max-width:640px){.brand{flex-direction:column;align-items:flex-start}.brand-logo{width:132px}.selected-wall-tabs{position:static}.admin-hero-card{align-items:flex-start}.modal-head-title{display:block}.modal-head-title .modal-logo{margin-bottom:10px}}

.topbar{display:grid;grid-template-columns:1fr auto 1fr;align-items:center}.topbar .actions{justify-content:flex-end}.top-memory-cta{display:flex;justify-content:center}.top-memory-cta .btn{white-space:nowrap;box-shadow:0 10px 24px rgba(0,0,0,.18)}.memories-builder-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:14px;align-items:start}.memories-builder-list{display:grid;gap:10px;max-height:360px;overflow:auto;padding-right:4px}.memories-builder-item{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:start;padding:12px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.05)}.memories-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}.video-thumb-wrap{position:relative;width:100%;height:100%}.video-thumb-wrap img{width:100%;height:100%;object-fit:cover}.play-mark{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:46px;height:46px;border-radius:999px;background:rgba(0,0,0,.58);display:grid;place-items:center;font-size:1.25rem;color:#fff;font-weight:900}.hero-play-mark{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:68px;height:68px;border-radius:999px;background:rgba(0,0,0,.58);display:grid;place-items:center;font-size:1.8rem;color:#fff;font-weight:900;pointer-events:none}.hero.video-featured:after{content:"▶";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:68px;height:68px;border-radius:999px;background:rgba(0,0,0,.58);display:grid;place-items:center;font-size:1.8rem;color:#fff;font-weight:900;pointer-events:none}.tile.video-tile:after{display:none}@media(max-width:900px){.topbar{grid-template-columns:1fr}.top-memory-cta{order:3}.memories-builder-grid{grid-template-columns:1fr}.brand{justify-content:center}.topbar .actions{justify-content:center}}

.session-access-card{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(260px,.9fr);gap:16px;align-items:end;margin:14px 0 18px;background:linear-gradient(135deg,rgba(255,255,255,.08),rgba(255,255,255,.035));border-color:rgba(255,255,255,.16)}.session-access-card strong{display:block;font-size:1.1rem;margin-bottom:4px}.session-access-card p{margin:0 0 10px;color:var(--muted);line-height:1.45}.session-send{display:grid;gap:8px}.external-link{border-color:rgba(255,255,255,.22)!important;background:rgba(255,255,255,.08)!important;color:#fff!important;font-weight:800;letter-spacing:.01em;box-shadow:0 0 0 1px rgba(255,255,255,.06),0 10px 24px rgba(0,0,0,.16)}#competitionModalTitle{font-size:1.85rem;letter-spacing:-.02em;margin-bottom:14px!important;background:linear-gradient(90deg,#fff,#ffd7a8,#ff9f9f);-webkit-background-clip:text;background-clip:text;color:transparent}#contactFormHelp{margin-top:12px;line-height:1.55}.dashboard-toolbar{justify-content:flex-start;margin-bottom:16px}.admin-shell{padding:22px}.topbar{grid-template-columns:1fr auto 1fr}.brand{min-width:0}.settings-card.clickable{cursor:pointer}.settings-session-picker{display:grid;gap:10px;margin:12px 0 16px}.settings-session-button{width:100%;text-align:left;justify-content:space-between}.selected-session-pill{display:inline-block;margin-left:8px}.session-line{display:grid;grid-template-columns:minmax(220px,1fr) auto auto;gap:10px;align-items:center;margin-bottom:12px}.session-line.schedule{grid-template-columns:minmax(220px,1fr) minmax(180px,1fr) minmax(180px,1fr) auto}.memories-builder-grid{display:grid;grid-template-columns:1fr;gap:18px}.memories-selection-wide{width:100%}.memories-optins-bottom{border-top:1px solid var(--line);padding-top:14px;margin-top:16px}.button-explain{font-size:.88rem;color:var(--muted);line-height:1.45;margin-top:8px}.settings-detail-panel>h3{margin-top:0}@media(max-width:760px){.session-line,.session-line.schedule{grid-template-columns:1fr}}@media(max-width:760px){.topbar{grid-template-columns:1fr;gap:12px}.topbar .actions,.top-memory-cta{justify-content:flex-start}.session-access-card{grid-template-columns:1fr}}
.top-memory-cta .btn{background:#fffdf5;color:#123267;box-shadow:0 8px 22px rgba(255,255,255,.12)}.session-access-card{background:#e8f6ea;color:#17391e;border-color:rgba(35,95,45,.18);box-shadow:0 10px 26px rgba(0,0,0,.16);display:grid;grid-template-columns:1.2fr .8fr;gap:12px;align-items:center;padding:14px 16px}.session-access-card p{margin:4px 0 8px;color:#33583a;line-height:1.25;font-size:.92rem}.session-access-card .input{background:rgba(255,255,255,.75);color:#17391e}.session-access-card .btn.primary{background:#f9fff9;color:#17391e}.post-close-countdown{background:#fff7dc;color:#4f3800;border-color:rgba(150,105,0,.22);text-align:center;margin:0 0 16px;padding:14px}.post-close-countdown strong{display:block;font-size:1.9rem;margin:4px 0}.post-close-countdown p{margin:4px auto;color:#5d4814;max-width:860px}.closed-center{min-height:55vh;display:grid;place-items:center;text-align:center}.closed-center img{max-width:260px;width:min(70vw,260px);margin-bottom:18px}.closed-center h1{font-size:clamp(2rem,6vw,4rem);margin:0;text-transform:lowercase}.competition-modal-centered h3{text-align:center;width:100%}.competition-modal-centered .modal-row{justify-content:center;text-align:center}.session-policy-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-top:12px}.settings-detail-panel h3{text-align:center}
.admin-session-picker{margin:0 0 18px}.admin-session-picker h3{margin:0 0 6px;text-align:center}.admin-session-picker p{text-align:center;margin:0 0 14px}.admin-session-card{border:1px solid var(--line);background:rgba(255,255,255,.05);border-radius:16px;padding:14px;display:grid;gap:8px}.admin-session-card .actions{justify-content:center}.admin-session-back{margin:0 0 14px}.guest-contact-card{margin:0 0 14px;text-align:center}.guest-contact-card .guest-contact-inner{max-width:760px;margin:0 auto}.guest-contact-card .modal-row{justify-content:center;text-align:center}.guest-contact-card .actions{justify-content:center!important}.guest-contact-card h3{text-align:center;width:100%}.guest-contact-card .contact-choice label{justify-content:center;text-align:left}.guest-contact-card #skipCompetitionBtn{display:none!important}.guest-contact-success{background:#e2f6e6;color:#163d20;border:1px solid rgba(22,131,58,.28);border-radius:16px;padding:14px;font-weight:900;text-align:center}.session-access-card{background:#c7e4ca!important;color:#17391e;border-color:rgba(35,95,45,.28);box-shadow:0 10px 24px rgba(0,0,0,.13);display:grid;grid-template-columns:1.2fr .8fr;gap:12px;align-items:center;padding:12px 14px}.session-access-card p{margin:3px 0 7px;color:#315738;line-height:1.2;font-size:.9rem}.session-access-card strong{font-size:1rem}.session-access-card .input{background:rgba(255,255,255,.78);color:#17391e}.session-access-card .btn.primary{background:#f8fff8;color:#17391e}@media(max-width:760px){.session-access-card{grid-template-columns:1fr}}
.session-line.schedule{align-items:flex-end}.schedule-field-group{display:flex;flex-direction:column;gap:6px;min-width:140px}
.wall-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:18px}.wall-card{position:relative;text-align:left;justify-items:stretch;gap:14px;padding:0;border-radius:24px;background:linear-gradient(145deg,rgba(255,255,255,.105),rgba(255,255,255,.035));box-shadow:0 18px 42px rgba(0,0,0,.22);border:1px solid rgba(255,255,255,.14)}.wall-card:before{content:"";position:absolute;inset:0 0 auto;height:6px;background:linear-gradient(90deg,rgba(250,247,239,.95),rgba(126,203,142,.75),rgba(255,255,255,.18));opacity:.9}.wall-card:hover{transform:translateY(-3px);border-color:rgba(255,255,255,.28);background:linear-gradient(145deg,rgba(255,255,255,.14),rgba(255,255,255,.055))}.wall-card.active{outline:2px solid rgba(250,247,239,.75)}.wall-card-inner{display:grid;gap:14px;padding:18px}.wall-card-header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.wall-card-title{display:grid;gap:6px;min-width:0}.wall-card h4{margin:0;font-size:1.22rem;line-height:1.15}.wall-card-date{color:var(--muted);font-size:.9rem}.wall-card-status{white-space:nowrap;font-weight:900}.wall-card-status.live{background:rgba(71,184,105,.18);color:#dfffe6;border-color:rgba(71,184,105,.35)}.wall-card-status.idle{background:rgba(255,255,255,.08)}.wall-card-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.wall-card-stat{display:grid;gap:3px;padding:12px;border-radius:16px;background:rgba(0,0,0,.12);border:1px solid rgba(255,255,255,.09);text-align:left}.wall-card-stat strong{font-size:1.15rem}.wall-card-stat span{font-size:.78rem;color:var(--muted);font-weight:800;text-transform:uppercase;letter-spacing:.04em}.wall-card-flags{display:flex;gap:8px;flex-wrap:wrap}.wall-card .actions{justify-content:flex-start;padding-top:4px}.wall-card .actions .btn{border-radius:12px;padding:10px 12px}.session-item .actions .btn.danger[data-delete-session]{background:#9f2d2d}.session-item .actions .btn.danger[data-delete-session]:hover{filter:brightness(1.08)}

/* LiveWall 1.47 polish/performance pass */
:root{--bg:#0b1020;--panel:#111a33;--panel-2:#17244a;--card:rgba(15,23,42,.86);--card-2:rgba(30,41,59,.72);--line:rgba(148,163,184,.22);--text:#f8fafc;--muted:#aebbd0;--accent:#7dd3fc;--accent-2:#f0abfc;--warm:#f8e7c4;--shadow:0 24px 70px rgba(0,0,0,.36);--radius:24px}body{background:radial-gradient(circle at 18% -8%,rgba(125,211,252,.22),transparent 30%),radial-gradient(circle at 82% 0%,rgba(240,171,252,.16),transparent 32%),linear-gradient(180deg,#080d1a,#101827 46%,#080d1a);letter-spacing:.01em}.app{max-width:1240px;padding:24px}.topbar{padding:18px 20px;border:1px solid var(--line);border-radius:28px;background:linear-gradient(135deg,rgba(15,23,42,.82),rgba(30,41,59,.48));backdrop-filter:blur(14px);box-shadow:var(--shadow)}.brand h2{font-weight:950;letter-spacing:-.04em}.brand p{color:#c7d2e4}.card,.modal,.gate-card{background:linear-gradient(180deg,rgba(15,23,42,.9),rgba(15,23,42,.72));border:1px solid var(--line);box-shadow:var(--shadow);backdrop-filter:blur(12px)}.gate-card{background:linear-gradient(145deg,rgba(14,30,62,.94),rgba(42,24,66,.88));padding:32px}.btn{border:1px solid rgba(255,255,255,.11);transition:transform .16s ease,box-shadow .16s ease,background .16s ease}.btn:hover{transform:translateY(-1px);box-shadow:0 14px 28px rgba(0,0,0,.18)}.btn.primary{background:linear-gradient(135deg,#f8fafc,#dbeafe);color:#0f254f}.btn.secondary{background:rgba(255,255,255,.075);color:#edf4ff}.hero{border-radius:32px;background:#070b14;min-height:360px;box-shadow:0 30px 90px rgba(0,0,0,.42);isolation:isolate}.hero:before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(180deg,rgba(255,255,255,.08),transparent 28%,rgba(0,0,0,.35))}.hero img,.hero video{transition:opacity .45s ease,transform .7s ease;will-change:opacity,transform}.hero.is-swapping img,.hero.is-swapping video{opacity:.14;transform:scale(1.015)}.hero-info{z-index:2;padding:22px;background:linear-gradient(180deg,transparent,rgba(2,6,23,.9));}.hero-info h3{margin:0 0 6px;font-size:clamp(1.45rem,2.6vw,2.5rem);letter-spacing:-.03em}.layout{grid-template-columns:minmax(300px,400px) 1fr}.gallery{grid-template-columns:repeat(auto-fill,minmax(132px,1fr));gap:12px}.tile{border-radius:20px;background:rgba(15,23,42,.72);box-shadow:0 12px 32px rgba(0,0,0,.22);transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease;content-visibility:auto;contain-intrinsic-size:150px}.tile:hover{transform:translateY(-3px);border-color:rgba(125,211,252,.5);box-shadow:0 20px 42px rgba(0,0,0,.3)}.tile img,.tile video{background:#070b14}.tile-foot{font-size:.76rem;padding:28px 9px 9px;background:linear-gradient(180deg,transparent,rgba(2,6,23,.92));}.check{background:rgba(2,6,23,.78);backdrop-filter:blur(8px)}.badge,.pill{border:1px solid var(--line);background:rgba(255,255,255,.07)}.wall-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px}.wall-card{border-radius:22px;background:linear-gradient(180deg,rgba(30,41,59,.75),rgba(15,23,42,.78));box-shadow:0 18px 38px rgba(0,0,0,.24)}.wall-card:hover{transform:translateY(-4px);border-color:rgba(125,211,252,.42)}.input{background:rgba(15,23,42,.72);border:1px solid rgba(148,163,184,.28);}.input:focus{border-color:rgba(125,211,252,.65);box-shadow:0 0 0 4px rgba(125,211,252,.12)}.empty{background:rgba(255,255,255,.035);border-color:rgba(148,163,184,.25)}.load-more-wrap{grid-column:1/-1;text-align:center;padding:10px 0 2px}.load-more-wrap .btn{min-width:180px}.preview-gallery img,.preview-gallery video,.media-mini img,.media-mini video{content-visibility:auto}.admin-mode{--bg:#07150f;--panel:#10281c;--panel-2:#163624;--card:rgba(12,28,20,.88);--card-2:rgba(22,43,31,.74)}@media(max-width:760px){.app{padding:14px}.layout{grid-template-columns:1fr}.topbar{border-radius:22px}.hero{min-height:280px;border-radius:24px}.gallery{grid-template-columns:repeat(auto-fill,minmax(104px,1fr))}.card{border-radius:20px}}


/* LiveWall 1.49 mobile-first audience polish */
:root{--tap:48px}
html{scroll-behavior:smooth}
.btn{min-height:var(--tap);touch-action:manipulation;-webkit-tap-highlight-color:transparent}
.hero{isolation:isolate}
.hero-audio{overflow:hidden;min-width:0}
.hero-audio-card{max-width:calc(100% - 28px);max-height:calc(100% - 28px);min-width:0;overflow:hidden;padding:clamp(16px,4vw,28px);align-content:center}
.hero-audio-title,.hero-audio-author,.audio-message-badge{max-width:100%;overflow-wrap:anywhere;word-break:break-word}
.hero-audio-title{font-size:clamp(1.35rem,7vw,3rem)}
.hero-audio audio{max-width:100%}
.audio-wave{max-width:100%;overflow:hidden;justify-content:center}
.mobile-nav{display:none}
.upload-action-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.upload-action-grid .btn{width:100%;font-weight:900}
.quick-upload-row{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:12px}
.quick-upload-row .btn{padding-inline:10px;text-align:center;font-size:.92rem;line-height:1.1}
.gallery,.media-mini{content-visibility:auto;contain-intrinsic-size:520px}
.tile{content-visibility:auto;contain-intrinsic-size:160px}
@media(max-width:760px){
 body{padding-bottom:78px}
 .app{padding:12px;max-width:100%}
 .topbar{border-radius:18px;padding:12px;gap:10px;margin-bottom:12px}
 .brand{align-items:center!important;text-align:center}.brand-logo{width:118px!important;max-width:56vw}
 .topbar .actions{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:8px}.topbar .actions>*{width:100%;justify-content:center}.badge{padding:10px 8px;text-align:center}
 .hero{height:auto;min-height:0;aspect-ratio:4/5;border-radius:22px;margin-bottom:12px}
 .hero img,.hero video,.hero-audio{position:absolute;inset:0;width:100%;height:100%}
 .hero-info{padding:12px;gap:10px;align-items:center}.hero-info h3{font-size:1rem;margin:0}.hero-info p{font-size:.78rem;line-height:1.25;margin:3px 0 0}.hero-info .actions{gap:8px}.hero-info .btn{min-height:40px;padding:9px 10px;font-size:.86rem}
 .carousel-filter-card{margin:12px 0;padding:12px}.carousel-filters{gap:8px;padding:9px}.carousel-filter{padding:9px 10px;font-size:.86rem}.carousel-filter input{width:20px;height:20px}
 .layout{gap:12px}.left-column,.right-column{gap:12px}.card{border-radius:20px;padding:14px}.card h3{font-size:1.08rem;margin-top:0}.card p{font-size:.93rem}
 .upload-card .stack{gap:10px}.upload-action-grid{grid-template-columns:1fr}.quick-upload-row{grid-template-columns:1fr}.quick-upload-row .btn{justify-content:center;font-size:1rem}
 .input{min-height:48px;font-size:16px}.textarea{min-height:132px}
 .record-controls,.actions{gap:8px}.record-controls .btn,.actions .btn{flex:1 1 140px}
 .gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.tile{border-radius:14px}.tile-foot{font-size:.7rem;padding:7px}.check{width:32px;height:32px}.check input{width:18px;height:18px}
 .wall-grid{grid-template-columns:1fr}.preview-gallery{grid-template-columns:repeat(3,1fr)}
 .modal{max-height:92dvh;border-radius:20px;padding:12px}.modal-row{align-items:center}.modal img,.modal video{max-height:58dvh}
 .hero-audio-card{width:calc(100% - 24px);max-width:calc(100% - 24px);min-height:0;gap:10px;border-radius:22px;padding:14px}.audio-message-badge{font-size:.68rem;letter-spacing:.08em;padding:7px 10px}.audio-wave{height:34px}.audio-wave span{width:5px}.hero-audio-author{font-size:.9rem}.hero-audio audio{height:38px}.hero-audio-title{line-height:1.05;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
 .mobile-nav{position:fixed;left:10px;right:10px;bottom:10px;z-index:60;display:grid;grid-template-columns:repeat(4,1fr);gap:7px;padding:8px;border:1px solid rgba(255,255,255,.16);border-radius:20px;background:rgba(23,29,38,.88);backdrop-filter:blur(16px);box-shadow:0 18px 42px rgba(0,0,0,.38)}
 .mobile-nav a{min-height:46px;display:grid;place-items:center;border-radius:14px;background:rgba(255,255,255,.08);color:#fff;text-decoration:none;font-weight:900;font-size:.78rem;line-height:1.05;text-align:center}
}
@media(max-width:420px){.hero{aspect-ratio:3/4}.gallery{grid-template-columns:1fr 1fr}.hero-info{display:grid}.hero-info .actions{justify-content:stretch}.hero-info .btn{width:100%}.hero-audio-title{font-size:clamp(1.15rem,8vw,1.65rem)}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.001ms!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}
\n\n/* LiveWall 1.63 refined design system */
:root{
  --bg:#0b1220;
  --panel:#111b2c;
  --panel-2:#162238;
  --card:#111a2a;
  --card-2:#172235;
  --line:rgba(148,163,184,.20);
  --line-strong:rgba(148,163,184,.34);
  --text:#f4f7fb;
  --muted:#a8b3c5;
  --accent:#4d86f7;
  --accent-soft:rgba(77,134,247,.14);
  --danger:#d95757;
  --shadow:0 14px 34px rgba(2,8,23,.22);
  --radius:18px;
}
body{background:linear-gradient(180deg,#0b1220 0%,#0a111d 100%);letter-spacing:-.005em}
body.admin-mode{--bg:#0b1220;--panel:#111b2c;--panel-2:#162238;--card:#111a2a;--card-2:#172235;--muted:#a8b3c5}
.app{max-width:1240px;padding:28px 24px 72px}
.topbar{min-height:88px;margin-bottom:20px;padding:18px 20px;border:1px solid var(--line);border-radius:22px;background:rgba(17,26,42,.82);box-shadow:0 8px 28px rgba(2,8,23,.16);backdrop-filter:blur(14px)}
.logo-img{filter:none}.brand-logo{width:220px!important;max-width:44vw}.gate-logo{width:min(340px,88%)}
.card,.gate-card,.modal{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}
.gate-card{background:#111a2a;padding:32px}.gate-card p{max-width:34rem;margin-left:auto;margin-right:auto}
.btn{min-height:44px;border:1px solid transparent;border-radius:12px;padding:10px 15px;font-weight:700;transition:background .15s ease,border-color .15s ease,transform .15s ease,box-shadow .15s ease}
.btn:hover{transform:translateY(-1px)}.btn:active{transform:translateY(0)}
.btn.primary{background:#eef4ff;color:#16315f;border-color:#eef4ff;box-shadow:none}.btn.primary:hover{background:#fff}
.btn.secondary{background:rgba(255,255,255,.045);color:var(--text);border-color:var(--line)}.btn.secondary:hover{background:rgba(255,255,255,.075);border-color:var(--line-strong)}
.btn.danger{background:rgba(217,87,87,.12);color:#ffb7b7;border-color:rgba(217,87,87,.34)}.btn.danger:hover{background:rgba(217,87,87,.20)}
.badge,.pill{background:rgba(255,255,255,.045);border:1px solid var(--line);color:var(--muted)}
.input{min-height:46px;border:1px solid var(--line);border-radius:12px;background:#0d1626;color:var(--text);padding:11px 13px}.input:focus{border-color:rgba(77,134,247,.72);box-shadow:0 0 0 3px rgba(77,134,247,.12)}
.layout{grid-template-columns:minmax(300px,360px) minmax(0,1fr);gap:20px}.left-column,.right-column{gap:20px}
.card{padding:20px}.card h3,.admin-panel h3{letter-spacing:-.02em}.card p{line-height:1.55}
.wall-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}.wall-card{border-radius:16px;padding:18px;background:#141f31;box-shadow:none}.wall-card:hover{transform:translateY(-1px);border-color:var(--line-strong);background:#172337}.wall-card.active{outline:none;border-color:rgba(77,134,247,.72);box-shadow:0 0 0 3px rgba(77,134,247,.10)}
.admin-shell{padding:20px;min-height:180px}.admin-tabs,.selected-wall-tabs{gap:8px}.admin-settings-grid{gap:14px}.settings-card{background:#141f31;border:1px solid var(--line);border-radius:16px}.settings-card:hover{border-color:var(--line-strong)}
.switch-btn{border:1px solid var(--line);min-width:74px}.switch-btn.on{background:#1f7a49}.switch-btn.off{background:#293446;color:#c7d0df}
.hero{border-radius:20px;box-shadow:var(--shadow);border-color:var(--line);background:#0d1626}.hero-empty{background:#101a2a}
.gallery{gap:12px}.tile{border-radius:14px;background:#141f31}.tile:hover{border-color:var(--line-strong)}
.gallery-controls{padding-top:14px}.master-gallery-controls{background:var(--card)}
.empty{border-color:var(--line);background:rgba(255,255,255,.015)}
.overlay{background:rgba(3,8,18,.80);backdrop-filter:blur(8px)}.modal{border-radius:20px}
.qrbox{border-radius:12px}
.status{color:#dce8fa}.helper-note,.file-meta{line-height:1.45}
.admin-section-title{padding-bottom:4px}.session-line,.entry-item{background:#141f31;border-color:var(--line)}
.mobile-nav{background:rgba(11,18,32,.94)!important;border-color:var(--line)!important;box-shadow:0 12px 30px rgba(0,0,0,.28)!important}.mobile-nav a{background:rgba(255,255,255,.045)!important}
@media(max-width:760px){.app{padding:14px 12px 84px}.topbar{padding:14px;border-radius:18px;align-items:flex-start}.brand-logo{width:174px!important;max-width:62vw}.actions{width:100%;justify-content:flex-start}.actions .btn{flex:1 1 auto}.layout{grid-template-columns:1fr}.card{padding:16px}.wall-grid{grid-template-columns:1fr}}

/* LiveWall 1.65 visual refinement + instant admin wall navigation */
:root{
  --bg:#09111f;
  --panel:#0f1a2d;
  --panel-2:#142238;
  --card:#101b2d;
  --card-2:#142238;
  --line:rgba(157,174,199,.18);
  --line-strong:rgba(157,174,199,.30);
  --text:#f5f7fb;
  --muted:#b2bdce;
  --accent:#5b91f5;
  --accent-soft:rgba(91,145,245,.13);
  --danger:#ef5358;
  --shadow:0 16px 42px rgba(1,8,20,.20);
  --radius:20px;
}
html{background:#09111f}
body{background:radial-gradient(900px 420px at 12% -8%,rgba(65,144,178,.15),transparent 52%),radial-gradient(880px 420px at 88% -8%,rgba(128,75,148,.13),transparent 54%),linear-gradient(180deg,#09111f 0%,#0a1220 44%,#08101c 100%);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;letter-spacing:-.01em}
body.admin-mode{--bg:#09111f;--panel:#0f1a2d;--panel-2:#142238;--card:#101b2d;--card-2:#142238;--muted:#b2bdce}
.app{max-width:1480px;padding:22px 24px 76px}
.topbar{min-height:104px;margin-bottom:28px;padding:18px 24px;border-radius:24px;background:rgba(14,25,43,.78);border-color:rgba(157,174,199,.22);box-shadow:0 10px 32px rgba(1,8,20,.17);gap:24px}
.brand{display:flex;align-items:center;flex:1 1 260px}.brand-logo{width:210px!important;max-width:38vw}
.topbar>.actions{flex:1 1 auto;justify-content:center;gap:12px;flex-wrap:nowrap}
.topbar .btn,.topbar .badge{height:50px;min-height:50px;border-radius:14px;padding:0 20px;white-space:nowrap;font-size:1rem;font-weight:700}
.topbar .badge{display:inline-flex;align-items:center;justify-content:center;background:rgba(255,255,255,.045);border:1px solid var(--line);color:var(--text);line-height:1}
.topbar .btn.primary{padding-inline:24px}
.card,.gate-card,.modal{border-color:var(--line);box-shadow:var(--shadow)}
.card{padding:24px;border-radius:20px;background:linear-gradient(180deg,rgba(16,27,45,.97),rgba(14,24,40,.97))}
.admin-shell{padding:24px;min-height:190px;border-radius:22px}.admin-shell>.wall-grid{margin-top:0}
.wall-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:18px}
.wall-card{padding:0;border-radius:20px;background:linear-gradient(180deg,#172338,#121d2f);border-color:var(--line);box-shadow:0 8px 24px rgba(2,8,23,.10)}
.wall-card:before{height:3px;background:linear-gradient(90deg,rgba(245,247,251,.78),rgba(91,145,245,.52),transparent 82%)}
.wall-card:hover{transform:translateY(-1px);background:linear-gradient(180deg,#19263c,#142033);border-color:var(--line-strong);box-shadow:0 12px 28px rgba(2,8,23,.16)}
.wall-card-inner{padding:20px;gap:18px}.wall-card-header{align-items:center}.wall-card h4{font-size:1.14rem;letter-spacing:-.02em}.wall-card-date{font-size:.88rem}
.wall-card-stats{gap:10px}.wall-card-stat{padding:13px 14px;border-radius:14px;background:rgba(4,11,23,.22)}
.wall-card-flags{gap:7px}.pill{padding:5px 9px;font-size:.78rem;border-radius:999px}
.wall-card .actions{gap:8px;padding-top:2px}.wall-card .actions .btn{min-height:40px;padding:9px 11px;border-radius:11px;font-size:.9rem}
.selected-wall-tabs{margin:0 0 14px;display:flex;justify-content:flex-start}.selected-wall-tabs .btn{min-width:108px}
.admin-session-picker{padding:26px}.admin-session-picker>h3{font-size:1.25rem;margin:0 0 5px}.admin-session-picker>p{max-width:760px;text-align:left;margin:0 0 18px}
.session-grid{gap:12px;margin-top:0}.admin-session-card{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:7px 18px;padding:17px 18px;border-radius:16px;background:#142033;border-color:var(--line)}
.admin-session-card>div:first-child{font-size:1rem}.admin-session-card>.file-meta{grid-column:1/2}.admin-session-card>.actions{grid-column:2/3;grid-row:1/3;align-self:center}.admin-session-card .btn{min-height:42px;border-radius:11px}
.admin-section-title{align-items:center;margin-bottom:16px}.admin-section-title h3{margin-bottom:4px}.admin-settings-grid{gap:12px}.settings-card{padding:18px;border-radius:16px;background:#142033}.settings-card h4{margin:0 0 5px}
.session-line,.entry-item{border-radius:15px;background:#142033}.session-line{padding:15px 16px;gap:12px}.entry-item{padding:14px 16px}
.btn{border-radius:12px;font-weight:700}.btn.primary{background:#edf4ff;color:#15305c}.btn.secondary{background:rgba(255,255,255,.045)}
.btn.danger{background:rgba(239,83,88,.10);color:#ff777b;border-color:rgba(239,83,88,.34)}
.input{border-radius:11px;background:#0b1525}
.layout{grid-template-columns:minmax(300px,360px) minmax(0,1fr);gap:22px}.left-column,.right-column{gap:18px}
.gallery{gap:10px}.tile{border-radius:13px}
.helper-note,.file-meta{color:var(--muted)}
@media(max-width:900px){.topbar{align-items:center}.topbar>.actions{flex-wrap:wrap;justify-content:flex-end}.topbar .btn,.topbar .badge{height:46px;min-height:46px}.admin-session-card{grid-template-columns:1fr}.admin-session-card>.file-meta,.admin-session-card>.actions{grid-column:1;grid-row:auto}.admin-session-card>.actions{justify-content:flex-start}}
@media(max-width:760px){.app{padding:12px 12px 84px}.topbar{min-height:0;padding:14px;border-radius:18px;gap:12px}.brand{justify-content:center;flex-basis:100%}.brand-logo{width:164px!important;max-width:64vw}.topbar>.actions{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:8px}.topbar .btn,.topbar .badge{width:100%;height:46px;min-height:46px;padding:0 10px;border-radius:12px}.card,.admin-shell,.admin-session-picker{padding:16px}.wall-grid{grid-template-columns:1fr}.wall-card-inner{padding:17px}.admin-session-picker>p{text-align:left}.layout{grid-template-columns:1fr;gap:14px}}
