:root{--bg: #07130c;--panel: #0f2117;--line: #1f3a2a;--accent: #4cd07d;--accent-dim: #1f6b3d;--signal: #ffd84a;--text: #eaf5ee;--muted: #86a393;--danger: #ff6b5c;color-scheme:dark}*,*:before,*:after{box-sizing:border-box}html,body{height:100%;margin:0}body{background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.page{display:flex;flex-direction:column;align-items:center;gap:14px;min-height:100dvh;padding:max(16px,env(safe-area-inset-top)) 16px max(16px,env(safe-area-inset-bottom))}.page>h1{font-size:15px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin:6px 0 0}.status{font-size:12px;color:var(--muted);text-align:center;min-height:16px;margin:0}.panel{width:100%;max-width:340px;padding:14px;background:var(--panel);border:1px solid var(--line);border-radius:14px}.panel h2{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin:0 0 10px}.row{display:flex;gap:8px}.row>*{flex:1}.meta{font-size:11px;color:var(--muted);margin:8px 0 0;text-align:center}.meta.left{text-align:left}.desc{white-space:pre-wrap;font-size:14px;line-height:1.45;margin:0 0 10px}.facts{display:grid;grid-template-columns:auto 1fr;gap:6px 12px;margin:0 0 6px;font-size:13px}.facts dt{color:var(--muted)}.facts dd{margin:0;text-align:right;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.photo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.photo-grid .thumb{display:block;width:100%;margin:0;padding:0;border:0;border-radius:8px;background:none;cursor:zoom-in}html:has(dialog[open]){overflow:hidden}.photo-grid img{display:block;width:100%;aspect-ratio:1;object-fit:cover;border-radius:8px}.error{font-size:13px;color:var(--danger);margin:10px 0 0}.badge{display:inline-block;padding:2px 8px;border-radius:20px;font-size:10px;letter-spacing:.05em;text-transform:uppercase}.badge.live{background:var(--accent-dim);color:var(--accent)}.badge.draft{background:#243a2e;color:var(--text)}.badge.ended{background:#2b2440;color:#c7b8ff}.badge.off{background:#3a2020;color:var(--danger)}a{color:var(--accent)}a.button{color:var(--accent);max-width:340px}a.subtle{font-size:12px;color:var(--muted)}label{display:block;font-size:12px;color:var(--muted);margin:10px 0 4px}label:first-child{margin-top:0}input,textarea,select{width:100%;padding:10px;border-radius:8px;border:1px solid var(--line);background:var(--bg);color:var(--text);font:inherit;font-size:16px}select{appearance:none;padding-right:32px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%237a8699' stroke-width='2'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;cursor:pointer}textarea{min-height:90px;resize:vertical;line-height:1.4}input:focus-visible,textarea:focus-visible,select:focus-visible,button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px}input.ng-invalid.ng-touched,textarea.ng-invalid.ng-touched{border-color:var(--danger)}button,.button{display:block;width:100%;text-align:center;text-decoration:none;margin-top:8px;padding:13px;border-radius:10px;border:1px solid var(--accent-dim);background:transparent;color:var(--accent);font:inherit;font-size:14px;font-weight:600;letter-spacing:.03em;cursor:pointer}button:active,.button:active{background:var(--accent-dim)}button.secondary,.button.secondary{border-color:var(--line);color:var(--muted)}button.danger{border-color:#5a2a2a;color:var(--danger)}button:disabled{opacity:.5;cursor:default;background:transparent}
