:root{--ink-soft:#4e5049;--field-border:#8f8d82;--track:#eceae1;--wine-soft:#f3e4e8;--badge:#ecd2b8;--rack-surface:#efece3;--rack-inner:#e6d6c6;--slot-border:#c9b5a3;--bar-other:#b4ab9c}
.vv-layout{--sidebar:232px;display:flex;align-items:stretch;min-height:100vh}
.vv-layout>.main{flex:1;min-width:0;width:calc(100% - 232px);margin-left:0}
.vv-icon{display:inline-block;vertical-align:middle;flex:none}
.vv-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.overview-layout{--muted:#63665d}
.vv-sidebar,.vv-bottom-nav,.vv-more-menu{--muted:#63665d}
.overview-layout>.main{padding:24px 40px 72px}
.overview-layout .topbar,.overview-layout .content{width:100%;max-width:1040px;margin-left:auto;margin-right:auto}
.overview-layout .topbar{height:auto;min-height:65px;gap:12px;padding-bottom:20px;align-items:center}
.overview-layout .content{padding-top:36px}
.ov-search{display:flex;align-items:center;gap:10px;flex:1;min-width:0;min-height:44px;padding:0 14px;border:0;border-radius:10px;box-shadow:inset 0 0 0 1px var(--field-border);background:var(--surface);color:var(--muted)}
.ov-search input{flex:1;min-width:0;width:100%;height:44px;padding:0;border:0;background:transparent;font-size:15px;color:var(--ink)}
.overview .ov-text-link{min-width:44px}
.ov-search input:focus-visible{outline-offset:0}
.ov-toolbar .top-actions{flex:none}
.ov-toolbar .btn{min-height:44px;border-radius:10px;padding:0 18px;font-size:14px;font-weight:600;gap:8px}
@media(min-width:768px) and (max-width:850px){.vv-layout>.main{padding-left:24px;padding-right:24px}}
@media(max-width:767px){
  .vv-layout{display:block}
  .vv-layout>.main{width:100%;margin-left:0;padding-bottom:calc(100px + env(safe-area-inset-bottom,0px))}
  .vv-layout .topbar .top-actions{display:none}
  .overview-layout>.main{padding:16px 20px calc(100px + env(safe-area-inset-bottom,0px))}
  .overview-layout .topbar{height:auto;min-height:44px;padding:0;border-bottom:0}
  .overview-layout .content{padding-top:20px}
  .ov-search input{font-size:16px}
  #toast{bottom:calc(86px + env(safe-area-inset-bottom,0px))}
}
