:root{color-scheme:light dark;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;line-height:1.5}body{margin:0;background:Canvas;color:CanvasText}.shell{max-width:34rem;margin:0 auto;padding:3rem 1rem}h1{font-size:1.5rem;margin:0 0 .5rem}.muted{opacity:.7}code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.9em}.button{display:inline-block;padding:.55rem 1.1rem;border-radius:6px;background:CanvasText;color:Canvas;text-decoration:none;font-weight:600}.button:hover{opacity:.85}.card{border:1px solid color-mix(in srgb,CanvasText 18%,transparent);border-radius:10px;padding:1rem 1.15rem;margin:1.5rem 0}.card h2{font-size:1rem;margin:0 0 .75rem}.card label{display:block;margin-bottom:.75rem;font-size:.85rem;opacity:.8}.card input{display:block;width:100%;box-sizing:border-box;margin-top:.25rem;padding:.5rem .6rem;font:inherit;color:CanvasText;background:Canvas;border:1px solid color-mix(in srgb,CanvasText 28%,transparent);border-radius:6px}.card button{font:inherit;cursor:pointer;border:none}.error{color:#d33}.day-row{display:flex;gap:.75rem;align-items:flex-start;padding:.5rem 0;border-top:1px solid color-mix(in srgb,CanvasText 10%,transparent)}.day-name{flex:0 0 8rem;font-size:.85rem;font-weight:600;padding-top:.35rem}.day-blocks{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center;flex:1}.block{display:inline-flex;align-items:center;gap:.3rem}.block input{width:auto;margin-top:0;padding:.3rem .4rem}.block button{background:none;color:inherit;opacity:.6;font-size:1.1rem;padding:0 .3rem}.link{background:none;color:inherit;text-decoration:underline;opacity:.75;font-size:.85rem;padding:0}.slot{padding:.4rem .7rem;border-radius:6px;border:1px solid color-mix(in srgb,CanvasText 28%,transparent);background:Canvas;color:CanvasText;font:inherit;cursor:pointer}.slot-on{background:CanvasText;color:Canvas;font-weight:600}.choice{display:block;margin-bottom:.4rem;font-size:.95rem;opacity:1}@media(max-width:30rem){.day-row{flex-direction:column;gap:.3rem}.day-name{flex:none;padding-top:0}}.shell-wide{max-width:68rem}.stage{margin:1rem 0}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(15rem,1fr));gap:.6rem}.tile{position:relative;aspect-ratio:4 / 3;background:color-mix(in srgb,CanvasText 10%,Canvas);border-radius:10px;overflow:hidden;border:2px solid transparent}.tile-speaking{border-color:color-mix(in srgb,CanvasText 45%,transparent)}.tile video{width:100%;height:100%;object-fit:cover;display:block}.tile-avatar{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:2rem;font-weight:700;opacity:.55}.tile-label{position:absolute;left:.5rem;bottom:.5rem;padding:.15rem .45rem;border-radius:5px;font-size:.75rem;background:color-mix(in srgb,Canvas 70%,transparent)}.controls{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.75rem}.ctrl{font:inherit;padding:.45rem .8rem;border-radius:6px;border:1px solid color-mix(in srgb,CanvasText 28%,transparent);background:Canvas;color:CanvasText;cursor:pointer}.ctrl-danger{border-color:#d33;color:#d33}.queue-row{display:flex;justify-content:space-between;align-items:center;gap:.5rem;padding:.4rem 0;border-top:1px solid color-mix(in srgb,CanvasText 10%,transparent)}.queue-row button{margin-left:.3rem}.joinlink{display:block;padding:.6rem .7rem;background:color-mix(in srgb,CanvasText 7%,Canvas);border-radius:6px;word-break:break-all;font-size:.85rem}a.ctrl{text-decoration:none;display:inline-block}.booking-row{display:flex;justify-content:space-between;align-items:flex-start;gap:.75rem;padding:.7rem 0;border-top:1px solid color-mix(in srgb,CanvasText 10%,transparent)}.badge-line{margin-top:.3rem;font-size:.8rem}.ok{color:#2a7;font-weight:600}.warn{color:#b80;font-weight:600}.recover{margin-top:.5rem;padding:.6rem;border-radius:6px;border:1px solid #d33}.recover .joinlink{margin-bottom:.4rem}.bk{max-width:44rem;margin:0 auto;padding:2.5rem 1rem 4rem}.bk-head{margin-bottom:1.25rem}.bk-org{margin:0 0 .15rem;font-size:.8rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;opacity:.6}.bk-head h1{font-size:1.6rem;margin:0 0 .35rem;letter-spacing:-.01em}.bk-meta{margin:.4rem 0 0;font-size:.9rem;opacity:.75}.bk-card{border:1px solid color-mix(in srgb,CanvasText 14%,transparent);border-radius:12px;padding:1.1rem 1.2rem;margin-bottom:1rem;background:Canvas}.bk-types{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.bk-type{display:flex;flex-direction:column;gap:.1rem;align-items:flex-start;padding:.6rem .9rem;border-radius:9px;cursor:pointer;font:inherit;background:Canvas;color:CanvasText;border:1px solid color-mix(in srgb,CanvasText 18%,transparent)}.bk-type span{font-size:.78rem}.bk-type-on{border-color:CanvasText;box-shadow:inset 0 0 0 1px CanvasText}.bk-split{display:grid;grid-template-columns:19rem 1fr;gap:1.5rem;align-items:start}.bk-nav{display:flex;align-items:center;justify-content:space-between;margin-bottom:.7rem}.bk-nav span{font-size:.95rem;font-weight:600}.bk-nav button{font:inherit;font-size:1.2rem;line-height:1;cursor:pointer;background:none;border:none;color:CanvasText;opacity:.65;padding:.25rem .55rem;border-radius:6px}.bk-nav button:hover{opacity:1;background:color-mix(in srgb,CanvasText 8%,transparent)}.bk-dow,.bk-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.bk-dow span{text-align:center;font-size:.68rem;font-weight:600;opacity:.5;text-transform:uppercase;letter-spacing:.05em;padding-bottom:.3rem}.bk-day{font:inherit;font-size:.85rem;aspect-ratio:1;min-height:2.2rem;border:none;border-radius:8px;cursor:pointer;background:transparent;color:CanvasText}.bk-day:disabled{opacity:.22;cursor:default}.bk-day:not(:disabled):hover{background:color-mix(in srgb,CanvasText 10%,transparent)}.bk-day-today{font-weight:700;text-decoration:underline;text-underline-offset:3px}.bk-day.bk-day-on,.bk-day.bk-day-on:not(:disabled):hover{background:CanvasText;color:Canvas;font-weight:700}.bk-times{display:flex;flex-direction:column;align-self:stretch;min-height:0;max-height:19rem}.bk-times-head{margin:0 0 .5rem;font-size:.85rem;font-weight:600}.bk-times-list{display:flex;flex-direction:column;gap:.35rem;overflow-y:auto;padding-right:.3rem;min-height:0}.bk-hint{margin-top:2.5rem;text-align:center;font-size:.85rem}.bk-slot{font:inherit;font-size:.88rem;padding:.55rem .8rem;text-align:center;border-radius:8px;cursor:pointer;background:Canvas;color:CanvasText;border:1px solid color-mix(in srgb,CanvasText 20%,transparent)}.bk-slot:hover{border-color:CanvasText}.bk-slot-on{background:CanvasText;color:Canvas;border-color:CanvasText;font-weight:600}.bk-tz{margin:.9rem 0 0;font-size:.75rem}.bk-tz-select{font:inherit;color:inherit;background:transparent;border:0;border-bottom:1px dashed currentColor;padding:0 .1rem;max-width:15rem;cursor:pointer}.bk-tz-select:hover,.bk-tz-select:focus-visible{border-bottom-style:solid}.bk-tz-abbr{opacity:.75}.bk-form h2{font-size:1rem;margin:0 0 .9rem}.bk-form label{display:block;margin-bottom:.8rem;font-size:.85rem;opacity:.85}.bk-form input{display:block;width:100%;box-sizing:border-box;margin-top:.3rem;padding:.6rem .7rem;font:inherit;color:CanvasText;background:Canvas;border:1px solid color-mix(in srgb,CanvasText 25%,transparent);border-radius:8px}.bk-btn{font:inherit;font-weight:600;padding:.65rem 1.2rem;border-radius:8px;border:none;cursor:pointer;background:CanvasText;color:Canvas;text-decoration:none;display:inline-block}.bk-btn:disabled{opacity:.5;cursor:default}.bk-btn-ghost{background:Canvas;color:CanvasText;border:1px solid color-mix(in srgb,CanvasText 25%,transparent)}.bk-done{text-align:center;padding:2rem 1.2rem}.bk-tick{width:2.6rem;height:2.6rem;margin:0 auto .8rem;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.3rem;background:#2a7;color:#fff}.bk-done h1{font-size:1.35rem;margin:0 0 .3rem}.bk-when{margin:0;font-size:1.05rem;font-weight:600}.bk-save{margin-top:1.5rem;padding-top:1.2rem;text-align:left;border-top:1px solid color-mix(in srgb,CanvasText 12%,transparent)}.bk-save h2{font-size:.95rem;margin:0 0 .3rem}.bk-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin:.7rem 0}.bk-small{font-size:.8rem;margin:.6rem 0 0}@media(max-width:40rem){.bk-split{grid-template-columns:1fr;gap:1.1rem}.bk-times{max-height:17rem}.bk-hint{margin-top:0;text-align:left}}
