/* 电脑版布局：左侧导航 + 宽内容区；各功能的双栏/表格布局在本文件末尾（.g-d 健身房、.m-d 会议室）。颜色/组件在 /style.css。 */
body.ui-desktop { overflow-y:scroll }
.d-app { display:grid; grid-template-columns:200px 1fr; min-height:100vh }
.d-side { position:sticky; top:0; height:100vh; background:var(--card); border-right:1px solid var(--line); display:flex; flex-direction:column; padding:18px 12px }
.d-brand { font-size:18px; font-weight:700; padding:4px 10px 16px }
#nav { display:flex; flex-direction:column; gap:4px }
.nav-item { display:flex; align-items:center; gap:10px; border:0; background:transparent; color:var(--text); font-size:15px; padding:10px 12px; border-radius:10px; cursor:pointer; text-align:left }
.nav-item:hover { background:var(--bg) } .nav-item.on { background:var(--accent); color:#fff }
.d-foot { margin-top:auto; display:flex; flex-direction:column; gap:8px; padding:0 6px }
#themeBtn { border:1px solid var(--line); background:var(--bg); color:var(--text); border-radius:16px; padding:5px 12px; cursor:pointer; font-size:13px }
.d-main { padding:22px 28px 40px; min-width:0 }
.d-main .card.center { max-width:420px; margin:60px auto }

/* 健身房：左侧时段表格 + 右侧常驻「我的预约」 */
.g-d { display:grid; grid-template-columns:1fr 340px; gap:20px; align-items:start }
.g-d .days .day { min-width:92px }
.g-table { background:var(--card); border-radius:12px; margin-top:10px; overflow:hidden }
.g-row { display:grid; grid-template-columns:130px 1fr 150px 240px; gap:12px; align-items:center; padding:14px 16px; border-top:1px solid var(--line) }
.g-row:first-child { border-top:0 }
.g-row .bar { height:8px; background:var(--line); border-radius:4px; overflow:hidden } .g-row .bar i { display:block; height:100%; background:var(--accent) }
.g-row .bar-text { font-size:12px; color:var(--muted); margin-top:4px }
.g-row .acts { display:flex; gap:8px; justify-content:flex-end; align-items:center; flex-wrap:nowrap; white-space:nowrap }
.g-side { position:sticky; top:20px; background:var(--card); border-radius:12px; padding:14px 16px; max-height:calc(100vh - 40px); overflow-y:auto }
.g-side h3 { margin:0 0 6px; font-size:15px }
.g-side .bk { margin-top:8px; padding:10px 12px }

/* 会议室：左侧筛选面板 + 右侧带时间轴的房间列表 */
.m-d { display:grid; grid-template-columns:300px 1fr; gap:20px; align-items:start }
.m-d-filter { position:sticky; top:20px; margin-top:0 !important }
.m-d-filter .chips { max-height:none }
.m-d-main { min-width:0 }
.m-d .tl { height:34px } .m-d .cell { min-width:0 }
.m-d .sheet { position:sticky; bottom:12px; border-radius:14px; box-shadow:0 4px 20px rgba(0,0,0,.2); margin-top:12px; max-width:none; display:grid; grid-template-columns:1fr 220px 160px; gap:10px; align-items:center }
.m-d .sheet input { margin:0 } .m-d .sheet .row2 { grid-template-columns:1fr 1fr }
@media (max-width:1100px) { .g-d, .m-d { grid-template-columns:1fr } .g-side, .m-d-filter { position:static; max-height:none } }
