/* Mobile keeps its sheet placement; desktop utility dialogs share a bounded centre. */
#dashguide{position:fixed;inset:0;z-index:60;background:var(--overlay);display:none}
#dashguide.on{display:flex;align-items:flex-end;justify-content:center}
#dashguide .box{box-sizing:border-box;width:100%;max-width:500px;max-height:88vh;max-height:88dvh;overflow:auto;overscroll-behavior:contain;padding:20px 20px calc(20px + env(safe-area-inset-bottom));border:1px solid var(--ring);border-radius:var(--r20) var(--r20) 0 0;background:var(--panel)}
#dashguide .hd,#dashguide .actions{display:flex;align-items:center;justify-content:space-between;gap:12px}
#dashguide h2{font-size:18px;margin:0}
#dashguide p,#dashguide small{color:var(--ink2);line-height:1.6;overflow-wrap:anywhere}
#dashguide ul{padding-left:20px;margin:20px 0}
#dashguide li{margin-bottom:12px} #dashguide small{display:block}
#dashguide button{min-height:44px;white-space:normal}
@media(min-width:820px){#dashguide.on{align-items:center;padding:24px}#dashguide .box{border-radius:var(--r20);padding:24px}}
:is(#sheet,#wsheet,#pfsheet,#finsheet,#pvsheet,#csheet,#msheet,#lsheet,#rmenu,#cfg,#plansheet){z-index:60}
#plansheet{position:fixed;inset:0;z-index:60;background:var(--overlay);display:none}
#plansheet.on{display:block}
#plansheet .box{position:absolute;left:0;right:0;bottom:0;box-sizing:border-box;background:var(--panel);color:var(--ink);border:1px solid var(--ring);border-radius:var(--r20) var(--r20) 0 0;padding:20px 16px calc(20px + env(safe-area-inset-bottom));max-height:88vh;max-height:88dvh;overflow:auto;overscroll-behavior:contain}
#plansheet .hd{display:flex;align-items:center;gap:16px;margin-bottom:8px}
#plansheet .hd h2{margin:0;font-size:21px;flex:1}
#plansheet .hd .x{min-width:44px;min-height:44px}
.plan-summary,.plan-note{color:var(--ink2);font-size:12px;line-height:1.6;margin:0 0 16px;overflow-wrap:anywhere}
.plan-cards{display:grid;gap:10px}
.plan-card{min-width:0;padding:16px;border:1px solid var(--ring);border-radius:var(--r14);background:var(--panel2);text-align:left}
.plan-card.current{border-color:var(--accent)}
.plan-card header{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.plan-card h3{margin:0;font-size:17px}
.plan-card .plan-current{font-size:10px;color:var(--accent)}
.plan-price{font-size:24px;font-weight:700;margin:12px 0 8px}
.plan-price small{font-size:11px;font-weight:400;color:var(--muted)}
.plan-card p{font-size:12px;line-height:1.6;margin:6px 0;overflow-wrap:anywhere}
.plan-card .plan-detail{color:var(--muted)}
.plan-actions{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}
.plan-actions .tbtn{min-height:44px;white-space:normal}
.plan-account-link{width:100%;min-height:44px;white-space:normal;overflow-wrap:anywhere}
#wsheet .wrow{display:grid;grid-template-columns:108px minmax(0,1fr);gap:14px;padding:16px 0;align-items:start}
#wsheet .wrow .nm{font-size:14px;line-height:1.4;overflow-wrap:anywhere}
#wsheet .wrow .nm small{font-size:12px;line-height:1.5;margin:5px 0 9px;color:var(--ink2)}
.wrow-actions{display:flex;flex-wrap:wrap;gap:6px}
#wsheet .wrow .tbtn{min-height:38px;min-width:38px}
.widget-preview{box-sizing:border-box;position:relative;width:100%;border:1px solid var(--ring);border-radius:var(--r12);background:var(--panel2);color:var(--accent);overflow:hidden;padding:8px 4px 18px}
.widget-preview svg{display:block;width:100%;height:70px}
.widget-preview>span{position:absolute;left:8px;bottom:5px;font-size:9px;color:var(--muted)}
@media(min-width:820px){
  :is(#sheet,#wsheet,#pfsheet,#finsheet,#pvsheet,#csheet,#msheet,#lsheet,#rmenu,#cfg,#plansheet).on{display:flex;align-items:center;justify-content:center;padding:24px;box-sizing:border-box}
  :is(#sheet,#wsheet,#pfsheet,#finsheet,#pvsheet,#csheet,#msheet,#lsheet,#rmenu,#cfg,#plansheet)>.box{position:relative;inset:auto;box-sizing:border-box;width:100%;max-width:560px;margin:0;padding:24px;max-height:calc(100vh - 48px);max-height:calc(100dvh - 48px);overflow:auto;overscroll-behavior:contain;border:1px solid var(--ring);border-radius:var(--r20);box-shadow:var(--elevation, 0 24px 80px rgba(0,0,0,.4))}
  :is(#wsheet,#plansheet)>.box{max-width:680px}
  #wsheet .wrow{grid-template-columns:144px minmax(0,1fr)}
  .widget-preview svg{height:76px}
  .plan-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
}

.plan-features{padding-left:18px;font-size:13px;line-height:1.7}.plan-card [data-plan-action="buy"]{width:100%;min-height:44px;margin-top:12px}
