:root{--bg:#070b0e;--panel:#0a1014;--line:rgba(112,151,178,.42);--text:#eef6fb;--muted:#8fa5b4;--accent:#58c9ff;--warn:#f4b942}*{box-sizing:border-box}html{background:var(--bg)}body{margin:0;min-width:320px;color:var(--text);font-family:"Space Mono","Consolas",monospace;background:var(--bg)}.grid-bg{position:fixed;inset:0;pointer-events:none;background-image:linear-gradient(rgba(74,118,148,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(74,118,148,.08) 1px,transparent 1px),linear-gradient(rgba(74,118,148,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(74,118,148,.035) 1px,transparent 1px);background-size:64px 64px,64px 64px,16px 16px,16px 16px}.shell{position:relative;width:min(1280px,calc(100% - 48px));margin:auto;padding:32px 0 24px}.topbar{display:grid;grid-template-columns:180px 1fr 220px;align-items:center;border-bottom:1px solid var(--line);padding-bottom:24px}.brand{font-family:"Michroma",sans-serif;font-size:22px;letter-spacing:.18em;color:#fff;text-decoration:none}.eyebrow{margin:0 0 7px;color:var(--accent);font-size:11px;letter-spacing:.14em}.topbar h1,.intro h2{font-family:"Michroma",sans-serif;font-weight:400;letter-spacing:.06em;margin:0}.topbar h1{font-size:clamp(24px,3vw,42px)}.back{text-align:right;color:var(--accent);font-size:11px;text-decoration:none}.intro{margin:28px 0 20px;border:1px solid var(--line);background:rgba(8,15,20,.9);padding:24px 26px;display:flex;justify-content:space-between;align-items:center;gap:24px}.intro h2{font-size:22px}.intro p:last-child{margin:12px 0 0;color:var(--muted);font-size:12px}.filters{display:flex;gap:8px}.filters button{appearance:none;border:1px solid var(--line);background:transparent;color:var(--muted);font:10px "Space Mono",monospace;letter-spacing:.08em;padding:11px 13px;cursor:pointer}.filters button:hover,.filters button.active{border-color:var(--accent);color:var(--accent);background:rgba(88,201,255,.07)}.events-panel{border:1px solid var(--line);background:rgba(8,15,20,.88)}.panel-head{display:flex;justify-content:space-between;gap:20px;padding:15px 18px;border-bottom:1px solid var(--line);color:var(--accent);font-size:10px;letter-spacing:.11em}.panel-head span:last-child{color:var(--muted)}.events-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.event{display:grid;grid-template-columns:76px 1fr;gap:18px;min-height:150px;padding:21px;border-right:1px solid rgba(112,151,178,.22);border-bottom:1px solid rgba(112,151,178,.22);color:inherit;text-decoration:none}.event:nth-child(2n){border-right:0}.event:hover{background:rgba(88,201,255,.045)}.date{border:1px solid var(--line);height:76px;display:grid;place-content:center;text-align:center}.date strong{font-family:"Michroma",sans-serif;font-size:24px;font-weight:400;color:var(--accent)}.date span{font-size:10px;color:var(--muted);margin-top:4px}.event h3{font-family:"Michroma",sans-serif;font-size:14px;line-height:1.5;font-weight:400;margin:0 0 11px}.event-meta{display:flex;flex-wrap:wrap;gap:7px 14px;color:var(--muted);font-size:10px;line-height:1.5}.event-meta b{font-weight:400;color:#c5d3dc}.event .more{display:block;margin-top:15px;color:var(--accent);font-size:10px}.loading,.empty,.error{grid-column:1/-1;min-height:280px;display:grid;place-items:center;color:var(--muted);font-size:12px;text-align:center;padding:30px}.error{color:#ff7b7b}.source-bar{display:flex;justify-content:space-between;gap:20px;margin-top:18px;border:1px solid var(--line);padding:15px 18px;color:var(--muted);font-size:10px}.source-bar a{color:var(--accent);text-decoration:none}footer{display:flex;justify-content:space-between;color:#718998;font-size:10px;padding-top:24px}@media(max-width:850px){.topbar{grid-template-columns:1fr}.brand{margin-bottom:18px}.back{text-align:left;margin-top:18px}.intro{align-items:flex-start;flex-direction:column}.events-list{grid-template-columns:1fr}.event{border-right:0}.source-bar{align-items:flex-start;flex-direction:column}}@media(max-width:560px){.shell{width:calc(100% - 28px)}.filters{width:100%;display:grid;grid-template-columns:repeat(3,1fr)}.event{grid-template-columns:60px 1fr;padding:16px;gap:13px}.date{height:60px}.date strong{font-size:19px}footer{gap:18px;flex-direction:column}}
