*{box-sizing:border-box;margin:0;padding:0}
img{display:block;max-width:100%;height:auto}
ul{list-style:none}
a{color:inherit;text-decoration:none}
h1,h2{font-weight:700}
body{font-family:"Helvetica Neue",Arial,Helvetica,sans-serif;background:var(--bg);color:var(--text)}

.btn{padding:10px 12px;border:0;border-radius:10px;cursor:pointer;font-weight:700;font-size:13px}
.btn:hover{filter:brightness(.96)}
.btn--primary{background:var(--primary);color:#fff}
.btn--secondary{background:var(--secondary);color:#fff}
.is-disabled,.btn:disabled{opacity:.6;pointer-events:none}

.auth-btn,.user-btn,.padd,.btn-checkout{padding:10px 12px;border:0;border-radius:10px;cursor:pointer;font-weight:700;font-size:13px;background:var(--primary);color:#fff}
.btn-checkout{width:100%}

.owner-header{
  position:relative;display:flex;align-items:center;justify-content:center;
  padding:14px 16px;border-bottom:1px solid var(--border);background:var(--surface);
}
.owner-header .title{font-size:24px;line-height:1;padding-top:1rem}
.auth-actions{position:absolute;right:12px;top:10px;display:flex;gap:8px}
.user-menu{position:relative}
.user-dropdown{
  position:absolute;right:0;top:110%;min-width:220px;display:none;overflow:hidden;z-index:1000;
  background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:0 8px 24px rgba(0,0,0,.15);
}
.user-dropdown.open{display:block}
.user-dropdown a{display:block;padding:10px 14px;font-size:14px}
.user-dropdown a:hover{background:color-mix(in srgb,var(--primary) 12%,transparent)}
.user-dropdown .logout{color:#e53935}

.owner-hero{width:100%;height:148px;object-fit:cover}
@media (min-width:768px){.owner-hero{height:230px}}

.owner-stick{position:sticky;top:0;z-index:900;background:var(--surface);padding-top:.5rem}
.owner-search-box{position:relative;width:92%;max-width:600px;margin:10px auto}
.owner-search{
  width:100%;padding:10px 44px 10px 46px;border:2px solid var(--border);border-radius:10px;
  background:var(--surface);color:var(--text);font-size:15px;
}
.owner-search::placeholder{color:color-mix(in srgb,var(--text) 55%,transparent)}
.owner-search-icon{position:absolute;left:18px;top:50%;transform:translateY(-50%);font-size:18px;color:var(--secondary)}

.owner-tabs{
  display:flex;gap:6px;overflow-x:auto;white-space:nowrap;padding:0 8px;border-bottom:1px solid var(--border);background:var(--surface)
}
.owner-tabs li{
  padding:10px 14px;border-radius:8px 8px 0 0;cursor:pointer;font-size:14px;font-weight:600;color:var(--helper)
}
.owner-tabs li.active{background:var(--primary);color:#fff}

.owner-section{padding:20px 16px}
.owner-section h2{
  font-size:20px;margin-bottom:14px;color:var(--helper);
  border-bottom:3px solid var(--helper);display:inline-block
}
.owner-item{
  display:flex;align-items:center;justify-content:space-between;gap:14px;
  padding-bottom:12px;margin-bottom:18px;border-bottom:1px solid color-mix(in srgb,var(--primary) 45%,transparent);
  cursor:pointer
}
.owner-info{flex:1 1 auto;min-width:0}
.owner-name{font-size:16px;font-weight:700;margin-bottom:4px;color:var(--helper)}
.owner-price{font-size:14px;font-weight:700;color:var(--primary);margin-bottom:6px}
.owner-desc{font-size:12px;line-height:1.35;color:color-mix(in srgb,var(--text) 70%,transparent);max-height:36px;overflow:hidden}
.owner-more{padding:14px 0;text-align:center;text-transform:uppercase;font-size:12px;font-weight:700;color:var(--helper)}

.owner-thumb-wrap{position:relative;width:78px;height:78px;flex-shrink:0}
.owner-thumb{width:100%;height:100%;object-fit:cover;border-radius:10px;border:1px solid var(--border)}
.owner-quickadd{
  position:absolute;right:-8px;bottom:-8px;width:36px;height:36px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;cursor:pointer;
  background:var(--primary);color:#fff;border:0;font-weight:800;font-size:20px;
  box-shadow:0 4px 12px rgba(0,0,0,.25)
}

.cart-fab{
  position:fixed;right:18px;bottom:18px;width:56px;height:56px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;font-size:22px;color:#fff;background:var(--secondary);
  z-index:920;cursor:pointer;box-shadow:0 6px 16px rgba(0,0,0,.35)
}
.cart-count{
  position:absolute;right:-6px;top:-6px;min-width:20px;padding:2px 6px;border-radius:16px;background:#e53935;color:#fff;font-size:12px;font-weight:700;text-align:center
}
#ownerTopBtn{
  position:fixed;right:18px;bottom:90px;width:46px;height:46px;border-radius:50%;
  display:none;align-items:center;justify-content:center;font-size:22px;color:#fff;background:var(--secondary);
  z-index:930;cursor:pointer;box-shadow:0 2px 6px rgba(0,0,0,.25)
}
.owner-toast{
  position:fixed;left:50%;bottom:20px;transform:translateX(-50%);display:none;
  padding:10px 14px;border-radius:10px;border:1px solid var(--border);background:var(--primary);color:var(--text);
  font-size:14px;box-shadow:0 2px 8px rgba(0,0,0,.15);z-index:950
}

.yak-modal{position:fixed;inset:0;display:none;align-items:center;justify-content:center;background:rgba(0,0,0,.55);z-index:980}
.yak-modal-content{width:92%;max-width:640px;border-radius:16px;padding:18px;background:var(--surface);color:var(--text);position:relative;box-shadow:0 10px 32px rgba(0,0,0,.25)}
.yak-close{position:absolute;right:12px;top:10px;font-size:22px;cursor:pointer}
.yak-tabs,.yak-login-switch{display:flex;gap:10px;margin:0 0 14px;padding:0;border-bottom:1px solid var(--border)}
.yak-tabs li,.yak-login-switch li{padding:10px 16px;border-radius:10px;font-weight:800;cursor:pointer;background:color-mix(in srgb,var(--primary) 12%,transparent);color:var(--helper)}
.yak-tabs li.active,.yak-login-switch li.active{background:var(--primary);color:#fff}
.field-input{margin-bottom:10px}
.field-input input{width:100%;padding:12px;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text)}
.field-inline{display:flex;gap:10px}
.field-check{margin:6px 0 10px}
.field-check label{font-size:13px;color:color-mix(in srgb,var(--text) 85%,transparent)}

.pmodal{position:fixed;inset:0;display:none;align-items:center;justify-content:center;background:rgba(0,0,0,.55);z-index:970;padding:20px}
.pcard{
  width:min(760px,92vw);max-height:calc(100vh - 40px);
  display:flex;flex-direction:column;border-radius:18px;overflow:hidden;background:var(--surface);color:var(--text);box-shadow:0 8px 24px rgba(0,0,0,.25)
}
.phead{position:relative}
.phead img{width:100%;max-height:50vh;object-fit:cover}
.pclose{position:absolute;right:12px;top:12px;width:36px;height:36px;border:0;border-radius:50%;background:rgba(0,0,0,.55);color:#fff;font-size:18px;cursor:pointer}
.pbody{padding:18px;overflow:auto}
.pname{font-size:24px;font-weight:800;margin:4px 0 6px}
.pdesc{font-size:14px;color:color-mix(in srgb,var(--text) 70%,transparent);margin-bottom:10px}
.pprice{font-size:24px;font-weight:800;color:var(--primary);margin:8px 0}
.pnote{width:100%;min-height:70px;margin:8px 0 14px;padding:10px;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text)}
.pactions{display:flex;align-items:center;justify-content:space-between;gap:10px}
.qty{display:flex;align-items:center;gap:10px}
.qty button{width:38px;height:38px;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text);font-size:18px;cursor:pointer}
.qty input{width:56px;height:38px;text-align:center;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text)}

.cart-overlay{position:fixed;inset:0;display:none;background:rgba(0,0,0,.35);z-index:960}
.cart-overlay.open{display:block}
.cart-drawer{
  position:fixed;right:-410px;top:0;height:100%;width:410px;max-width:92%;
  background:var(--surface);color:var(--text);z-index:965;box-shadow:-10px 0 24px rgba(0,0,0,.25);transition:right .28s ease;
  display:flex;flex-direction:column
}
.cart-drawer.open{right:0}
.cart-head{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--border);font-weight:800}
.cart-body{flex:1 1 auto;padding:10px 12px;overflow:auto}
.cart-item{display:flex;gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid var(--border)}
.cart-thumb{width:64px;height:64px;object-fit:cover;border-radius:10px;border:1px solid var(--border)}
.cart-infos{flex:1}
.cart-name{font-weight:700;font-size:15px;margin-bottom:4px}
.cart-meta{display:flex;align-items:center;justify-content:space-between}
.cart-meta .qty button{width:30px;height:30px}
.cart-remove{border:0;background:transparent;font-size:18px;cursor:pointer;color:color-mix(in srgb,var(--text) 70%,transparent)}
.cart-foot{padding:12px 16px;border-top:1px solid var(--border)}
.cart-total{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;font-weight:800}

@media (max-width:480px){
  .owner-header .title{font-size:18px}
}
@media (min-width:768px){
  .site-main{margin:0 150px}
}
.cart-note-btn {border: none;}