.hero{position:relative;padding:var(--sp-6) 0 var(--sp-2)}.hero:before{content:"";position:absolute;inset:-48px -24px auto;height:300px;background:var(--hero-glow);pointer-events:none;z-index:0}.hero>*{position:relative;z-index:1}.hero h1{margin:0 0 var(--sp-2);font-family:"FRLogo",var(--font-sans, sans-serif);font-synthesis:none;font-size:2.6rem;line-height:1.25;background:var(--hero-grad);-webkit-background-clip:text;background-clip:text;color:transparent}.hero p{margin:0;color:var(--text-2);max-width:40em}.quick-nav{display:flex;gap:var(--sp-3);margin-top:var(--sp-5);flex-wrap:wrap}.pill{display:inline-flex;align-items:center;gap:7px;min-height:var(--touch);padding:0 var(--sp-5);border-radius:999px;border:1px solid var(--border);color:var(--text);font-weight:600;background:var(--panel);transition:border-color .15s,transform .15s}.pill svg{width:16px;height:16px;flex:none}.pill:hover{text-decoration:none;border-color:var(--accent-dim);transform:translateY(-1px)}.pill-active{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.pill-active:hover{border-color:var(--accent)}.btn{display:inline-flex;align-items:center;min-height:var(--touch);padding:0 var(--sp-5);border-radius:var(--r-md);border:1px solid var(--border);color:var(--text);font-weight:600;background:var(--panel)}.btn:hover{text-decoration:none;border-color:var(--accent-dim)}.btn-primary{background:var(--grad-accent);border:none;color:var(--on-accent);box-shadow:0 6px 20px color-mix(in srgb,var(--accent) 25%,transparent)}.btn-primary:hover{box-shadow:0 8px 26px color-mix(in srgb,var(--accent) 38%,transparent);transform:translateY(-1px)}@media(min-width:820px){.hero{padding-top:var(--sp-6, 48px)}.hero h1{font-size:2.4rem}}.cal-note{color:var(--muted);font-size:var(--fs-xs)}.cal-panel{padding:var(--sp-3)}.cal-tabs{display:flex;gap:var(--sp-1);overflow-x:auto;padding-bottom:var(--sp-2)}.cal-tab{flex:1 0 64px;display:flex;flex-direction:column;align-items:center;gap:2px;padding:var(--sp-2) var(--sp-1);border-radius:var(--r-md);border:1px solid var(--border-soft);background:var(--panel-2);cursor:pointer;color:var(--text-2);min-height:58px}.cal-tab b{font-size:var(--fs-sm)}.cal-tab span{font-size:var(--fs-xs);color:var(--muted)}.cal-tab i{font-style:normal;font-size:var(--fs-xs);color:var(--accent)}.cal-tab.active{border-color:var(--accent-dim);background:color-mix(in srgb,var(--accent) 10%,var(--panel-2))}.cal-tab.today b{color:var(--accent)}.cal-body{display:grid;grid-template-columns:1fr 260px;gap:var(--sp-4)}.cal-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(128px,1fr));gap:var(--sp-3);min-width:0;align-content:start}.cal-empty,.cal-loading{color:var(--muted);font-size:var(--fs-sm);padding:var(--sp-3);text-align:center}.cal-card{display:block;color:inherit;text-decoration:none}.cal-card:hover{text-decoration:none}.cal-cov{position:relative;aspect-ratio:2 / 3;border-radius:var(--r-md);overflow:hidden;background:var(--cov-bg);border:1px solid var(--border-soft);transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease}.cal-card:hover .cal-cov{transform:translateY(-3px);border-color:var(--accent-dim);box-shadow:0 10px 28px color-mix(in srgb,var(--accent) 16%,transparent)}.cal-cov img{width:100%;height:100%;object-fit:cover}.cal-time{position:absolute;left:6px;bottom:6px;background:var(--accent);color:var(--on-accent);border-radius:var(--r-sm);padding:2px 7px;font-size:var(--fs-xs);font-weight:800;font-variant-numeric:tabular-nums}.cal-cd{position:absolute;right:6px;top:6px;background:#070a10d1;border-radius:999px;padding:2px 8px;font-size:var(--fs-xs);font-weight:700}.cal-cd.future{color:var(--accent)}.cal-cd.past{color:var(--muted)}.cal-sc{position:absolute;right:6px;bottom:6px;background:#070a10d1;color:var(--text);border-radius:var(--r-sm);padding:2px 7px;font-size:var(--fs-xs);font-weight:800;font-variant-numeric:tabular-nums}.cal-ti{margin-top:var(--sp-2);font-size:var(--fs-sm);font-weight:600;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.8em}.cal-meta{margin-top:2px;color:var(--muted);font-size:var(--fs-xs)}.intel{border-left:1px solid var(--border-soft);padding-left:var(--sp-4)}.intel h3{margin:0 0 var(--sp-2);font-size:var(--fs-md);color:var(--text)}.intel-sec{margin-bottom:var(--sp-3)}.intel-sec h4{margin:0 0 var(--sp-1);font-size:var(--fs-xs);color:var(--muted);font-weight:600}.intel-row{display:flex;flex-direction:column;gap:1px;padding:var(--sp-1) 0;border-bottom:1px dashed var(--border-soft)}.intel-row:hover{text-decoration:none}.intel-row:hover .intel-t{color:var(--accent)}.intel-t{color:var(--text-2);font-size:var(--fs-xs);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.intel-m{color:var(--muted);font-size:var(--fs-xs)}@media(max-width:900px){.cal-body{grid-template-columns:1fr}.intel{border-left:none;padding-left:0;border-top:1px solid var(--border-soft);padding-top:var(--sp-3)}}@media(max-width:560px){.cal-list{grid-template-columns:repeat(2,1fr)}.cal-tab{flex:1 0 52px}}
