
body.pp-utility-page{
  font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
}
body.pp-utility-page .pp-container{max-width:1100px;padding:16px;}
body.pp-utility-page .pp-card{
  background:var(--card);
  border:1px solid var(--border);
  border-radius:18px;
  box-shadow:0 12px 30px rgba(31,41,55,.10);
  overflow:visible;
}
body.pp-utility-page .pp-pad{padding:16px;}
body.pp-utility-page .pp-h1{margin:10px 0 0;font-size:28px;line-height:1.15;}
body.pp-utility-page .pp-h2{font-size:18px;font-weight:1000;}
body.pp-utility-page .pp-mini{font-size:12px;color:var(--muted);font-weight:900;letter-spacing:normal;text-transform:none;font-family:inherit;}
body.pp-utility-page .pp-muted{font-weight:700;line-height:1.55;}
body.pp-utility-page .pp-btn{
  padding:10px 14px;
  border-radius:999px;
  background:linear-gradient(135deg,var(--brand),var(--brand2));
  font-weight:1000;
  box-shadow:none;
}
body.pp-utility-page .pp-btn--ghost{
  background:color-mix(in srgb, var(--card) 70%, transparent);
  color:var(--text);
  border:1px solid var(--border);
}
body.pp-utility-page .pp-pill{
  padding:6px 10px;
  background:color-mix(in srgb, var(--card) 65%, transparent);
  font-weight:900;
  color:var(--text);
}
body.pp-utility-page .pp-input{
  border-radius:14px;
  padding:10px 12px;
  background:color-mix(in srgb, var(--card) 78%, transparent);
  font-weight:900;
}
body.pp-utility-page .pp-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;}
@media (max-width: 900px){ body.pp-utility-page .pp-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (max-width: 560px){ body.pp-utility-page .pp-grid{grid-template-columns:1fr;}}
/* Keep app pages tighter and stop header/footer style from overpowering tools */
body.pp-utility-page .pp-foot-inner{padding:14px 16px;}


/* Final stability fixes for compact utility pages (calendar/admin) */
body.pp-utility-page{
  min-height:100dvh;
  display:flex;
  flex-direction:column;
  background:
    radial-gradient(700px 320px at 12% -8%, color-mix(in srgb, var(--brand) 8%, transparent), transparent 60%),
    radial-gradient(560px 260px at 96% 0%, color-mix(in srgb, var(--brand2) 7%, transparent), transparent 58%),
    linear-gradient(180deg, var(--bg-0), var(--bg-1));
}
body.pp-utility-page > main.pp-container{
  flex:1 0 auto;
  width:100%;
}
body.pp-utility-page .pp-nav{
  position:sticky;
  top:0;
  z-index:90;
}
body.pp-utility-page .pp-foot{
  margin-top:16px;
  background:rgba(255,255,255,.72);
  backdrop-filter:blur(8px);
  position:relative;
  z-index:20;
}
body.pp-utility-page .pp-foot-inner{
  padding:14px 16px;
}
body.pp-utility-page .pp-card,
body.pp-utility-page .pp-miniMonth,
body.pp-utility-page .pp-weekDay{
  overflow:visible;
}
body.pp-utility-page .pp-drawer{
  display:none !important;
}
@media (max-width: 980px){
  body.pp-utility-page .pp-drawer.open{display:block !important;}
}
/* Keep utility-page action overlays from covering toolbars */
body.pp-utility-page .pp-pop,
body.pp-utility-page .pp-pop-panel{z-index:1200;}
