.app-body { background:var(--stay-page); }
.app-boundary { background:#FFF9CC; border-bottom:1px solid #EADFA0; color:var(--stay-dark); font-size:13px; text-align:center; padding:10px 20px; }
.app-main { padding:48px 0 80px; }
.app-grid { display:grid; grid-template-columns:240px minmax(0,1fr); gap:28px; align-items:start; }
.app-side { padding:18px; position:sticky; top:20px; }
.app-side a { display:block; min-height:44px; padding:10px 12px; border-radius:var(--stay-r-sm); color:var(--stay-dark); text-decoration:none; }
.app-side a[aria-current="page"] { background:var(--stay-turquoise-soft); color:var(--stay-turquoise-dark); font-weight:600; }
.app-content { min-width:0; }
.app-head { display:flex; justify-content:space-between; gap:24px; align-items:flex-start; margin-bottom:28px; }
.app-head .private { color:var(--stay-turquoise-dark); font-size:12px; font-weight:600; letter-spacing:.06em; text-transform:uppercase; }
.app-card { padding:24px; }
.app-card + .app-card { margin-top:18px; }
.app-empty { padding:30px; text-align:left; }
.app-empty h3 { margin-bottom:10px; }
.app-metrics { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; margin:24px 0; }
.metric { padding:20px; }
.metric strong { display:block; color:var(--stay-dark); font-size:30px; line-height:1; }
.metric span { display:block; margin-top:8px; font-size:13px; }
.form-field { display:grid; gap:7px; margin-top:18px; }
.form-field label { color:var(--stay-dark); font-size:14px; font-weight:550; }
.form-field input,.form-field select,.form-field textarea { min-height:48px; width:100%; border:1px solid var(--stay-line); border-radius:var(--stay-r-sm); background:var(--stay-white); padding:10px 12px; color:var(--stay-dark); }
.form-field textarea { min-height:120px; resize:vertical; }
.form-field .helper { font-size:13px; line-height:1.5; }
.form-field input:focus,.form-field select:focus,.form-field textarea:focus { border-color:var(--stay-turquoise); outline:3px solid rgba(7,194,168,.18); outline-offset:1px; }
.skeleton-lock { padding:20px; border-radius:var(--stay-r-md); background:var(--stay-turquoise-soft); border:1px solid rgba(7,194,168,.2); }
.skeleton-lock strong { color:var(--stay-dark); }
@media(max-width:760px){
  .app-main { padding:32px 0 64px; }
  .app-grid { grid-template-columns:1fr; }
  .app-side { position:static; display:flex; overflow-x:auto; gap:4px; }
  .app-side a { flex:0 0 auto; }
  .app-head { display:block; }
  .app-head .button { margin-top:16px; width:100%; }
  .app-metrics { grid-template-columns:1fr; }
}
